Я следую примеру сценария на домашней странице Keras для генерации текста и хочу подготовить текст примера для более сложной модели кодировщика-декодера:
vocab_size = ...
src_txt_length = ...
sum_txt_length = ...
# source text input model
inputs1 = Input(shape=(src_txt_length,))
am1 = Embedding(vocab_size, 128)(inputs1)
am2 = LSTM(128)(am1)
# summary input model
inputs2 = Input(shape=(sum_txt_length,))
sm1 = = Embedding(vocab_size, 128)(inputs2)
sm2 = LSTM(128)(sm1)
# decoder output model
decoder1 = concatenate([am2, sm2])
outputs = Dense(vocab_size, activation='softmax')(decoder1)
# tie it together [article, summary] [word]
model = Model(inputs=[inputs1, inputs2], outputs=outputs)
model.compile(loss='categorical_crossentropy', optimizer='adam')
В своем примере автор не показывает, как правильно подготовить параметры x
и y
для модели для обучения ,
Если я буду следовать шагу векторизации в примере документации Keras,
x = np.zeros((len(sentences), maxlen, len(chars)), dtype=np.bool)
y = np.zeros((len(sentences), len(chars)), dtype=np.bool)
Я получу следующую ошибку:
ValueError: Error when checking model input: the list of Numpy arrays that you are passing to your model is not the size the model expected. Expected to see 2 array(s), but instead got the following list of 1 arrays: [array([[[False, False, False, ..., False, False, False],
[ True, False, False, ..., False, False, False],
[False, False, False, ..., False, False, False],
...,
[False,...
Я новичок в этом и могу использовать некоторые рекомендации о том, как правильно подготовить x
и y
для подачи в модель.