lstm网络造句的4个问题

4 Questions to lstm network for sentence generation

警告:我是深度学习菜鸟

我在笑话数据集(231657 个笑话)上训练我的两层 Lstm 模型,想知道 4 件事:

  1. 如果我想让它生成新的笑话,我现在用每句话 50 个字符来训练它,我需要先输入 50 个字符还是可以随机选择一个字符来开始 sentence/joke ?

  2. 1.8 mio 只用 50 个字符训练它是不是很有用。总共(向量是 [10800001, 50, 1])或者这样好吗?

  3. 我使用了 class 是我初始化我的模型所以我可以调用它,不幸的是如果我想创建一个长 sentence/mulitple 句子我必须调用我的预测语句不止一次,问题是我的predict语句先初始化模型,再预测值,所以我不得不使用tf.reset_default_graph(),但过了一段时间,它需要更长的时间。 那么我应该怎么做才能防止这个问题呢?我应该在主脚本或类似的东西中初始化模型吗?

  4. 如何解决文字变长的问题?我目前采用输入的形状并将其用于我 class 中的模型初始化,但这是个好主意吗?
  1. 您需要先输入 50 个字符的种子序列。
  2. 我建议你增加序列长度。
  3. 我不是很了解你,但我建议你正确地构建你的模型。阅读更多:https://danijar.com/structuring-your-tensorflow-models/
  4. 再次,我建议你阅读以上内容link。

并不总是需要将您的模型设为 class。您只需以程序方式制作一次模型,训练它,然后使用 tf.Saver()

保存它