В чем разница между методом batch_size из метода fit() и пакетом из входных данных LSTM ? Питон

#python #tensorflow #keras #lstm

Вопрос:

Я не могу понять разницу между размером fit() пакета метода и пакетом, получаемым из измерения входных данных LSTM : 3D-тензор с формой [пакет, временные интервалы, функция]. (см. Входные данные keras : https://keras.io/api/layers/recurrent_layers/lstm/).

К этому я также могу добавить epochs .

Если у меня есть набор данных из 1000 значений, формат которого уже переработан для LSTM, и у меня есть шаг по времени 50 (то есть 50 ячеек LSTM), как будут вести себя данные? Я не могу этого понять.

Ответ №1:

Размер входного слоя *слоя* будет (batch_size, ...) равен , потому model.fit() что он разделит ваш ввод на куски (batch_size, ...) , независимо от того, сколько у вас образцов. Это делается в первом измерении, поэтому измерение временного шага ничего не меняет.

Ваш вклад в форму…

 (1000, 50, 25) # let's say you have 25 features
 

… войдет в слой LSTM следующим образом:

 (16, 50, 25) # let's say you have batch_size of 16
(16, 50, 25)
(16, 50, 25)
(16, 50, 25)
(16, 50, 25)
...
(1000 % 16, 50, 25)