向lstm网络发送句子的4个问题

时间:2018-08-27 17:51:16

标签: python-3.x neural-network lstm tflearn

警告:我是深度学习菜鸟

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

  1. 如果我想让它产生新的笑话,我现在将其训练为每句话50个字符,我是否需要先输入50个字符,还是可以随机图片一个字符来开始句子/笑话?

  2. 以1.8 mio的价格仅用50个字符训练它是否有用。总计(向量为[10800001,50,1])还是那么好?

  3. 我使用的是我初始化模型的类,因此可以调用它,不幸的是,如果我想创建一个长句子/多句子,我必须多次调用我的预测语句,问题是我的预测语句首先初始化模型,然后预测值,所以我必须使用tf.reset_default_graph(),但过一会儿,它会花费更长的时间。 那我该怎么做才能防止这个问题呢?我应该在主脚本中初始化模型还是类似的东西?

  4. 如何解决文字增长的问题?我目前采用输入的形状并将其用于类中的模型初始化,但这是一个好主意吗?

1 个答案:

答案 0 :(得分:0)

  1. 您需要先输入50个字符的种子序列。
  2. 我建议您增加序列长度。
  3. 我对您不太了解,但我建议您正确构建模型。阅读更多内容:https://danijar.com/structuring-your-tensorflow-models/
  4. 同样,我建议您阅读上面的链接。

并非总是需要将模型作为类。您可以按照程序方式制作一次模型,对其进行训练,然后使用tf.Saver()

保存