解读 | Antonio
近期,一家以色列NLP研究机构AI21 Labs开发了一个名叫Jurassic-X的算法系统,它基于该实验室提出来的MRKL(它与miracle谐音)系统。Jurassic-X的前身是对标GPT-3的Jurassic-1,然而却克服了它们不擅于推理、更新昂贵、不能有效处理时序数据等缺点。
论文地址:https://arxiv.org/pdf/2204.10019.pdf
MRKL的全称是模块化推理、知识和语言系统(Modular Reasoning, Knowledge and Language),它试图将现有的神经网络模型,如大规模语言模型LLM,和外部知识库,以及过去流行的符号专家系统结合在一起,从而来兼顾神经模型和符号推理能力。
这一系统是针对现有的大规模语言模型的诸多缺点进行的改进。在GPT-3以及Jurassic-1等大规模语言模型进行预训练,之后应用在多个下游任务,常常有两种极端的方式:
(1)多个任务直接通过零样本学习的方式进行。这种方式无需更新任何参数,从而保证了多功能性(versatility);
(2)在每个任务上都对于大规模语言模型进行微调。这种方式不仅需要大量的资源,具有很差的迁移性,还会经常导致在一个任务微调完之后,其余任务表现得很差——灾难性遗忘(catastrophic forgetting)的困境。
基于MRKL系统的Jurassic-X则主要借鉴了类似于prompt learning的方式,来冻结大部分模型原有的参数,仅更新一部分任务相关的参数来避免上述问题。之后会对这块的方法有一个初步的介绍。
同时,仅仅依赖神经语言模型,也会有很多本质上的问题:它们对于外部知识无法高效利用,尤其对于一些时序更新的数据,例如新冠疫情最新的数据以及货币汇率等信息,它们的推理能力很弱,例如最简单的算术题(自然语言给出的)有时候都会犯错。
举例来说:
问题:在最近的一个月里,哪一家清洁能源公司有最大的份额增长?
这是一个组合的“多专家”问题:首先模型会从例如百科库WIKI接口中获取有哪些清洁能源公司,之后它会从日历中获取上个月指的是什么时候,以及从数据库中获取相应的份额增长;之后在汇总了上述信息后,它可以通过一个计算器去计算“最大的增长”,最后通过语言模型来给出答案。
要完成这些目标需要训练离散的专家系统,将他们的接口和神经网络之间进行平滑,并在不同的模块之间去选择等等。一些技术细节可以参考介绍MRKL的文章,之后会针对其中在下游任务上的训练方式做一个简要的介绍,更详细的技术细节可以参考论文。
财富杂志从商业角度分析了MRKL以及Jurassic-X反映了当代AI的四个趋势:通用性、基于LLM、混合系统、减少权重训练。
MRKL致力于仅使用单一模型解决各种各样的自然语言任务,而并不是像现阶段很多模型只能解决特定的单一任务,这是朝着通用人工智能的必经之路。例如,一个流畅的机器人对话系统不仅仅能顺畅地完成对话,还可以同时对某些话语进行情感分析。事实上,GPT-3等大规模模型已经显示出它的在多个任务上零样本学习的巨大潜力了,而大规模语言模型预训练,多个任务共享该模型进行微调早已成为研究界熟悉的训练范式了,商业上紧跟其后,也是预料之中。
对标GPT-3的LLM:Jurassic-1
尽管基于神经模型的方式获得了令人印象深刻的性能,不过GPT-3在涉及到一些哪怕是很简单的推理时也会犯一些低级错误,尤其涉及到比较复杂的语言描述,例如多个数相加;涉及到最新的消息,例如纽约现在的天气。它仅仅从过去训练好的数据中进行推断天气情况,难以迁移到新的场景下,而如果用更新的数据,则需要重新训练模型,而这需要巨大的代价。
不同专家系统之间的连接
因此MRKL使用了代表当代AI在商业角度下的第三个趋势——使用神经和符号结合的混合系统。MRKL融合了不同的模块,有些模块使用了深度学习,有些则使用符号推理模式的专家系统,例如直接从某些数据知识库中进行检索等模块,来获取更新的信息。
MRKL中一个出色的设计被称作是路由(router)的模块,它可以根据用户的问题匹配一个专家系统:例如如果问题涉及到数学,它会转向一个计算器,如果问题涉及到汇率,它会路由到一个汇率转换器,如果是天气的话,它会转到一个天气网站等等;如果路由对于问题不确定,它会先通过Jurassic-1等语言模型利用上下文推断出应该转向哪个专家模块。
MRKL还采用了prompt tuning的方式对于模型的下游任务进行更新,如上述,这种方式避免了灾难性遗忘的微调模式以及零样本学习的低性能。与传统的prompt tuning方式相比,Jurassic-X使用了更加精细的设计:(1)依赖于模型输入的prompt学习方式。(2)检索增强的prompt生成方式。(3)递归式地应用冻结了的LM模型。论文中做了更加详细的技术介绍,感兴趣的读者可以直接阅读论文。
MRKL中采用递归方式涉及prompt learning
博客中介绍了几种MRKL的应用场景举例,都是一些值得关注和实用的一些话题,涉及到方方面面可能出现在日常场景中的问题。
用人类语言去阅读和更新数据库
问题:买玫瑰味的洗发水
Jurassic-X会从人类语言中提取中关键信息,并从商店清单中去检索产品,加入到购物车的数据库中。这在智能助理,电子商务等都有应用前景。
对于当下问题的文本生成
问题:谁是当下的美国总统
Jurassic-X会融合当下及时更新的外部数据库,例如维基百科去产生更及时的数据。
数学操作
问题:公司的655400份份额被94个员工平均分配,每个员工得到多少?
Jurassic-X会通过语言模型提出去关键信息,并且应该去寻找一个“数学专家”,也就是计算器,从而得出正确结果。
组合型问题
问题:更多的人住在Tel Aviv还是Berlin?
Jurassic会将组合型问题分解为若干子问题:Tel Aviv的人口是多少?Berlin人口是多少?哪个数字更大?等,解决了每个子问题后再把它们汇总在一起。更重要的是,这样也增加了可解释性,说明了模型给出答案的依据。
天气、汇率等动态信息
问题:100美元可以换多少摩洛哥币?
Jurassic会把语言模型和一些及时更新的知识库融合在一起,从而容易获取到实践性敏感的动态信息。
透明性和可信性
问题:克林顿是否曾经当选过美国总统
这里涉及到Clinton的歧义问题,问题的答案取决于哪个Clinton,是Bill Clinton还是他的妻子。Jurassic-X可以做出更加明确、透明的回答,而其他神经模型则不行。
AI21实验室位于以色列的一家自然语言处理的研究机构;它同时也是一个商业机构,旨在将现有的NLP技术快速部署到商业应用中。创始人包括从斯坦福大学退休了的人工智能教授Yoav Shoham;一家自动驾驶公司Mobileye的创始人Amnon Shashua,以及众包平台CrowdX创始人Ori Goshen。这家公司的口号是“重构人们的读写方式,朝向更美好的未来”(reimaging the way people read and write, for the better)。
https://fortune.com/2022/04/19/ai21-labs-mrkl-ultra-large-language-models-jurassic/
https://storage.cloud.google.com/ai21-public-data/publications/MRKL_paper.pdf
https://arxiv.org/pdf/2204.10019.pdf
雷峰网雷峰网(公众号:雷峰网)