当前位置: 首页 > news >正文

【Transformer】基本概述

文章目录

提出背景

在这里插入图片描述

在Transformer模型出现之前,循环神经网络(RNN)及其变体,如长短期记忆网络(LSTM)和门控循环单元(GRU),是处理序列数据的主流方法。但是RNN系列模型存在一些固有的问题,如难以并行化处理、对长距离依赖的捕捉能力有限等。为了解决这些问题,Transformer模型应运而生,于2017年由Vaswani等人在2017年提出,并发表在NeurlPS上。

与RNN系列相比Transformer的优势

  • 并行化处理:Transformer模型通过自注意力机制,可以在处理序列数据时实现高度的并行化,因为每个位置的计算不依赖于前一个位置的隐藏状态,这与RNN系列模型形成鲜明对比。

  • 长距离依赖:自注意力机制使得Transformer模型能够有效地捕捉序列中的长距离依赖关系,而RNN系列模型在这方面表现较差,尤其是当序列非常长时。

  • 灵活性和可扩展性:Transformer模型不依赖于序列的顺序,因此在处理不同长度的序列时更加灵活。此外,它还可以轻松地扩展到更大的数据集和更复杂的任务。

核心思想—注意力机制

Transformer的核心思想,就是抛弃传统的递归(recurrence)或者卷积(convolutions)模块,完全采用注意力机制(attention mechanisms),允许模型在处理序列的每个元素时,都能考虑到序列中的所有其他元素,因此,这种机制就使得模型能够更好地捕捉序列内部的长距离依赖关系。

流程解析

Transformer模型的结构主要由编码器(Encoder)和解码器(Decoder)两大部分组成。

  • 编码器由多个相同的层堆叠而成,每层包含两个主要部分:多头自注意力机制(Multi-Head Self-Attention)和前馈神经网络(Feed-Forward Neural Network)。但也不要忘了还有normalization和residual connection部分,这两部分也是非常关键。
  • 解码器结构与编码器类似,区别主要是两点:在多头自注意力机制中增加了Masked策略(也是后来decoder-only大模型方法实现next-prediction的核心操作),以及增加了一个额外的cross-attention机制,用于关注编码器的输出。

下图是原始论文中的结构图,我把它按照重要程度划分为了7个部分,其中红色的前五个部分最为重要(面试官最喜欢考验候选人的部分),必须要深入理解和掌握,蓝色的后两个部分是相对次要但也要深入理解。

后续我对这个7个部分分别进行讲解,并结合代码进行深入理解。

在这里插入图片描述

参考资料

  • [1] https://www.bilibili.com/video/BV1FH4y157ZC/?share_source=copy_web&vd_source=79b1ab42a5b1cccc2807bc14de489fa7

http://www.mrgr.cn/news/18314.html

相关文章:

  • 《父母爱情》:找结婚对象,别只看有房有车有颜,这4个特点更重要!
  • NVIDIA H200与AMD MI300X:前者高利润率是否合理?
  • .NET周刊【9月第1期 2024-09-01】
  • c++ 标准模板库 STL
  • 一文彻底搞懂Spring, Spring MVC, Spring Boot 和 Spring Cloud 区别
  • Python数据抓取与质量校验:以杭州市公交线路为例
  • 【全能型AI“草莓”来袭】探索未来AI市场的多元化与边界
  • 简单的棒棒图绘制教程
  • 24 - 第三方库的使用支持
  • Java-泛型
  • 速盾:防御ddos攻击的几大有效方法是什么?
  • 大模型企业应用落地系列九》多模态具身智能》端到端强化学习人形机器人
  • Python进阶————闭包与装饰器
  • 【网络安全】网络安全防护体系
  • 23:【stm32】ADC模数转换器
  • 字符串地指针表示方式
  • 三台机器,第一台机器可以ssh到第二台机器,第二台机器可以ssh到第三台机器,请问第一台机器上怎么通过ssh 直接从第三台机器scp文件到第一台机器?
  • 使用JavaScript读取手机联系人列表:从理论到实践
  • 服务器重启后能够自动重启Jar包
  • LeetCode字母异位词分组