Ошибка значения: ввод 0 слоя lstm_34 несовместим со слоем: ожидаемый ndim=3, найденный ndim=2. Получена полная форма: [Нет, 25]

#tensorflow #keras #lstm #stanford-nlp #embedding

#тензорный поток #keras #lstm ( лстм ) #stanford-nlp #встраивание #tensorflow #lstm

Вопрос:

Я новичок в lstm, кто-нибудь может, пожалуйста, объяснить, почему я получаю эту ошибку?

моя модель lstm —

структура определения():

 input_text = tf.keras.Input((), dtype = tf.string, name = 'input_text')
initial_input= Embedding(vocab_size, 25, weights= 
[embedding_matrix], input_length=50,trainable=False) (input_text)

lstm = LSTM(32, input_shape=(50,25))(initial_input)  
secondary_input = Input(shape=(50,6))    
merge = concatenate([lstm, secondary_input])(lstm)
first_dense = Dense(128, activation='relu')(merge)
second_dense=Dense(64, activation='relu')(first_dense)
output=Dense(1, activation='sigmoid')(second_dense)

model_glove1 = Model(inputs=[initial_input, secondary_input], outputs=output)
return model_glove1
  

model_glove1=NNStructure()
model_glove1.compile(потеря=’binary_crossentropy’,оптимизатор=’adam’,метрики=[‘точность’])
model_glove1.fit(x=[pad_seq,X_meta_train], y=np.array(Y_train), размер пакета = 32, эпохи = 4, подробный = 1, validation_split=0.2, перемешивание = True)

Комментарии:

1. Можете ли вы добавить отдельный код для воспроизведения этой ошибки?

2. Попробуйте заменить 50 на None или полностью исключить значение