#neural-network #lstm
Вопрос:
Я не уверен, каково количество нейронов в каждом слое для приведенной ниже модели LSTM. Когда я печатаю сводку модели, я вижу, что выходная форма входного слоя равна (Нет, 10, 1). Означает ли это, что во входном слое есть один нейрон? Форма x_train равна (100,10,1). Это означает, что существует 100 групп, и каждая группа содержит 10 строк и один столбец цен на акции. Я понимаю, что входной слой имеет форму (Нет, 10,1). Я бы подумал, что это означает, что во входном слое 10 нейронов, а не 1 нейрон, поскольку для прогнозирования цены акций на 11-й день используются десять цен на акции. Для функции model.summary() это последнее число «Выходной формы», которое указывает количество нейронов в этом конкретном слое? Кроме того, как у меня есть 40800 параметров(весов) в первом слое LSTM?
input_layer = Input(shape = (x_train.shape[1], 1))
lstm1=LSTM(100,activation='relu',return_sequences=True)
(input_layer)
drop1 = Dropout(0.1)(lstm1)
lstm2 = LSTM(120, activation='relu', return_sequences=True)(drop1)
lstm3 = LSTM(80, activation='relu', return_sequences=True)(lstm2)
lstm4 = LSTM(50, activation='relu')(lstm3)
output_layer = Dense(1)(lstm4)
model = Model(input_layer, output_layer)
model.compile(optimizer='adam', loss='mse')
print(model.summary())
Модель: «model_2»
Слой (тип) Параметр Выходной Формы #
input_3 (Слой ввода) [(Нет, 10, 1)] 0
lstm_8 (LSTM) (Нет, 10, 100) 40800
отсев_2 (Отсев) (Нет, 10, 100) 0
lstm_9 (LSTM) (Нет, 10, 120) 106080
lstm_10 (LSTM) (Нет, 10, 80) 64320
lstm_11 (LSTM) (Нет, 50) 26200
dense_2 (Плотный) (Нет, 1) 51
Всего параметров: 237 451 Обучаемых параметров: 237 451 Необучаемых параметров: 0