随写transformer

作为针对序列建模的模型,RNN,LSTM在以序列为主要呈现形式的NLP任务上展现出远超CNN的卓越性能。但是仍有缺陷:

  • RNN为单向依序计算,序列需要依次输入,串行计算,限制了计算机的并行计算能力,导致时间成本过高。
  • RNN难以捕捉长期依赖 问题,即对于极长的序列,RNN难以捕捉远距离输入 之间的关系。虽然LSTM通过门机制对此进行了一定优化,但RNN对长期依赖问题的捕捉能力仍然不如人意。

针对上述两个问题,2017年,Vaswani 等人发表了论文**《Attention Is All You Need》** ,抛弃了传统的 CNN、RNN 架构,提出了一种全新的完全基于 attention 机制 的模型------Transformer ,解决了上述问题,在较小的时间成本下取得了多个任务的 the-state-of-art效果,并为自然语言处理任务提供了新的思路。

自此,attention 机制进入自然语言处理任务的主流架构,在 Transformer 的基础上,诞生了预训练-微调范式 的多种经典模型如 Bert、GPT、T5 等。当然,同样是在 Transformer 的肩膀上,引入了 RLHF 机制 、实现了大量参数建模的 ChatGPT 则带领 NLP 进入了全新的大模型时代。

但不管是预训练-微调范式的主流模型 Bert,还是大模型时代的主流模型 ChatGPT、LLaMA,Transformer 都是其最坚实的基座。

注意力公式Q与K乘积进行放缩的原因:

如果Q和K对应的维度比较大,softmax放缩时就非常容易受影响,使不同值之间的差异较大,从而影响梯度的稳定性,因此,要将Q和K乘积的结果做一个放缩。

相关推荐
温暖名字10 分钟前
调用qwen3-omni的api对本地文件生成视频文本描述(批量生成)
python·音视频·qwen·qa问答
一眼万里*e1 小时前
搭建个人知识库
python
程序员小远2 小时前
软件测试之bug分析定位技巧
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·bug
江上清风山间明月2 小时前
Android 系统中进程和线程的区别
android·python·线程·进程
mit6.8242 小时前
[LivePortrait] docs | Gradio用户界面
python
听风吟丶3 小时前
Java 函数式编程深度实战:从 Lambda 到 Stream API 的工程化落地
开发语言·python
饮长安千年月4 小时前
玄机-第八章 内存马分析-java03-fastjson
开发语言·python·安全·web安全·网络安全·应急响应
天天爱吃肉82184 小时前
新能源汽车动力系统在环(HIL)半实物仿真测试台架深度解析
人工智能·python·嵌入式硬件·汽车
卡次卡次14 小时前
注意点:挂载与插硬盘,容器挂载实现持久化存储
python
2401_841495644 小时前
【LeetCode刷题】找到字符串中所有字母异位词
数据结构·python·算法·leetcode·数组·滑动窗口·找到字符串中所有字母异位词