मैं "स्टैक्ड LSTM फॉर सीक्वेंस वर्गीकरण" नाम के केरस प्रलेखन में वर्णित उदाहरण का उपयोग करने की कोशिश कर रहा हूं (नीचे कोड देखें) और input_shape
अपने डेटा के संदर्भ में पैरामीटर का पता नहीं लगा सकता ।
मेरे पास इनपुट के रूप में 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)
, 16 तत्वों के 8 सरणियों के 1000 सरणियों की एक सरणी के रूप में है। वहां मैं पूरी तरह से खो गया कि क्या और कैसे मेरा डेटा इस आकार तक पहुंच सकता है।
केरस डॉक और विभिन्न ट्यूटोरियल और क्यू एंड ए को देखते हुए, ऐसा लगता है कि मुझे कुछ स्पष्ट याद आ रहा है। क्या कोई मुझे संकेत दे सकता है कि मुझे क्या देखना है?
आपकी सहायताके लिए धन्यवाद !