我从很多人那里听说过Ashish Vaswani 等人的题为Attention Is All You Need的论文。
简单来说,“注意力”实际上做了什么?它是函数、属性还是其他东西?
我从很多人那里听说过Ashish Vaswani 等人的题为Attention Is All You Need的论文。
简单来说,“注意力”实际上做了什么?它是函数、属性还是其他东西?
让我们首先强调一下,不幸的是,在文献中,注意力这个术语仍然被广泛使用,没有围绕技术细节达成任何精确的共识,论文中唯一不变的是,当模型能够学习时,应该使用注意力,或者专注于本地 vs我们用于训练的数据中的全局模式。而“应该使用”我只是指每个人都喜欢觉得有资格写“嘿,我们使用了注意力!”这一事实。仅仅是因为 Vaswani 等人引入变压器所产生的炒作。
话虽如此,我认为到目前为止,描述注意力的最佳表达方式是:
特定类型的架构
这是什么意思:Vaswani 等人。在你引用的论文中用一种新的整个机器学习架构,即变形金刚介绍了注意力表达。在本文中,注意力用于指代一组特定的层,类似地,我们将残差块或密集块称为为卷积神经网络引入的特定类型的层组合。对我来说,注意力和上面提到的两个例子完全没有区别。在我看来,围绕使用这个表达的困惑源于 Vaswani 等人的事实。非常强调新提出的模型的最终目的,即在机器翻译中捕获句子中的局部相似性。
我认为架构是注意力的最佳标签的最后一个考虑因素是,它还包括与 Vaswani 等人引入的多头注意力模块完全不同的注意力类型,例如利用注意力图的架构。在数学上,注意力图和多头注意力模块除了名称之外没有任何共同之处,但是,因为从概念上讲它们似乎实现了相同的目的,我们将它们都称为注意力,结果是为了避免混淆,人们应该总是指一个特定的谈论注意力时的纸张。
上面的答案非常简洁,但我会尝试举一个 ELI5 的例子。我也同意@nbro 的观点,即注意力不仅仅意味着变压器架构。
你母亲的堂兄的父亲最小的女儿的身高是多少?该查询很复杂,取决于您对家谱关系的良好记忆。它看起来像这样:
您在 (1) 中看到的是循环神经网络的功能,很明显它们的性能与输入的长度成反比。
查询该人身高的更有效方法是为其命名 - Aligna。现在,当您需要获取那个人的特征时,您不必记住它是与您最亲近的人的“连锁”关系。这种新方法如下所示:
后者本质上是注意力集中所做的。注意力与所有输入步骤(例如输入句子中的单词)建立直接联系,以便它可以独立地关注将产生成功输出/预测的输入(或输入集)。