保姆级教程:图解Transformer
本文 GitHub https://github.com/Jack-Cherish/PythonPark 已收录,有技术干货文章,整理的学习资料,一线大厂面试经验分享等,欢迎 Star 和 完善。
一、前言
大家好,我是 Jack。
本文是图解 AI 算法系列教程的第二篇,今天的主角是 Transformer
。
Transformer
可以做很多有趣而又有意义的事情。
比如我写过的《用自己训练的AI玩王者荣耀是什么体验?》。
再比如 OpenAI
的 DALL·E
,可以魔法一般地按照自然语言文字描述直接生成对应图片!
输入文本:鳄梨形状的扶手椅。
AI 生成的图像:
两者都是多模态的应用,这也是各大巨头的跟进方向,可谓大势所趋。
Transformer
最初主要应用于一些自然语言处理场景,比如翻译、文本分类、写小说、写歌等。
随着技术的发展,Transformer
开始征战视觉领域,分类、检测等任务均不在话下,逐渐走上了多模态的道路。
Transformer
近两年非常火爆,内容也很多,要想讲清楚,还涉及一些基于该结构的预训练模型,例如著名的 BERT
,GPT
,以及刚出的 DALL·E
等。
它们都是基于 Transformer
的上层应用,因为 Transformer
很难训练,巨头们就肩负起了造福大众的使命,开源了各种好用的预训练模型。
我们都是站在巨人肩膀上学习,用开源的预训练模型在一些特定的应用场景进行迁移学习。
篇幅有限,本文先讲解 Transformer
的基础原理,希望每个人都可以看懂。
后面我会继续写 BERT
、GPT
等内容,更新可能慢一些,但是跟着学,绝对都能有所收获。
还是那句话:如果你喜欢这个 AI 算法系列教程,一定要让我知道,转发在看支持,更文更有动力!
二、Transformer
Transformer
是 Google
在 2017
年提出的用于机器翻译的模型。
Transformer
的内部,在本质上是一个 Encoder-Decoder
的结构,即 编码器-解码器
。
Transformer
中抛弃了传统的 CNN
和 RNN
,整个网络结构完全由 Attention
机制组成,并且采用了 6
层 Encoder-Decoder
结构。
显然,Transformer
主要分为两大部分,分别是编码器和解码器。
整个 Transformer
是由 6
个这样的结构组成,为了方便理解,我们只看其中一个Encoder-Decoder
结构。
以一个简单的例子进行说明:
Why do we work?
,我们为什么工作?
左侧红框是编码器,右侧红框是解码器,
编码器负责把自然语言序列映射成为隐藏层(上图第2步),即含有自然语言序列的数学表达。
解码器把隐藏层再映射为自然语言序列,从而使我们可以解决各种问题,如情感分析、机器翻译、摘要生成、语义关系抽取等。
简单说下,上图每一步都做了什么:
- 输入自然语言序列到编码器: Why do we work?(为什么要工作);
- 编码器输出的隐藏层,再输入到解码器;
- 输入 <
保姆级教程:图解Transformer相关推荐
- centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
centos8的官网下载和vm16虚拟机安装centos8[保姆级图解] centos下载 vm虚拟机安装centos 可能出现的问题vcpu-0 centos下载 centos官网:https:// ...
- 【图解SHA1杂凑算法】SHA1杂凑算法的Python实现保姆级教程 | 物联网安全 | 信息安全
系列索引:[图解安全加密算法]加密算法系列索引 Python保姆级实现教程 | 物联网安全 | 信息安全 起初写实验时找到的代码大多基于c/c++,python可参考的资料很少,所以借着这次实验的机会 ...
- 【Spring源码】4. 自己搞个标签?~自定义标签保姆级全过程(图解向,堆图预警)
[Spring源码系列- IOC] 1 [Spring源码]0.安装Gradle环境 2 [Spring源码]1.下载与编译_pom relocation to an other version nu ...
- 万字长文:Stable Diffusion 保姆级教程
万字长文:Stable Diffusion 保姆级教程 2022年绝对是人工智能爆发的元年,前有 stability.ai 开源 Stable Diffusion 模型,后有 Open AI 发布 C ...
- HBase详解(对hbase集群搭建、读写流程、hbase的javaApi等细致入微的讲解与保姆级的图解)
学HBase的意义是什么 我本想用MySQL来与HBase作比较,但发现他们两者毫无可比性,因为两者运用领域不同,各自有各自的优点,就好比爬山穿登山鞋,潜水穿脚蹼一般. 一门技术的兴起,一个优秀的开源 ...
- mac中Typora+PicGo图床+gitee 保姆级教程
查看全文 http://www.taodudu.cc/news/show-5900829.html 相关文章: 使用Typora+PicGo+Gitee打造全新Markdown博客创作环境 今天码云( ...
- 判断是不是链接 正则_Python 正则表达式 保姆级教程,小学生都看得懂!!
~点击 蓝字 关注,获取更多资源~ 0 前言 上一篇文章,2020,还不会正则???,和小伙伴们一起学习了 Python 中的正则表达式,读完之后,总感觉少了点什么东西,无法尽兴?就好像爱你们的心少了 ...
- 参考文献顺序不对_Endnote插入参考文献的保姆级教程
作者:白鹤(baihe@iphy.ac.cn) 审核:蔡建旺 各位同学看过来,最近由于疫情严重,小伙伴们都憋在家里写论文.这倒不是什么难事,最烦人的是参考文献的插入.一篇博士论文下来,参考论文不说30 ...
- SpringBoot 配置 generator代码生成+knife4j接口文档(2种模板设置、逻辑删除、字段填充 含代码粘贴可用)保姆级教程(注意事项+建表SQL+代码生成类封装+测试类)
保姆级教程,逻辑删除及字段自动填充设置,特别要说明的是本次用的是MySQL数据库,如果使用Oracle数据库是,数据库配置需要改变,数据库表一定要大写,否则无法生成代码. 数据库表 CREATE TA ...
- 【NLP保姆级教程】手把手带你RNN文本分类(附代码)
写在前面 这是NLP保姆级教程的第二篇----基于RNN的文本分类实现(Text RNN) 参考的的论文是来自2016年复旦大学IJCAI上的发表的关于循环神经网络在多任务文本分类上的应用:Recur ...
最新文章
- myeclipse智能提示设置
- REALM后续:最近邻搜索,MIPS,LSH和ALSH
- 现代人,特别需要蒸之一
- vue each_Vue.js从零开始——模块化项目(2)
- hibernate jpa_使用Hibernate(JPA)一键式删除
- 极乐科技CEO应邀出席2017微信小程序生态课
- android 邮件分享链接,Android应用从通过电子邮件发送的链接打开
- android 如何实现apk search出现在系统的推荐列表里
- c语言中数组int*,C语言数组
- 联想e570c固态接口支持协议_thinkpad e570c15.6英寸笔记本电脑支持什么固态硬盘接口...
- Spring Boot @DeleteMapping(转)
- 萌翻!超女纪敏佳产子并幸福晒照 男宝七斤一两超可爱
- 计算机微程序控制器实验报告,计算机组成原理实验报告三:微程序控制器实验.doc...
- Day 7(云计算-zsn)
- mac文件夹怎么重命名?苹果电脑文件夹重命名快捷键
- 状态转移矩阵(status transition matrix )
- 概率论与统计学的关系是什么?
- html5画图作品,10款最佳HTML5绘图工具
- Learning Policies for Adaptive Tracking with Deep Feature Cascades
- Process Monitor的基本使用方法
热门文章
- centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】