首页 > 解决方案 > 使用 Estimator API 生成文本

问题描述

我一直在尝试开始过渡到 Estimator API,因为它是 tensorflow 人推荐的。但是,我想知道如何使用估算器框架有效地完成一些基本工作。在周末,我尝试为文本生成创建基于 GRU 的模型,并遵循 tensorflow 示例来构建自定义估计器。我已经能够创建一个我可以相对容易地训练的模型,并且它的结果与非估计器版本相匹配。但是对于采样(生成文本),我遇到了一些麻烦。我终于让它工作了,但它很慢,因为每次它预测一个字符时,估计器框架都会加载整个图表,这使得整个事情变得很慢。有没有办法不每次都加载图表或任何其他解决方案?第二题:我还必须使用 state_is_tuple=False 因为我必须来回发送 GRU 的状态(在模型方法和生成器方法之间)并且我不能发送元组。有谁知道如何处理这个问题?谢谢 PS这是我的代码示例的链接:https://github.com/amirharati/sample_estimator_charlm/blob/master/RnnLm.py

标签: tensorflowlstmrnntensorflow-estimator

解决方案


我终于有时间尝试 xdurch0 的建议 如果其他人有同样的问题,这里是代码: https ://github.com/amirharati/sample_estimator_charlm/blob/master/RnnLmS2S.py 简而言之,它有效,但在我看来它相对于简单的 RNN 实现需要更多的时间来收敛(例如,字符模型倾向于生成重复的模式并且更难学习 o 发射,但模型更适合单词模型)


推荐阅读