Keras 설명서에 "시퀀스 분류 용 스택 LSTM"(아래 코드 참조)이라는 설명 을 사용하려고하는데 input_shape
내 데이터의 맥락 에서 매개 변수를 파악할 수 없습니다 .
최대 길이가 31 인 패딩 된 시퀀스에 정수로 인코딩 된 25 개의 가능한 문자 시퀀스의 행렬을 입력했습니다. 결과적으로 x_train
모양의 (1085420, 31)
의미가 (n_observations, sequence_length)
있습니다.
from keras.models import Sequential
from keras.layers import LSTM, Dense
import numpy as np
data_dim = 16
timesteps = 8
num_classes = 10
# expected input data shape: (batch_size, timesteps, data_dim)
model = Sequential()
model.add(LSTM(32, return_sequences=True,
input_shape=(timesteps, data_dim))) # returns a sequence of vectors of dimension 32
model.add(LSTM(32, return_sequences=True)) # returns a sequence of vectors of dimension 32
model.add(LSTM(32)) # return a single vector of dimension 32
model.add(Dense(10, activation='softmax'))
model.compile(loss='categorical_crossentropy',
optimizer='rmsprop',
metrics=['accuracy'])
# Generate dummy training data
x_train = np.random.random((1000, timesteps, data_dim))
y_train = np.random.random((1000, num_classes))
# Generate dummy validation data
x_val = np.random.random((100, timesteps, data_dim))
y_val = np.random.random((100, num_classes))
model.fit(x_train, y_train,
batch_size=64, epochs=5,
validation_data=(x_val, y_val))
이 코드 x_train
에서 모양 (1000, 8, 16)
은 16 개의 요소로 구성된 8 개의 배열로 구성된 1000 개의 배열로 구성됩니다. 거기에서 무엇을, 어떻게 데이터가이 형태에 도달 할 수 있는지 완전히 잃어 버리게됩니다.
Keras 문서와 다양한 자습서 및 Q & A를 보면 분명한 내용이 누락 된 것 같습니다. 누군가 나에게 찾아야 할 힌트를 줄 수 있습니까?
당신의 도움을 주셔서 감사합니다 !