Finisky Garden

NLP, 软件工程, 产品设计

大模型可以仅凭指令或几个示例就能解决各种新任务,但在一些看似简单的算术或搜索任务上却表现欠佳。俗话说得好,人和动物的区别就是人可以更好地使用工具。于是,Meta AI提出了Toolformer,让LLM善假于物,通过自学使用外部工具。

Toolformer可以决定调用什么API、何时调用它们、传递什么参数及如何将API返回值融合。Toolformer以自监督方式训练,每个API仅需要几个示例。它在各种下游任务中显著提升了零样本性能,而不牺牲其核心语言模型能力。

# Toolformer: Language Models Can Teach Themselves to Use Tools

阅读全文 »

MSR使用“教科书”级的高质量数据训练了仅 1.3B 的面向代码任务的phi-1模型,在 HumanEval 和 MBPP 上取得了很高的准确率。

根据模型扩展法则,为提升模型性能,需要从增大算量和模型规模入手。这里则另辟蹊径:从数据质量出发。之前的研究证实:提升数据质量会大幅改变扩展法则趋势,能让小模型达到大模型的效果。本文则在此结论上更进一步,打破了已有的模型扩展法则,证明高质量的数据甚至可以在使用更少的数据和算量条件下超越大模型的SOTA

具体来说,用约 7B token 训练8轮,然后在少于 200M token的数据上微调得到 1.3B 的模型 phi-1

# Textbooks Are All You Need

阅读全文 »

开源的通用能力大模型越来越多,但真正有用和落地的是在某个领域专精的垂类模型。初看上去,似乎大模型仅需要少量prompt工作就可以很好地在垂类工作,可事实并非如此。不进行领域微调的通用模型可以很快地构建80分的应用,可是大部分的实用场景,需要95甚至98分的模型效果。这也是为什么在各个领域(如金融、车载、虚拟人)大家都在训练或微调自己大模型的原因。

微调这件事看上去不难,但却有很多未解问题:

  • 如何基于英文大模型继续训练一个中文大模型?
  • 垂类数据应该在预训练阶段引入,还是指令微调时引入?
  • 通用指令数据与垂类任务数据的混合比例有什么讲究?

上面的每个问题都有很多种不同的方案,但限于时间和成本,逐一实验是不可行的,AB测试也会带来额外的成本。所以有趣的事情出现了,各个玩家对自己训练时的细节都讳莫如深,自己训练的时候也都遇到过各种各样奇怪的坑。更有意思的是,即使别人提供了一些细节参考,自己在训练时未必能够复现 :-( 。

代码库:# Lawyer LLaMA

Lawyer LLaMA技术报告:# Lawyer LLaMA Technical Report

阅读全文 »

思维链采用逐步推理的方式得到最终结果,如果模型在某一步出现幻想 (Hallucination),则差之毫厘,谬以千里,后面的错误会被放大,导致错误结果。

OpenAI最近提出使用过程监督 (Process Supervision) 减少大模型幻想并提升大模型的数学推理能力,所以什么是过程监督?

过程监督 (Process Supervision) 是相对于之前的结果监督 (Outcome Supervison) 而言。众所周知,大模型基于人工反馈的强化学习部分需要用到奖励模型 (Reward Model, RM),数学推理能力是基于思维链 (Chain of Thought)。传统的奖励模型采用的是结果监督的方式,仅使用思维链的最终结果进行判别与反馈,而过程监督则是对思维链的每步推理都进行反馈。因此,过程监督是针对思维链和奖励模型的一种改进方案。

OpenAI开源了过程监督的数据集 PRM800K。论文的核心思想很直观,主要关注在实验设计。

OpenAI 博客:# Improving mathematical reasoning with process supervision

论文链接:# Let's Verify Step by Step

阅读全文 »

$ pip install torch==1.12.0
Defaulting to user installation because normal site-packages is not writeable
ERROR: Could not find a version that satisfies the requirement torch==1.12.0 (from versions: 1.0.0, 1.0.1, 1.0.1.post2, 1.1.0, 1.2.0, 1.3.0, 1.3.1, 1.4.0, 1.5.0, 1.5.1, 1.6.0, 1.7.0, 1.7.1, 1.8.0, 1.8.1, 1.9.0, 1.9.1, 1.10.0, 1.10.1, 1.10.2)
ERROR: No matching distribution found for torch==1.12.0

The root cause is that python version is too low (3.6). We need to upgrade python to a new version.

阅读全文 »

好久没出去看大好河山,五一前休假去贵州自驾游,云贵川算是都打了卡。按照惯例,还是提前简单做下攻略,本想将行程设置宽松些,后来发现贵州的大部分景点门票预订(进景区时间)都要精确到小时,才不得不把行程提前细化。

贵州的主要景点也比较分散,不过都是以省会贵阳为中心放射状排列,本次自驾主要以黔东为主。之前找到一张不错的贵州景点分布图,记不清出处了:

阅读全文 »

3月22日,NVIDIA的CEO黄仁勋与OpenAI的创始人Ilya Sutskever进行了围炉对谈,通过视频可以更好地了解OpenAI是如何走到今天,又是如何理解ChatGPT和GPT-4这些大模型的。不过毕竟是非正式访谈,思路和观点略有发散,本文提取访谈中一些有意思的观点供参考。

BTW,网上的中文完整字幕翻译对某些观点的翻译解读有误,建议看原视频。

# AI Opener: OpenAI’s Sutskever in Conversation With Jensen Huang

阅读全文 »

戴了十几年的力洛克,一年前开始走时不准,最近每天能慢上一分钟,手动上弦似乎也有些问题,总是上不满弦,怀疑与之前疫情在家总手动上弦有关系 (最初怀疑发条断了)。

距上次保养已经5年有余,天梭官方授权的店保养一次 (所谓完全服务) 约一千块,而买块新的ETA-2824-2机芯也就差不多这个价,所以再去保养显得非常不划算。老爷子年轻时玩表修表,有此家学,再加上网上有许多机芯拆解洗油点油视频,看起来也不甚困难,跃跃欲试,决定自行保养维护。

前后历时一个月才保养完毕,趟坑无数。现在看来,动手时显然低估了保养洗油的难度,加之中间遇到的诸多难题,本想从玩表的过程获取些操作的成就感,不想却收获了诸多挫败感。修完后才感叹,授权店收一千块算是良心价了 :-) 。好在最终问题完美解决,记录下保养过程。

阅读全文 »

语言模型越来越大,但更大的模型并没有显示出更强的计算和推理能力。去年Google提出了Chain-of-Thought (CoT) 的方案,通过chain-of-thought提示,让模型逐步推断,使大模型的推理能力显著提升。本文来看一下chain-of-thought的原理。

Chain-of-Thought Prompting Elicits Reasoning in Large Language Models

Language Models Perform Reasoning via Chain of Thought

阅读全文 »
0%