【发布时间】:2019-01-17 04:16:43
【问题描述】:
我在 Keras 中实现了以下教程:
在介绍中,作者说该设置非常适合将随机变化大小的输入序列与随机变化大小的输出序列匹配。我很困惑,因为我看不到如何生成与输入句子长度不同的句子输出。
假设输入是英语句子,输出是法语句子,如教程中所示。
我目前的理解如下:
编码器输入是英文句子作为要嵌入的整数序列。解码器输入是法语句子,作为延迟一个时间步长的整数序列,序列中的第一个整数表示空值。该层也是嵌入的。
目标是将法语句子作为一系列整数,而不是延迟。我似乎需要在末尾添加一个整数来表示字段的结尾,否则大小与解码器嵌入的输入不匹配,keras 会抛出错误。
在进行预测时,您究竟提供了什么?似乎不可能得到与输入不同长度的输出。是这样吗?
【问题讨论】:
-
在阅读了其他一些指南之后,我认为它的工作方式是:完整的输入字符串由语句结束标记提供。完整的解码器输入由输入令牌的开头馈送,因此延迟一个时间步长。解码器目标是法语句子 one-hot 编码,未延迟,末尾带有语句结束标记。
标签: keras lstm encoder-decoder