Transformer原理及其应用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Transformer原理及其应用相关的知识,希望对你有一定的参考价值。

参考技术A

transformer 最早使用于NLP模型中,使用了 Self-Attention 机制。相较于RNN结构可以进行并行化训练,能够 拥有全局信息

scale dot-product attention

self-attention 过程图

query q 对 key k做attention:

softmax归一化:

权重乘value v 输出转化值:

合并之前的三个图中操作:

Transformer架构

Feed-Forward组件:

架构图:

Transformer:[2017] attention is all you need

Bert[2018]: Elmo, GPT

参数文件大小:
BERT(BASE) (L=12, H=768, A=12, Total Parameters=110M)

BERT(LARGE) (L=24, H=1024,A=16, Total Parameters=340M)

IGPT:
借鉴bert思想,OpenAI尝试对测试数据随机mask 5 个token,最终ImageNet结果果然上升了一些(红色)。由于马赛克操作过于严重(整张图片都mask了),尽管事实证明还是有效果的,但从输入上看,降低了模型的拟合能力。

VIT:

尝试过三种预训练方法,首先mask掉50%的patch,然后:

第三种方式已经非常接近了,但是由于研究的重点不在于此便浅尝辄止了

DEIT:
在预训练阶段,最多会mask 40%的patch。
另外,作者们其实也试过复原pixel,但效果会有1.8%的下降。对于这个现象,BEiT给出的猜想是,就像多层CNN一样,编码器最终得到的应该是一个更全局、高维的表示,而复现pixel会让后几层太关注局部细节。

MAE:
轻量级架构的两大核心:

一些值得注意的细节,比如:

1.输入侧直接丢掉mask token,效果+0.7,效率x3.3

3.选取数据增强策略,效果+0.2

思考:导致视觉和语言的masked autoencoder 不一样的三大原因

规模大的简单算法是深度学习的核心。在NLP中,简单的自我监督学习方法能够从模型的规模中获益。在计算机视觉中,实用的预训练范例主要是监督式的。在这项研究中,自我监督学习已经取得了进展。我们在ImageNet和迁移学习中观察到自动编码器(一种类似于NLP技术的简单的自我监督方法)与NLP中的技术类似,提供了可扩展的好处。视觉中的自我监督学习现在可能会走上一条与NLP类似的轨迹。另一方面,我们注意到,图像和语言是不同性质的信号,这种差异必须仔细处理。图像仅仅是记录的光,没有语义分解为视觉类似物的语义分解。我们不是试图去除物体,而是去除很可能不构成语义段的随机斑块。同样地,我们的MAE重建了像素,而这些像素并不是语义实体。从测试的结果上看,MAE能推断出了复杂的、整体的重建,这表明它已经学会了许多视觉概念(语义)。我们假设,这种行为的发生通过MAE内部丰富的隐藏表征。我们希望这个观点能给未来的工作带来启发。更广泛的影响。建议的方法预测内容基于训练数据集的学习统计,因此将反映这些数据中的偏差,包括具有负面社会影响的偏差。该模型可能产生不存在的内容。这些问题值得在这项工作的基础上进一步研究和考虑,以生成图像。

有可能取代所有组件。

每个领域都可尝试,遍地开花。

以上是关于Transformer原理及其应用的主要内容,如果未能解决你的问题,请参考以下文章

Transformer学习

超越CNN的ViT模型及其应用前景

Transformer 原理讲解以及在 CV 领域的应用

Transformer 原理讲解以及在 CV 领域的应用

从Transformer到ViT:多模态编码器算法原理解析与实现

Attention is all you need及其在TTS中的应用Close to Human Quality TTS with Transformer和BERT