原创:谭婧
没有人想等待,没有人想落伍。
新鲜论文时兴火热,成为大模型发展迅猛的标志之一,人们用“刷论文”这个游荡意味的动词替代另一个颇为严肃的动作,“读论文”。
论文被当作“教材”和“新知识”,在arXiv网站刷论文成为日常。
不止于此,论文读者也从科研人员迅速扩大到投资人、投研、创业者、AI从业者和科技媒体。
那些急切想入行的人“咸欲学死”;
那些没用上大模型的人“怏怏不悦”;
从甲方到乙方,人们把“不甘”写在脸上,有些甚至从“稳重型”变成“饥渴型”,从“观望型”变成“上手型”。
北京西北方向某个国产智能云厂商已将“硬件+业务指标”捆绑标价,成了大模型的报价方式;某外资云厂商的解决方案架构师(Solutions Architect)被甲方“有请做客”,亲身示范:如何部署开源大模型LLaMA。
因开源条款的限制,LLaMA不能商用。甲方不想再等,至少学起来,哪怕“部署”仅仅停留在“示范”环节。
来自美国OpenAI微软谷歌等等机构的论文以其高度的领先性为大家所追捧;开源大模型入场后,便可以在开源模型上做测试做研究,以此来增加对大模型及其全套系统的理解。
我最翘盼之事便是和有亲身经验的科学家深聊,和训练过大模型的科学家深聊。
有幸,我和武汉人工智能研究院(下文简称“武智院”)副院长张家俊博士聊了聊,同时,他也是中国科学院大学的教授。
武智院和中科院自动化所共同研发了“紫东太初”大模型,这背后有多篇论文值得细读。而作为其中多篇高质量论文的作者兼指导老师,张家俊教授也非常适合回答这些问题。
在深入论文之前,我向张家俊博士提的第一个问题是:
“做出和GPT-4竞争的大模型,和发表领域高质量学术论文,这两件事情之间是一种什么关系?”
这既是一个学术问题,也是一个应用问题,而且解释和理解都需要费一番功夫。
他谈到:“在大模型技术领域,论文发表在顶级学术会议或者学术期刊,大多算法实现的性能是在某一个数据集(一般规模较小)上,换成大模型、大算力,大数据,论文思路和设计未必奏效。”
他给我打了一个比方:
我们把这种高质量的论文,看做铁人三项中的一项,游泳或者自行车。又或者说,三项不够,“铁人多项”才够。
“铁人多项”中的每一项都充满挑战,每一篇顶会论文也不会轻易得来。
而GPT4大模型作为史上最智能的AI软件,它是一个复杂系统工程。这就好比,GPT4是由铁人多项运动组成的长途比赛。
大模型要求的核心技术数量多,工程难度大。
他的观点是,大模型并不是靠论文做出来的,但是,也离不开论文。
这些经典论文以及开源大模型的论文和代码,对大模型工程已然非常重要。造出大模型,或者说用工程实践出大模型,这件事情已经无法离开经典论文,极少有人从零开始,从头到尾地跑出来大模型。
人们用论文里的思想,用开源的代码复现,或者再加一些自己的代码,微调之后,最终获得自己的大模型。
他谈道,发表大模型领域的高质量论文,好比在铁人运动某一项专项锻炼,在论文中实验并验证出行之有效的思路。
然而,论文并不能照搬到“造大模型”这件事,而是积累经验,以及增加对大模型复杂工程的理解。
或者,你千辛万苦地发表一篇高质量论文,对你造大模型这件事情的帮助可能是“0”。
从这番比喻,可得知:
哪怕是对大模型有“任何进一步”的理解,都不是一件简单的事情。甚至可以用上“进一寸,有一寸的欢喜”这样的散文式的说法。也许很多耗尽脑力和体力的努力根本没有用,甚至是冤枉路,回头路。
实现复杂工程这件事,既艰难,又残酷。让人又爱又恨的是,论文几乎日日新。
大模型浪潮之下,人们更重视论文时效性,而不是论文权威性。美国康奈尔大学维护的arXiv网站在这个时候显示出独特的意义。
很多经典论文也发表在arXiv网站上,所有人都想加快论文的“问世”速度,arXiv网站包揽了经典与速度,这让其江湖地位无人能比。
这个学术论文网站承担了一种“成果速递”的角色,人们追求“步履如飞”,而不是“稳重安详”。“更快一步”而不是经过学术规范之后的“更完美一步”。
张家俊博士谈到:“同样的做法,武智院的BigTrans这篇论文也是发在arXiv网站上。”
武智院BigTrans:让大型语言模型拥有超过100种语言能力
他强调:“武智院的BigTrans这篇论文并没有追求学术思路(idea)的创新,在当前的形势下,我认为集成创新和应用创新也非常重要。学术期刊在评审论文的标准和大模型工程实践里的创新都有其意义,是两个完全不同的方向。”
学术思路的创新对论文发表有效,在大数据,大规模参数量的情况下很可能无效,造大模型是综合性的要求。
言归至此,我们来细读论文。
"
第一篇论文
论文标题:
AAAI-2022: Parameter Differentiation based Multilingual Neural Machine Translation
论文发布时间:2022年
论文介绍:
大语言模型往往需要处理多种语言多个任务,各语言各任务之间如何在模型中共享参数是一个非常关键的问题。我们以多语言翻译大模型为例,提出一个新颖的基于参数分化的方法,该方法允许模型在训练的过程中决定哪些参数应该是语言特定的。
受到细胞分化的启发,在我们的方法中,每个通用的参数都可以动态分化为语言特定的参数。我们进一步将参数分化准则定义为任务间梯度相似性。如果一个参数上不同任务的梯度出现冲突,那么这个参数更有可能分化为语言特定的类型。在多语言数据集上的实验表明我们的方法相比于基线方法在参数规模增加很少的前提下取得了显著提升。分析实验进一步揭示了我们的方法生成的参数共享策略和语言学特征的相似性具有紧密的关系。相关工作发表于国际人工智能顶级会议AAAI-2022。
"
张家俊教授
武汉人工智能研究院副院长
Transformer已经成为大模型基础性结构,是一座值得挖掘的“金矿”。把Transformer理解深、使用好,以及克服其不足,会对大模型工作有所启发。因此,AI科学家们一直在探讨和挖掘Transformer的价值。第一篇论文作者们提出多个任务共用一套Transformer的参数的方法,也就是模型共享参数。
首先,不同任务的模型之间既有相似性,也有差异性。相似性方面,比如说,自然语言处理中机器翻译和智能摘要是两个不同的任务,但也有共同点,都要先理解,再生成一段文字内容。差异性方面,比如说,会有一部分参数为智能摘要任务所独有。
为什么做大模型要做共享参数?
没有共享参数,那么大模型就失去了通用能力。缺陷会有很多,用一个模型处理翻译任务,再用另一个模型处理视觉任务,一个任务一个模型导致资源浪费严重。不止于此,“共享参数”本质上可以理解为任务之间的知识迁移。很多任务之间有共通性,没有参数共享那就无法实现知识迁移,例如翻译做得好会迁移到摘要。
模型之间既然存在参数共享,就会存在共享程度多寡的区别。单模态的模型之间,可能参数共享多一些。不同模态的模型之间,可能共享参数会少一些。实际上,目前还没有一个衡量标准去测量不同任务之间的差异化,但是这种测量却很有价值。
论文作者们在解决:如何根据任务之间的相似性,决定哪些参数共享,哪些参数不共享?论文作者们想用数学方法度量差异化,进而想把共享参数这件事情做好。在“做好”这个目标里,存在一个“平衡点”:保证模型的性能好的情况下,希望做到参数尽量多的共享。
"
第二篇和第三篇论文
论文标题:
ACL-2021: Attention Calibration for Transformer in Neural Machine Translation
IEEE/ACM TASLP-2022: Attention Analysis and Calibration for Transformer in Natural Language Generation.
论文发布时间:2021年
论文介绍:
注意力模型(Attention Mechanism)现已是Transformer模型的一个核心结构,其可以根据当前的解码状态,动态地生成一个注意力权重向量,分别对应于不同的输入词语,从而实现有选择性地关注不同的输入词语。然而,现有的研究表明注意力模型不能准确地关注到和当前输出最相关的输入。考虑到注意力机制的性能直接影响Transformer模型的最终效果,特别是在自然语言生成方面的性能影响,我们提出了一种基于Transformer注意力机制校正的自然语言生成方法,使注意力机制更关注对模型输出有影响的输入词语。
首先,该方法引入了基于掩码的微调模型,其通过观察降低某些输入词语的注意力权重后模型输出的变化,自动评估不同的输入对当前输出的影响大小。紧接着,根据微调模型学习到的影响大小,适当增加影响力大的输入词语所获得的注意力权重。为了将校正后的注意力分布融入原有注意力分布中,该方法提出了三种融合方式:固定权重加权、门控机制、退火算法。
实验表明,所提方法能够有效地提升机器翻译、自动摘要等自然语言生成的性能。通过分析可以发现:经过校正后的注意力权重分布在低层更加分散,在高层更加集中,且熵较大的注意力权重更需要被校正。该工作发表于自然语言处理顶级会议ACL-2021和语音语言国际著名期刊IEEE/ACM TASLP-2022。
(这两篇论文是针对一个问题的系列工作)
"
张家俊教授
武汉人工智能研究院副院长
大模型GPT生成文字的能力的原理是用上文信息作为条件,预测接下来不同词语出现的概率分布。GPT是Transformer模型中的Decoder。Transformer模型里最重要的,最核心的部分就是自注意力机制。简单解释为:注意力的大小就决定了“输入对输出的贡献”。也就是,“输入”对于模型生成(输出)内容的贡献有多大。这个事情好比读故事的时候,猜测故事的结尾,有一种方法是定位剧中哪个角色会对故事结局起到关键性作用。
这是一种什么状态呢?一种在不能确定的情况下,尽量地找最大的确定性。
因为模型生成词语是概率问题。比如,文章摘要是要把文章中重要部分提炼出来。所以,输出文字应该体现输入文章中最重要的部分。
旧方法相当于,谁重要给谁权重打高分。分数决定重要性。具体的旧式计算“分数”的方法是计算输入的注意力权重的分布。这个方法依赖权重,用权重来判断重要性。进一步讲,权重高,我们认为对输出起到了重要作用,对输出贡献比较大,反之亦然。可惜,模型输出可能不可信。如此这般就推翻了“分数”方法论的有效性。所以,论文作者就采用了一种方法试图从根本上去发现哪些输入对输出起关键作用。
新方法是,直接定位哪些部分对于“输出”重要。我们叫做“掩码”的方式。因为注意力机制没有体现出“输出”的重要性,所以需要校正。让这个机制 “找到真正影响故事结局的关键人物”。
这里的掩码是什么意思呢?通常所说的掩码,是把输入的某一个词拿掉,再让模型去预测“被拿掉”的词。这里掩盖这个动作依然发生,不同之处在于,将掩盖前后的输入和输出做对比,观察变化有多大?变化小,作用小。变化大,则作用大。假如只掩盖10%的字词,结果前后内容对比,变化很大。说明这10%的字词很重要。说到底,这篇论文的重点还在于提高注意力机制的性能,提高Transformer的性能。
实际上,虽然用同样的方法,但是可能在不同任务上,可能效果也不一样。论文作者只是在两种自然语言处理的生成任务上做了实验。若要扩展到所有任务,工作量还很大。
"
第四篇论文
论文标题:
ICASSP-2023: Adapter Tuning with Task-aware Attention Mechanism
论文发布时间:2023年
论文介绍:
大语言模型参数高效微调在下游任务迁移时只微调插入在大语言模型(LLM)中的简单前馈层,尽管其目标是学习与任务相关的表达,但其输入仍来自与任务无关且固定的多头注意力(MHA)模块,导致在各种下游任务中未充分利用上下文信息。直观地说,MHA应该依赖于任务,并且可以在不同的下游任务中关注不同的上下文。因此,我们提出了任务感知注意力机制(TAM)来增强大语言模型参数高效微调算法。
具体地,我们首先利用依赖于任务的参数高效微调模块生成每个词语的任务表示。然后,我们将任务表示应用于MHA的计算过程,使其依赖于任务信息对上下文进行聚合。为了将该方法推广到多任务场景,我们设计了具有多个特定于任务的参数高效微调架构,使用TAM来区分各种任务的上下文需求。在广泛的自然语言理解和生成任务上的实验结果证明了我们的方法在单任务和多任务场景中的有效性。此外,广泛的分析表明,生成的任务嵌入对应于任务的难易度,并捕获任务关系。相关工作发表于语音信息领域国际著名会议ICASSP-2023.
第五篇论文
论文标题:
ICASSP-2023: Unified Prompt Learning Makes Pre-trained Language Models Better Few-shot Learners
论文发布时间:2023年
论文介绍:
预训练语言模型参数规模越来越大,全参数微调的代价也越来越大,如何针对下游任务对大语言模型进行高效参数微调成为一个关键挑战。我们创新性地提出一种融合任务级和样本级信息的高效大模型微调方法,该方法能够根据不同的任务特征动态决定任务信息和样本信息对模型预测的贡献度,从而使得模型提示表示中包含任务特定信息和样本独立信息。我们在国际标准测试SuperGLUE中大量自然语言理解任务上进行了对比实验,结果表明,与现有参数高效的预训练模型微调方法相比,我们的方法在少样本情景下(仅微调0.12%的参数)获得了显著的提升,成为当前效果最好的少样本学习方法。相关工作发表于语音信息领域国际著名会议ICASSP-2023。
"
张家俊教授
武汉人工智能研究院副院长
这两篇论文都属于参数高效微调方法。
大语言模型(LLM)通常遵循“预训练+微调”的使用方法。可是模型规模一再扩大,微调成本变得高昂。于是,微调所有参数这种大手笔的做法就演化出新玩法,比如,面对特定的下游任务只微调部分参数,或者额外加一点参数等等。
LoRA是参数高效微调方法中的一种。无论是第一篇还是第二篇论文,跟LoRA是正交的关系(不依赖于特定算法)。既可以用在LoRa上面,也可以用在其他的算法上。而第二篇论文提出的方法是通用的,可以用于Adapters,Prompt tuning, Prefix tuning,LoRA。
为什么要融合任务和样本的信息呢?
下游任务由一堆样本组成。即使同属一个下游任务,但是样本之间的难易程度差异非常大。所以,论文作者把这种任务级别和样本级别的信息融合起来。
参数学习到的理应是任务的平均情况,因为参数是从所有的样本里学出来的。虽然难度在学习的时候被平均了,但是样本有其独特性。也就是说,已知样本难度的分布不同,而平均的表示,不能处理难易不同的,多样化的输入。
比如说,一个文生图模型。让它生成一只橘猫,相对比较简单。假设生成一只北京故宫延禧宫东配殿里睡觉的御猫。中国传统皇家建筑里的楼台亭阁,雕梁画栋,峻宇雕墙的生成难度较高,任务复杂。之前的模型学到的微调参数是用任务级别的平均信息,没有考虑样本差异性。
虽然同为文生图任务,但是不同的样本之间的难度差异很大,用同一套参数的话,忽视了样本之间的差异。现在的方法是:不仅告诉模型,你现在处理的任务是什么,还得告诉模型,你现在处理的样本的难易程度是什么。
模型学习到一个连续分布的提示词。在文生图这样一个任务下,生成高难度的图画,用丰富和复杂的提示词。简单的图画,用少量,简短的提示词。这属于人类提示词工程师专业领域的工作。但是,论文作者们想自动学习,做到简单的任务,学习简单提示词;复杂任务,学习复杂提示词。
考虑越全面越细致,且方向正确,让模型获得了更好的性能。
谭婧
亲爱的数据
这次解读的五篇论文,前三篇论文在探索模型结构,后两篇论文考虑大模型如何高效应用。
未完待续,转发后,先去收藏夹里吃灰吧。或者网不好,模型分片多的时候再看。
One More Thing
更多阅读
AI大模型与ChatGPT系列:
1. ChatGPT大火,如何成立一家AIGC公司,然后搞钱?
2. ChatGPT:绝不欺负文科生
3. ChatGPT触类旁通的学习能力如何而来?
4. 独家丨从大神Alex Smola与李沐离职AWS创业融资顺利,回看ChatGPT大模型时代“底层武器”演进
5. 独家丨前美团联合创始人王慧文“正在收购”国产AI框架OneFlow,光年之外欲添新大将
6. ChatGPT大模型用于刑侦破案只能是虚构故事吗?
7. 大模型“云上经济”之权力游戏
8. 云从科技从容大模型:大模型和AI平台什么关系?为什么造行业大模型?
9. 深聊丨第四范式陈雨强:如何用AI大模型打开万亿规模传统软件市场?
10. 深聊丨京东科技何晓冬:一场九年前的“出发”:奠基多模态,逐鹿大模型
AI大模型与论文系列:
1.开源“模仿”ChatGPT,居然效果行?UC伯克利论文,劝退,还是前进?
漫画系列
1. 是喜,还是悲?AI竟帮我们把Office破活干完了
2. AI算法是兄弟,AI运维不是兄弟吗?
3. 大数据的社交牛气症是怎么得的?
4. AI for Science这事,到底“科学不科学”?
5. 想帮数学家,AI算老几?
6. 给王心凌打Call的,原来是神奇的智能湖仓
7. 原来,知识图谱是“找关系”的摇钱树?
8. 为什么图计算能正面硬刚黑色产业薅羊毛?
9. AutoML:攒钱买个“调参侠机器人”?
10. AutoML:你爱吃的火锅底料,是机器人自动进货
11. 强化学习:人工智能下象棋,走一步,能看几步?
12. 时序数据库:好险,差一点没挤进工业制造的高端局
13. 主动学习:人工智能居然被PUA了?
14. 云计算Serverless:一支穿云箭,千军万马来相见
15. 数据中心网络:数据还有5纳秒抵达战场
AI框架系列:
1.搞深度学习框架的那帮人,不是疯子,就是骗子(一)
2.搞AI框架那帮人丨燎原火,贾扬清(二)
3.搞 AI 框架那帮人(三):狂热的 AlphaFold 和沉默的中国科学家
4.搞 AI 框架那帮人(四):AI 框架前传,大数据系统往事
注:(三)和(四)将会收录入即将出版的图书,书名为《我看见了风暴》。