подпитка сверточной нейронной сети переменными входами в тензорном потоке

Я пытаюсь передать список двумерных массивов с разными размерами в сверточную нейронную сеть с помощью параметра feed_dict.

x = tf.placeholder(tf.float32, [batch_size, None, None, None]) y = tf.placeholder(tf.float32, [batch_size, 1]) optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(cost) optimizer.run(feed_dict={x: batch[0], y: batch[1], keep_prob: 0.5})

и я получаю следующую ошибку:

ValueError: setting an array element with a sequence.

Я понял, что пакет [0] должен содержать массивы одинакового размера. Я пытаюсь найти способ применить оптимизацию, используя партию массивов переменного размера, но все предлагаемые решения требуют изменить размеры массивов, что в моем случае невозможно, поскольку эти массивы не являются изображениями и содержат фрагменты ДНК с различными размерами (любые модификации на любой элемент массива приведет к потере важной информации)

У кого-нибудь есть идея?

Ответы на вопрос(1)

олбцам. Один ряд или столбец не может быть другого размера, чем любой другой.

Matrix #1    Matrix #2
  1 2 3       1 2 3
  None        4 5 6
  None        7 8 9

Никакие операции не будут работать в Матрице № 1, что по сути то, что у вас есть. Если вы хотите подавать в матрицах различного размера (разные размеры для разных матриц, но размер в строках и столбцах)этот может решить вашу проблему

Args:

форма: Форма тензора для подачи (необязательно). Если форма не указана, вы можете подать тензор любой формы.

Или ты, если ищешь редкий тензор (tf.sparse_placeholder() - неопределенные элементы обнуляются),этот вопрос может помочь

Ваш ответ на вопрос