为什么网站开发成本高,金融代理平台代理加盟,如何做局域网网站建设,大连招投标网官网在序列学习中#xff0c;我们以往假设的目标是#xff1a; 在给定观测的情况下 #xff08;例如#xff0c;在时间序列的上下文中或在语言模型的上下文中#xff09;#xff0c; 对下一个输出进行建模。 虽然这是一个典型情景#xff0c;但不是唯一的。 还可能发生什么其…在序列学习中我们以往假设的目标是 在给定观测的情况下 例如在时间序列的上下文中或在语言模型的上下文中 对下一个输出进行建模。 虽然这是一个典型情景但不是唯一的。 还可能发生什么其它的情况呢 我们考虑以下三个在文本序列中填空的任务。
我___。
我___饿了。
我___饿了我可以吃半头猪。
根据可获得的信息量我们可以用不同的词填空 如“很高兴”“happy”、“不”“not”和“非常”“very”。 很明显每个短语的“下文”传达了重要信息如果有的话 而这些信息关乎到选择哪个词来填空 所以无法利用这一点的序列模型将在相关任务上表现不佳。 例如如果要做好命名实体识别 例如识别“Green”指的是“格林先生”还是绿色 不同长度的上下文范围重要性是相同的。 为了获得一些解决问题的灵感让我们先迂回到概率图模型。
双向模型
如果我们希望在循环神经网络中拥有一种机制 使之能够提供与隐马尔可夫模型类似的前瞻能力 我们就需要修改循环神经网络的设计。 幸运的是这在概念上很容易 只需要增加一个“从最后一个词元开始从后向前运行”的循环神经网络 而不是只有一个在前向模式下“从第一个词元开始运行”的循环神经网络。 双向循环神经网络bidirectional RNNs 添加了反向传递信息的隐藏层以便更灵活地处理此类信息。 图9.4.2描述了具有单个隐藏层的双向循环神经网络的架构。
定义 将前向隐状态 和反向隐状态连接起来 获得需要送入输出层的隐状态H 模型的计算代价及其应用 双向层的使用在实践中非常少并且仅仅应用于部分场合。 例如填充缺失的单词、词元注释例如用于命名实体识别 以及作为序列处理流水线中的一个步骤对序列进行编码例如用于机器翻译 总结 在双向循环神经网络中每个时间步的隐状态由当前时间步的前后数据同时决定。 双向循环神经网络与概率图模型中的“前向-后向”算法具有相似性。 双向循环神经网络主要用于序列编码和给定双向上下文的观测估计。 由于梯度链更长因此双向循环神经网络的训练代价非常高。 双向层的使用在实践中非常少并且仅仅应用于部分场合。 例如填充缺失的单词、词元注释例如用于命名实体识别 以及作为序列处理流水线中的一个步骤对序列进行编码例如用于机器翻译