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 ответ
Измените свой код, чтобы всегда производить партии фиксированного размера.
Вы можете оставить несколько последних примеров обучения. Или вы можете повторить последний пример несколько раз, чтобы заполнить пакет. Когда у вас достаточно данных, несколько пропущенных или повторяющихся примеров не имеют значения.