李宏毅2020机器学习深度学习:Pointer Network(阅读原论文后修订)

Pointer Network是2015年由Google Brain的Oriol提出的。
原版论文提出这个模型,主要是为了解决,预测的输出类型可变的问题。

例如尝试训练一个神经网络计算凸包(Convex Hull)。
输入一个十个点(用x,y坐标表示)的序列,希望神经网络能输出包围剩下点的组成边界的点序列。
在这里插入图片描述
既然输入一个序列,输出一个序列。
考虑采用Seq2Seq的方式进行训练。
在这里插入图片描述
但是只使用原版Seq2Seq是做不到的。
这个问题的输入点数是不确定的,同时输出的字典大小等于输入序列的长度。
比如输入四个点,每次输出需要预测四个点中谁的概率最大。
如果下一条数据输入了五个点,这次训练中的每一次输出又需要预测五个点中谁的概率最大。
而原版Seq2Seq的Decoder中,输出节点数是无法调整的。

用attention进行改造,让NN动态决定输出的set的大小。
( x 0 x_0 x0, y 0 y_0 y0)代表END
在这里插入图片描述
不用 softmax 层,而将attention weight视为一个output的概率分布,用 argmax 筛选输出。
算出来输入序列中哪一个的attention值最大,decoder就用这个输入元素作为输出。

训练阶段怎么办呢?
根据label, minimize 交叉熵损失函数。
在这里插入图片描述
Decoder的输入,仅仅是某个词的词向量,而不是包含了整个context信息的向量。
Decoder没有输出,只是通过输入产生key值,送入Encoder做attention运算。
现在输出由Encoder完成。
在这里插入图片描述
Point Network适合用在Summarization任务中
从input document中取出一些重要的词(如原文中的人名地名),接起来得到summary。
在这里插入图片描述
原论文:Get To The Point: Summarization with Pointer-Generator Networks
上图中的 p g e n p_{gen} pgen会决定最终的向量多少由左侧Point Network和右侧传统方法的输出组成。
左边会直接根据上一个词与输入的attention,输出一个summary word.
由图可见,“2-0”这个词是词表中没有的,但Point Network仍然输出了这个词的概率。

还可以应用在对话机器翻译和机器人(chat-bot)中
在这里插入图片描述
适用于要把人名直接取过来的情况。

参考文献
[1] Vinyals O , Fortunato M , Jaitly N . Pointer Networks[J]. Computer Science, 2015, 28.
[2] See A , Liu P J , CD Manning. Get To The Point: Summarization with Pointer-Generator Networks[C]// Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). 2017.

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
李宏毅2020机器学习笔记中,有一个关于注意力机制(Attention)的部分。这部分内容主要介绍了生成模型(Generation)、注意力(Attention)、生成的技巧(Tips for Generation)以及指针网络(Pointer Network)。在生成模型中,主要讲述了如何生成一个有结构的对象。接下来介绍了注意力机制,包括一些有趣的技术,比如图片生成句子等。在生成的技巧部分,提到了一些新的技术以及可能遇到的问题和偏差,并给出了相应的解决方案。最后,稍微提到了强化学习。其中还提到了在输出"machine"这个单词时,只需要关注"机器"这个部分,而不必考虑输入中的"学习"这个部分。这样可以得到更好的结果。另外,还提到了关于产生"ei"的方法,其中有研究应用了连续动态模型自注意力(Self-attention)来学习位置编码的方法。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [2020李宏毅机器学习笔记-Condition Generation by RNN&Attention](https://blog.csdn.net/zn961018/article/details/117593813)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [李宏毅机器学习学习笔记:Self-attention](https://blog.csdn.net/weixin_44455827/article/details/128094176)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值