不管是语言转文本,还是文本转语言,都只是t方法在某一个领域的应用罢了。
不在语音上做,也可以在翻译、问答等诸多领域上去做,做什么任务只是载体。
真正重要的事情,是transformer这个方法本身,以及这篇论文的写作和理论推导。
提出残差网络再震惊世界,这个模型也仍旧归类在三大类模型的卷积神经网络里面,并没有能够超脱出来。
可t方法,则是直接成为了第四类模型,与循环网络,卷积网络和多层感知机并列,这是开宗立派的一个方法。
该文当时也被评为三年内深度学习领域最重要的一篇文章。
因而论文的写作和证明推理,要比实际的应用项目关键太多。
“原本这篇文章在写作的时候,是针对了机器翻译这样一个小的任务来写的,只是在结尾的时候提到了这种方式可以类似地扩展到图像,视频和语音领域。这次我的格局得打开,在写作的基调和宗旨当中,就要融入和各领域有关的思索和技巧。”
机器翻译说到底只有少数几个公司在关注,只针对它写作会一定程度上影响到文章的影响力。
在这次方法的讨论和论文的写作上,谷歌大脑可以说是倾巢出动了,孟繁岐首次积极地联系了多名同事参与进来,这让大家都觉得相当新奇。
不仅有伊利亚和阿里克斯等人,谷歌大脑的其他同事比如杰卡布,尼克、卢卡斯等人也被拉了进来。
“一个只基于自注意力的新网络结构?”谷歌大脑的团队当中哪有混子,只是稍微一听,就大概明白事情已经大条了。
纷纷非常兴奋地加入了进来。
此技术相当重要,因而代码框架,各种算子孟繁岐从去年底处理推荐广告算法的时候,就已经在陆续实现了。
断断续续到现在,接近半年的时间。
倒不是因为这个方法特别复杂难懂,而是这份代码需要在成百上千张显卡上高度并行运算。
在具体的实现上,每一步的优化都非常关键,要扎扎实实地写好。
作为后来chatGpt的基石,孟繁岐自然从最初就十分认真地对待。
毕竟若是速度慢了个五成,千张显卡的时间成本可就亏大发了。
“我看你这个t方法,也仍旧是编码器解码器的组合结构,和传统的办法很像啊?”
围观的同事有的刚来看到代码,还没有发现这个结构独特的地方。
通常来说,编码器将长度为N的输入编码成为长度为N的向量表示,而解码器则将该向量表示重新解码为长度为m的输出句子,这里N和m的长度可以不同也可以相同。
在编码的过程当中,整个句子是一次性给到的,全文都可以看到。但这个解码过程则是逐词进行生成,已经被生成的词也会作为输入,因此又被叫做自回归。
传统的方法当中,广泛采用了类似的策略,因此大家看到这个编码解码的结构并不意外。
“还是熟悉的风格,对多个层没有做专门的特殊设计,而是采用了完全相同的结构。”
“大道至简嘛,真正最强的方法,都不搞那些花里胡哨的。”
从残差网络开始,孟繁岐发表的重要论文就比较少专门对具体的局部进行专门的设计,而是有一种重剑无锋,大巧不工的力量感。
从思想和设计上直接获胜,不靠微调局部结构反复调整参数。
虽然同样是编码器解码器的结构,但t方法还是非常不同的,它的编码器逐渐衍生出了bERt方法,而解码器则拓展成为了Gpt结构,不过那是后话了。
开始阅读孟繁岐代码的同事们,很快就变成了问题达人,看到不大清楚的地方就马上发问。
“这里你为什么使用了这个新的层归一化,而不是去年你发布的批归一化呢?”
“我觉得语言这种数据比较特殊一些,图片我们经常统一整理成相同的分辨率,但是文本这种东西的话,有长有短,我知道一般大家会把后面加0以确保样本长度相同,方便处理。”
“但是这样做的话呢,在批次的这个维度上,归一化很有可能会产生大的波动,尤其是在小批次上。比如一长一短两个文本作为一个批次,你的均值和方差的计算就会非常不稳定。”
孟繁岐的解释通俗易懂,在场的同事基本上都瞬间理解到了重点,毕竟代码就在这里了。
“所以这个层归一化,其实只是针对样本自己的向量特征做了归一化,不管样本长短,大家的特征长度都是固定的。”
“理解了,理解了。”
“妙啊...没想到这么多东西在细节里面。”
有不少人只顾着看那些重大变动的部分,压根就没注意到这里做了什么不同的操作。
“也不只是训练,即便训练的时候没有遭遇问题,但在推理的时候,有人不讲武德,突然拿出一个超长的文本。这样一来,你的模型没有在长文本上算过均值和方差,突然面对比较突兀的输入,也很有可能出现很大的问题。”
“层归一化就不会,因为均值和方差都是在样本自己里面进行计算。”
阿里克斯则注意到了注意力机制的写法似乎和平常有些不大一样:“自注意力机制我们大概都能理解,这里为什么是多头自注意力机制呢?”
“我们希望算法模型基于注意力机制这种东西关注比较重要的内容,但同时,在模型规模较大的情况,模型如果整体关注的东西太过单一也不是什么好事。”
“拥有一定长度的文本,对比图像来说可能比较重点的内容有很多,将注意力拆分为多组,不仅能够让模型关注到输入的不同部分,同时也更方便去做并行加速。”
......
谷歌大脑十位左右的研究员聚在这里,越讨论越觉得这方法不一般。
不仅宏观层面上多了方便并行、结构简洁、长距离关联能力强等特点,模型内部孟繁岐的各种实现那都是深思熟虑,非常直击要害的。
给人的感觉,就是千锤百炼打磨过很久。
“好家伙,你不是做图像类任务的吗?怎么在序列类型的数据上也这么厉害?”
在场的诸人都了解孟繁岐这一路的学术成果,千分类、检测、生成、人脸甚至前几周刚做的医疗方面,乃至于阿尔法围棋也算是另一种性质的图像。
而现在,这可是直接跨行做到语音和语言这方面来了。
关键是你来就来吧,怎么一来就掀大家桌子?
谷歌大脑这边的人倒还好,至少自己也积极参与了进来。
一群人聚在一起,研究的声势是浩浩荡荡,很快隔壁专门的语音组就听到了风声。
“卧槽?这小子怎么跑我们的领域来了?真是饶了我们吧...”
“都说图像,语言和推荐是三大主流方向,他怎么就盯上我们语音这个小领域了呢?我们这小庙可容不下你这尊大佛啊!”
“别提了,推荐广告组被这小子闹了一出,现在做出什么东西来领导都觉得不足为奇。出了业绩部门副总是舒服了,可底下小兵几年之内怕是升职加薪都没戏喽...”
偶然走漏的风声毕竟消息内容有点偏差,他们此刻还不知道,孟繁岐哪里是要去语音领域抢一小口饭吃。
他是要把整个序列类型的解答范式都给它直接统一了!