首页 文章

Keras LSTM文本生成培训

提问于
浏览
2

我正在使用Keras处理字符级文本生成器 . 在浏览示例/教程时,我仍然不明白 .

训练数据(X)被分成长度为maxlen的半冗余序列,y是紧随该序列的字符 .

我知道这是为了提高效率,因为这意味着培训只会实现maxlen字符内的依赖关系 .

我正在努力理解为什么它在序列中完成 . 我认为LSTM / RNN是通过一次输入一个字符并将预测的下一个字符与实际的下一个字符进行比较来训练的 . 这看起来非常不同,然后输入它们一次说maxlen = 50个字符,并将长度50个序列与下一个字符进行比较 .

Keras是否真的打破了训练序列,并在“引擎盖下”逐个字符地输入它们?

如果不是为什么?

1 回答

  • 1

    由于序列生成,我假设您在重复层中设置标志 stateful=True . 如果没有这个选项,你可以使不同的序列/字符独立于我认为不是这种情况 . 如果此标志设置为 True ,则这两种方法都是等效的 - 并且将文本分成序列是为了改进性能和简化原因 .

相关问题