技术大神|Transformers是一种图神经网络( 三 )


技术大神|Transformers是一种图神经网络
文章图片
广义上说 , 这就是Transformers正在做的事情:它们是带有多头注意力的GNN , 作为邻居的聚合函数 。 标准的GNNs从其局部邻居节点j∈N(i)中聚合特征 , 而NLP的Transformers将整个句子S作为局部邻居 , 从每一层的每个单词j∈S中聚合特征 。
重要的是 , 各种针对特定问题的技巧——比如位置编码、因果/隐藏聚合、学习率策略和预训练——对Transformers的成功至关重要 , 但很少在GNN社区中出现 。 同时 , 从GNN的角度来看Transformers可以让我们摆脱架构中的许多花哨的东西 。
我们可以相互学到点什么?
现在我们已经在Transformers和GNN之间建立了联系 , 让我来谈谈……
全连通图是NLP的最佳输入格式吗?
在统计NLP和ML之前 , 像NoamChomsky这样的语言学家专注于发展语言结构的正式理论 , 比如语法树/图 。 TreeLSTMs已经尝试过了 , 但是也许transformer/GNNs是更好的架构 , 可以让语言理论和统计NLP的世界更靠近?
技术大神|Transformers是一种图神经网络
文章图片
如何学习长期的依赖?
完全连通图的另一个问题是 , 它们让学习单词之间的长期依赖关系变得很困难 。 这仅仅是因为图中的边的数量是如何随着节点的数量以平方量级增长的 。 在一个有n个单词的句子中 , 一个Transformer/GNN将对n^2^个单词对进行计算 。 对于非常大的n , 就没办法处理了 。
NLP社区对长序列和依赖问题的看法很有趣:让注意力力机制变得稀疏或者可以自适应输入的大小 , 对每一层添加递归或压缩 , 使用局部敏感哈希来获得有效的注意力 , 都是改善Transformer的有前途的新想法 。
看到来自GNN社区的想法加入其中将是很有趣的 , 例如使用划分二部图的方式用于句子图稀疏化似乎是另一种令人兴奋的方法 。
技术大神|Transformers是一种图神经网络
文章图片
Transformers在学习“神经语法吗”?
有几个有趣的文章来自NLP社区 , 是有关Transformers可能正在学习的内容 。 它的基本前提是 , 对句子中的所有词进行关注 , 以确定对哪些词最感兴趣 , 从而使“Transformers”能够学习一些类似于特定任务语法的东西 。 在多头注意力中 , 不同的头也可能“看”不同的句法属性 。
用图的术语来说 , 通过在全图上使用GNN , 我们能从GNN如何在每一层执行邻居的聚合来恢复最重要的边缘(以及它们可能包含的内容)吗?对于这个观点 , 我并不那么信服 。
技术大神|Transformers是一种图神经网络
文章图片
为什么是多头注意力?为什么是注意力?
我更赞同多头机制的优化视图——拥有多个注意力头改进了学习并克服了错误的随机初始化 。 例如 , 这些论文表明Transformer头可以在训练被“修剪”或删除 , 而不会对性能产生显著影响 。
多头邻居聚合机制在GNNs中也被证明是有效的 , 例如 , GAT使用相同的多头注意力和MoNet使用多个高斯核聚合特征 。 虽然是为了稳定注意力机制而发明的 , 但是多头机制会成为压榨模型性能的标准操作吗?
相反 , 具有简单聚合函数(如sum或max)的GNN不需要多个聚合头进行稳定的训练 。 如果我们不需要计算句子中每个词对之间的配对兼容性 , 对Transformers来说不是很好吗?
Transformers能从完全摆脱注意力中获益吗?YannDauphin和合作者的最近工作提出了一种替代的ConvNet的架构 。 Transformers也可能最终会做一些类似的事情 。
技术大神|Transformers是一种图神经网络
文章图片


推荐阅读