Keras LSTM не добавляется

screen rails s

выполнил трюк

после того, как CTRL + A + D и я ушли, а сервер работает нормально

0
задан Jaffer Wilson 17 January 2019 в 07:26
поделиться

1 ответ

Проблема заключается в том, что вы передаете последовательности двух измерений в сеть, в то время как LSTM нужны трехмерные последовательности. Измените свой ввод на кодировку one_hot и затем передайте его в LSTM или используйте слой внедрения. Вот как должен выглядеть ваш Netowrk:

import numpy as np
from tensorflow.python.keras.layers import Dense, LSTM
from tensorflow.python.keras.models import Sequential

model = Sequential()
model.add(LSTM(100, activation="relu"))
model.add(Dense(100, input_dim=100, activation='relu'))
model.add(Dense(200, input_dim=100, activation='relu'))
model.add(Dense(100, input_dim=100, activation='relu'))
model.add(Dense(3, activation='softmax'))
model.compile(loss='mse', optimizer='adam', metrics=['accuracy'])

x = np.zeros(shape=(10000, 32, 50))
y = np.zeros(shape=(10000, 3))

model.fit(x, y, batch_size=128)

Обратите внимание на размеры x и y.

Альтернативный подход:

model = Sequential()
model.add(Embedding(10000, 50))
model.add(LSTM(100, activation="relu"))
model.add(Dense(100, input_dim=100, activation='relu'))
model.add(Dense(200, input_dim=100, activation='relu'))
model.add(Dense(100, input_dim=100, activation='relu'))
model.add(Dense(3, activation='softmax'))
model.compile(loss='mse', optimizer='adam', metrics=['accuracy'])

x = np.zeros(shape=(10000, 32))
y = np.zeros(shape=(10000, 3))

model.fit(x, y, batch_size=128)
0
ответ дан Amir 17 January 2019 в 07:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: