ฉันพยายามใช้ตัวอย่างที่อธิบายไว้ในเอกสารประกอบของ Kerasชื่อ "Stacked LSTM สำหรับการจำแนกลำดับ" (ดูรหัสด้านล่าง) และไม่สามารถหาinput_shape
พารามิเตอร์ในบริบทของข้อมูลของฉัน
ฉันมีเป็น input เมทริกซ์ของลำดับของ 25 ตัวอักษรที่เป็นไปได้เข้ารหัสในจำนวนเต็มลำดับเบาะของความยาวสูงสุด 31 เป็นผลให้ฉัน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)
เช่นเดียวกับอาร์เรย์ 1,000 อาร์เรย์ 8 อาร์เรย์ 16 องค์ประกอบ ที่นั่นฉันได้หายไปอย่างสมบูรณ์ในสิ่งที่เป็นอย่างไรและข้อมูลของฉันสามารถเข้าถึงรูปร่างนี้ได้อย่างไร
ดู Keras doc และแบบฝึกหัดและถาม - ตอบที่หลากหลายดูเหมือนว่าฉันขาดอะไรบางอย่างที่ชัดเจน ใครสามารถให้คำแนะนำในสิ่งที่ฉันต้องการได้
ขอบคุณสำหรับความช่วยเหลือของคุณ !