mindshow
Pine 发自 凹非寺
量子位 | 公众号 QbitAI
真正零门槛!小白都能轻松看懂的Transformer教程来了。
在自然语言处理和计算机视觉领域,Transformer先后替代了RNN、CNN的地位成为首选模型,最近爆火的ChatGPT也都是基于这个模型。
换言之,想进入机器学习的领域,就必须得懂Transformer。
这不,量子位就发现了一篇零基础也能学的教程,作者是前微软、Facebook首席数据科学家,也是MIT机械工程的硕博士,从视觉化矩阵乘法开始,带你一步步入门。
DeepMind研究科学家Andrew Trask也转发评论道:
这是我至今见过最好的教程,它对入门者非常非常友好。
![](https://p0.ssl.img.360kuai.com/t019c7470285c259474.jpg)
这条帖子也是掀起了一阵热度,浏览量已经有近30w。
![](https://p0.ssl.img.360kuai.com/t0102b4b20ea1a0a215.jpg)
网友们也纷纷在评论区作出“码住”状。
![](https://p0.ssl.img.360kuai.com/t01db7b46822def9a44.jpg)
从视觉化矩阵乘法开始学
因为这是一个新手入门的教程,所以在正式学Transformer之前,会有很多介绍矩阵乘法和反向传播的内容。
并且在介绍的过程中,作者逐个添加学习Transforme所需要了解的概念,并加以解释。
具体有多新手友好,我们先来浅看下这篇教程~
基础概念解释
首先,了解Transformer的第一步就是编码,就是把所有的单词转换成数字,进而可以进行数学计算。
一般来说,将符号转换为数字的有效方法是先对所有单词符号分配数字,每个单词符号都会对应一个独立的数字,然后单词组成的句子便可以通过数字序列来表示了。
举个简单的例子,比如files=1、find=2和my=3。然后,句子“ Find my files”可以表示为数字序列[2,3,1]。
不过这里介绍的是另外一种方法,即独热编码。
具体来说,就是将单词符号转换成一个数组,这个数组中只能有一个1,其他全为0。还是上面那个例子,用这种方式表示的话如下图。
![](https://p0.ssl.img.360kuai.com/t0119229db0c33779a5.jpg)
这样一来,句子“Find my files”就变成了一维数组的序列,压缩到一块也就像是二维数组了。
![](https://p0.ssl.img.360kuai.com/t01b588beb6f84d918c.jpg)
接下来就要再来了解下点积和矩阵乘法了。
点积这里也就不再过多赘述,元素相乘再相加便可以了。
它有两个作用,一个是用来度量两个单词之间的相似性,一个是显示单词的表示强度。
相似性很容易判别,一个单词的独热矢量和自己的点积是1,和其他的点积为0.
至于表示强度,和一个能够表示不同权重的值向量进行点乘便可以了。
![](https://p0.ssl.img.360kuai.com/t017b857167de43598a.jpg)
矩阵乘法,看下面这幅图便足矣。
![](https://p0.ssl.img.360kuai.com/t01833e9fc496d918eb.jpg)
从简单的序列模型开始介绍
了解完这些基础概念之后,就要步入正轨了,开始学习Transformer是如何处理命令的。
还是用例子来解释,开发NLP计算机界面时,假设要处理3种不同的命令
- Show me my directories please.(请给我看看我的目录)
- Show me my files please.(请给我看看我的档案)
- Show me my photos please.(请给我看看我的照片)
可以用下面这个流程图(马尔可夫链)来表示,箭头上的数字表示下一个单词出现的概率。
![](https://p0.ssl.img.360kuai.com/t0185d211fc034de0db.jpg)
接下来解释将马尔可夫链转换为矩阵形式了,如下图。
每一列代表一个单词,并且每一列中的数字代表这个单词会出现的概率。
因为概率和总是为1,所以每行的数字相加都为1。
![](https://p0.ssl.img.360kuai.com/t0130bc86f4d2facd28.jpg)
以my为例,要想知道它的下一个单词的概率,可以创建一个my的独热向量,乘上面的转移矩阵便能得出了
![](https://p0.ssl.img.360kuai.com/t0153baf6ca3dfa6e4e.jpg)
再然后,作者又详细介绍了二阶序列模型,带跳跃的二阶序列模型,掩码。
至此,关于Transformer,已经学到了最核心的部分,至少已经了解了在解码时,Transformer是如何做的。
不过了解Transformer工作的原理和重新建造Transformer模型之间还是有很大差距的,后者还得考虑到实际情况。
因此教程中还进一步展开,作了更大篇幅的学习教程,包括Transformer最重要的注意力机制。
换句话说,这个教程就是从最基础的东西教我们重新构建一个Transformer模型。
更加具体内容就不在这里一一列出了,感兴趣的朋友可以戳文末链接学习。
目录先放在这里,可以根据自己的基础知识选择从哪个阶段开始学起:
1、独热(one-hot)编码
2、点积3、矩阵乘法4、矩阵乘法查表5、一阶序列模型6、二阶序列模型7、带跳跃的二阶序列模型—-分割线—-(学完上面这些,就已经把握住Transformer的精髓了,不过要想知道Transformer,还得往下看)8、矩阵乘法中的注意力9、二阶矩阵乘法序列模型10、完成序列11、嵌入12、位置编码13、解除嵌入14、softmax函数15、多头注意力机制16、使用多头注意力机制的原因17、重现单头注意力机制18、多头注意力块之间的跳过连接19、横向规范化(Layer normalization)20、多注意力层21、解码器堆栈22、编码器堆栈23、编码器和解码器栈之间的交叉注意块—-又一个分割线—-(如果你学到这里,那说明Transformer你已经掌握得差不多了,后面讲的东西就是关于如何让神经网络表现良好了)24、字节对编码(Byte pair encoding)作者介绍
Brandon Rohrer,目前是Linkedin的一名机器学习工程师,曾先后在微软,Facebook担任首席数据科学家。
在Facebook工作期间,他建立了一种更精确的电网映射预测模型,以评估全球的中压电网的连通性和路由。
![](https://p0.ssl.img.360kuai.com/t01f3ffa376e60024dc.jpg)
写教程算是Brandon的一大爱好了,目前他所有的教程都不断更新在他的新书《如何训练你的机器人》中,帖子的跨度从职业发展到各种编程工具的介绍。
![](https://p0.ssl.img.360kuai.com/t01d143fa61fd38770e.jpg)
传送门:https://e2eml.school/transformers.html#softmax
更多教程:https://e2eml.school/blog.html— 完 —
量子位 QbitAI · 头条号签约
","force_purephv":"0","gnid":"93e641781357c54b3","img_data":[{"flag":2,"img":[{"desc":"","height":"602","title":"","url":"https://p0.ssl.img.360kuai.com/t019c7470285c259474.jpg","width":"1026"},{"desc":"","height":"98","title":"","url":"https://p0.ssl.img.360kuai.com/t0102b4b20ea1a0a215.jpg","width":"904"},{"desc":"","height":"650","title":"","url":"https://p0.ssl.img.360kuai.com/t01db7b46822def9a44.jpg","width":"962"},{"desc":"","height":"744","title":"","url":"https://p0.ssl.img.360kuai.com/t0119229db0c33779a5.jpg","width":"948"},{"desc":"","height":"750","title":"","url":"https://p0.ssl.img.360kuai.com/t01b588beb6f84d918c.jpg","width":"662"},{"desc":"","height":"756","title":"","url":"https://p0.ssl.img.360kuai.com/t017b857167de43598a.jpg","width":"1012"},{"desc":"","height":"616","title":"","url":"https://p0.ssl.img.360kuai.com/t01833e9fc496d918eb.jpg","width":"833"},{"desc":"","height":"411","title":"","url":"https://p0.ssl.img.360kuai.com/t0185d211fc034de0db.jpg","width":"1080"},{"desc":"","height":"634","title":"","url":"https://p0.ssl.img.360kuai.com/t0130bc86f4d2facd28.jpg","width":"738"},{"desc":"","height":"340","title":"","url":"https://p0.ssl.img.360kuai.com/t0153baf6ca3dfa6e4e.jpg","width":"750"},{"desc":"","height":"800","title":"","url":"https://p0.ssl.img.360kuai.com/t01f3ffa376e60024dc.jpg","width":"800"},{"desc":"","height":"743","title":"","url":"https://p0.ssl.img.360kuai.com/t01d143fa61fd38770e.jpg","width":"1080"}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"hbase","pub_time":1674275580000,"pure":"","rawurl":"http://zm.news.so.com/22fd9c0391b602ef16b0bcc1ea60e7af","redirect":0,"rptid":"031f360bfffe46fe","s":"t","src":"量子位","tag":[{"clk":"ktechnology_1:facebook","k":"facebook","u":""}],"title":"学完这个教程,小白也能构建Transformer,DeepMind科学家推荐
养保颖2807东方神起 有什么好听的韩文歌.. -
徒洪钱13947305889 ______ 我相信, hiyaya夏日. 后来像holding back the tears, I'll be there, don't say goodbye, 遥望晚霞, on&on,one, tonight, 问候, 魔法之城,...
养保颖2807求好听的日韩歌曲 -
徒洪钱13947305889 ______ 韩:命运(why)、QUETIONS(河佑善) yesterday(朴慧京)、火花(高耀太)、小女之梦(EG)、两个人(蔡妍)、因为是女子(KISS)、爱情公式(高耀太)、tell me(wonder girls)、Talk play love( AnyBand)、 谎言( BigBang) ...
养保颖2807英语翻译 -
徒洪钱13947305889 ______ 大哥你给的段落少了好多东西啊 One feature of Shaw''s characterization is that he makes the...
养保颖2807高中 mind 短语 -
徒洪钱13947305889 ______ mind [maInd; maind) 《源自古英语“记忆,思考”的意思》名词1 (指与身体相对,具有思考、意志等功能的) 心,精神 ~ and body 身心 a strong [wєak] ~ 坚强 [脆弱] 的心 a statє [framє] of ~ ( 一时的) 心情; 心境; 心态,精神状态 a ...
养保颖2807十分简单谚语 英语 -
徒洪钱13947305889 ______ 1.爱屋及乌 Love me, love my dog. 2.百闻不如一见 Seeing is believing.3.比上不足比下有余 worse off than some, better off than many; to fall short of the best, but be better than the wor...
养保颖2807请问比较有名的名言和诗句?用英语怎么说?求大神一枚啊 -
徒洪钱13947305889 ______ 英语名人名言大全100条1、Genius only means hard-working all one's life. (Mendeleyev Russian chemist)天才只意味着终身不懈地努力.(俄国化学家 门...
养保颖2807译“心灵”的英文 -
徒洪钱13947305889 ______ 简单说的话是heart 但是如果要深一层最好用soul
养保颖2807关于酒店总机面试英语问答 -
徒洪钱13947305889 ______ Q: Can you sell yourself in two minutes? Go for it. (你能在两分钟内自我推荐吗?大胆试试吧!) A: With my qualifications and experience, I feel I am hardworking, responsible...
养保颖2807跪求150条英文格言 -
徒洪钱13947305889 ______ 1. Time flies.时光易逝.2. Time is money.一寸光阴一寸金.3. Time and tide wait for no man.岁月无情;岁月易逝;岁月不待人.4. Time tries all.时间检验一切.5. Time tries truth.时间检验...
养保颖2807造句:make up one's mind to do sth -
徒洪钱13947305889 ______ Have you made up your mind about it? 关于这件事, 你拿定主意了吗? They made up their minds to sell the house. 他们决定把房子卖掉.