#encoder model input_1=Input(shape=(2048),name="Images") encoder_out=Dense(512,activation="relu",name="enc_dense")(input_1) #decoder model input_text=Input(shape=(max_len),name="text") embedding_out=tf.keras.layers.Embedding(input_dim=vocab_size,output_dim=300,input_length=max_len,mask_zero=True,trainable=False,weights=[embedding_matrix])(input_text) lstm_out= LSTM(units=256, activation='tanh', recurrent_activation='sigmoid', use_bias=True, kernel_initializer=tf.keras.initializers.glorot_uniform(seed=23), recurrent_initializer=tf.keras.initializers.orthogonal(seed=7), bias_initializer=tf.keras.initializers.zeros(), return_sequences=True, name="LSTM1")(embedding_out) lstm_out= LSTM(units=512, activation='tanh', recurrent_activation='sigmoid', use_bias=True, kernel_initializer=tf.keras.initializers.glorot_uniform(seed=23), recurrent_initializer=tf.keras.initializers.orthogonal(seed=7), bias_initializer=tf.keras.initializers.zeros(), name="LSTM2")(lstm_out) x=Dropout(0.5)(lstm_out) add=tf.keras.layers.Add()([encoder_out, x]) x=Dense(512,kernel_initializer=tf.keras.initializers.he_normal(seed =1),activation="relu")(add) x1=Dropout(0.25)(x) x1=Dense(vocab_size,activation="softmax")(x1) #encoder_decoder_model encoder_decoder=Model(inputs=[input_1,input_text],outputs=x1) encoder_decoder.summary()