python-3.x - 使用 Keras /Tensorflow 解释具有用于文本摘要的注意力模型的 LSTM 编码器-解码器中的 model.fit
问题描述
在使用 Keras 进行深度学习时,我通常会遇到这样的 model.fit:
model.fit(x_train, y_train, epochs=50, callbacks=[es], batch_size=512, validation_data=(x_val, y_val)
而在 NLP 任务中,我看到了一些关于使用 LSTM 编码器-解码器和注意力模型进行文本摘要的文章,我通常会遇到这个代码来拟合我无法理解的模型:
model.fit([x_tr,y_tr[:,:-1]], y_tr.reshape(y_tr.shape[0],y_tr.shape[1], 1)[:,1:] ,epochs=50,callbacks=[es],batch_size=512, validation_data=([x_val,y_val[:,:-1]], y_val.reshape(y_val.shape[0],y_val.shape[1], 1)[:,1:]))
而且我没有找到任何解释为什么要这样做。有人可以对上述代码进行解释。上述代码可在https://www.analyticsvidhya.com/blog/2019/06/comprehensive-guide-text-summarization-using-deep-learning-python/找到
请注意:我已经联系了写这篇文章的人,但没有得到他的回复。
解决方案
刚看到你的问题。无论如何,如果有人有类似的问题,这里有一个解释。
model.fit() 方法来拟合训练数据,您可以在其中将批量大小定义为例如 512。发送文本和摘要(不包括摘要中的最后一个单词)作为输入,并将包含每个单词(从第二个单词开始)的重构摘要张量作为输出(这解释了将智能注入模型以预测单词,给定前一个词)。此外,要在训练阶段启用验证,还要发送验证数据。
推荐阅读
- c++ - 在 Visual Studio Code 和 Ubuntu 18.04 中使用 SFML 图形库
- android - 为什么在 Android Studio 自动将 Java 代码转换为 Kotlin 代码后,我会收到“as non-null is null”错误?
- ios - Segue 不会在加载时执行
- spring-boot - JWT 令牌安全
- javascript - 协助创建动态菜单弹出窗口 -js
- android - 如何将数据树的数据存储在 Firebase 中?对于安卓工作室项目
- android - 在按钮上单击从图库中选择图像并在另一个活动的 imageView 中设置
- ckeditor - 在 onchange 事件期间调用 setData 的 Ckeditor 问题
- php - 用 php 更新 html 表单
- python - 没有 spark-submit 的 Exec pyspark 独立脚本