lstm с переменной batch_size

Мы знаем, что во время обучения нам нужно предоставить feed_dict данные batch_size. Однако в последнюю эпоху количество данных меньше размера пакета. Как я могу это сделать? я пытаюсь использовать переменную batch_size, но я сталкиваюсь с некоторыми проблемами, когда я использую rnn. код ниже:

input_data = tf.placeholder(tf.int32, [None, num_steps])

with tf.variable_scope('forward'):

    cellL = tf.nn.rnn_cell.BasicLSTMCell(hidden_size, forget_bias=1.0)
    state_init_L = tf.get_variable("init_L",initializer=cellL.zero_state(tf.shape(input_data)[0],tf.float32))

ошибка

Значение Error: initial_value должно иметь указанную форму: Tensor("model/init_variable_L/zeros:0", shape=(?, 100), dtype=float32, device=/device:GPU:0)

спасибо ~

1 ответ

Измените свой код, чтобы всегда производить партии фиксированного размера.

Вы можете оставить несколько последних примеров обучения. Или вы можете повторить последний пример несколько раз, чтобы заполнить пакет. Когда у вас достаточно данных, несколько пропущенных или повторяющихся примеров не имеют значения.

Другие вопросы по тегам