问题描述
在使用 Keras 的深度学习中,我通常遇到的 model.fit 是这样的:
model.fit(x_train,y_train,epochs=50,callbacks=[es],batch_size=512,validation_data=(x_val,y_val)
而在 NLP taks 中,我看到了一些关于使用带有注意力模型的 LSTM 编码器-解码器进行文本摘要的文章,我通常会遇到用于拟合我无法理解的模型的代码:
model.fit([x_tr,y_tr[:,:-1]],y_tr.reshape(y_tr.shape[0],y_tr.shape[1],1)[:,1:],validation_data=([x_val,y_val[:,y_val.reshape(y_val.shape[0],y_val.shape[1],1:]))
而且我没有找到解释为什么要这样做。有人可以对上述代码进行解释。上面的代码位于 https://www.analyticsvidhya.com/blog/2019/06/comprehensive-guide-text-summarization-using-deep-learning-python/
解决方法
刚看到你的问题。无论如何,如果有人有类似的问题,这里是一个explanation。
model.fit() 方法来拟合训练数据,您可以将批量大小定义为例如512 在你的情况下。发送文本和摘要(不包括摘要中的最后一个单词)作为输入,并将包含每个单词(从第二个单词开始)的重构摘要张量作为输出(这解释了将智能注入模型以预测单词,给定前一个词)。此外,要在训练阶段启用验证,请同时发送验证数据。