python实战-attention机制

    xiaoxiao2022-07-02  107

    先写一句,未完待续。。前一部分来在转载来自https://blog.csdn.net/yimingsilence/article/details/79208750

    理解RNN中的Attention机制:使用传统编码器-解码器的RNN模型先用一些LSTM单元来对输入序列进行学习,编码为固定长度的向量表示;然后再用一些LSTM单元来读取这种向量表示并解码为输出序列。采用这种结构的模型在许多比较难的序列预测问题(如文本翻译)上都取得了最好的结果,因此迅速成为了目前的主流方法。

    这种结构在很多其他的领域上也取得了不错的结果。然而,它存在一个问题在于:输入序列不论长短都会被编码成一个固定长度的向量表示,而解码则受限于该固定长度的向量表示。这个问题限制了模型的性能,尤其是当输入序列比较长时,模型的性能会变得很差(在文本翻译任务上表现为待翻译的原始文本长度过长时翻译质量较差)。

    “一个潜在的问题是,采用编码器-解码器结构的神经网络模型需要将输入序列中的必要信息表示为一个固定长度的向量,而当输入序列很长时则难以保留全部的必要信息(因为太多),尤其是当输入序列的长度比训练数据集中的更长时。” — Dzmitry Bahdanau, et al., Neural machine translation by jointly learning to align and translate, 2015 --------------------- 作者:默一鸣 来源: 原文:https://blog.csdn.net/yimingsilence/article/details/79208750 版权声明:本文为博主原创文章,转载请附上博文链接!

    使用attention机制

    Attention机制的基本思想是,打破了传统编码器-解码器结构在编解码时都依赖于内部一个固定长度向量的限制。

    Attention机制的实现是通过保留LSTM编码器对输入序列的中间输出结果,然后训练一个模型来对这些输入进行选择性的学习并且在模型输出时将输出序列与之进行关联。

    Attention在文本摘要任务(输入为文章,输出为文本摘要)上的可视化(

    最新回复(0)