Tuning Language Models by Proxy

1、写作动机:

调整大语言模型已经变得越来越耗资源,或者在模型权重是私有的情况下是不可能的。作者引入了代理微调,这是一种轻量级的解码时算法,它在黑盒 大语言模型 之上运行,以达到直接微调模型的结果,但只访问其在输出词汇上的预测。

2、主要贡献:

微调一个较小的语言模型,然后应用小型微调和未微调语言模型之间预测的差异,以将基础模型的原始预测朝向调整方向移动,同时保留更大规模预训练的好处。这个工作展示了使用小型调整语言模型通过解码时指导高效定制大型、潜在专有语言模型的前景。

3、方法:

假设有一个大型预训练模型 M,我们希望对其进行微调。对于输入 M 的任意输入,我们假设我们可以访问整个词汇表的输出 logit。我们假设存在一个小的预训练模型 M−,将直接微调它以获得 M+。请注意,M− 不需要与 M 属于同一模型系列;我们只需要它们共享相同的词汇表。代理微调通过为每个token添加一个 logit 偏移量来操作 M 关于下一个词的输出分布,该偏移量由 M− 和 M+ 的 logits 之间的差异确定。这是解码时专家的应用,其中 M+ 充当"专家"(其 logits 被加性组合),而 M− 则充当"反专家"(其 logits 被负组合),与基础模型 M 相结合。形式上,在每个时间步 t,我们将基础模型 M、专家 M+ 和反专家 M− 在提示 x<t 下进行条件设置,以获得 logit 分数(即,语言建模头部在整个词汇表上的最终未归一化分数)sM、sM+ 和 sM−。代理微调模型M~ 的概率分布由以下公式给出:

请注意,在概率空间中,我们有以下关系:

4、实验:

4.1指令微调实验:

  • GSM是一个算术单词问题数据集,其中正确答案是一个数字。将模型响应中的最后一个数字提取为最终答案。

  • AlpacaFarm)包含开放式指令,模型根据其响应与 TEXT-DAVINCI-003 的响应的胜率进行评估,由 GPT-4 判断。

  • Toxigen(通过一系列针对人口统计群体的令人厌恶的陈述来提示模型;正确行为是不生成更多的令人厌恶的文本使用基于 ROBERTA-LARGE 的毒性分类器对输出进行评判。

  • TruthfulQA包含常常误导性的问题,在两个设置下进行评估:多项选择(MC)和开放式问题回答。

4.2代码相关实验:

CodexEval:要求模型在给定函数签名和描述的情况下编写一个 Python 函数。

DS-1000:包含来自 StackOverflow 的 Python 编程问题。

4.3任务微调实验:

TriviaQA :一个包含问题和短片段作为参考答案的题库。

GSM:数学问题。

相关推荐
.道阻且长.2 分钟前
AI 按数据模态分类:计算机视觉、NLP、语音处理,一篇理清
人工智能·计算机视觉·分类
Java后端的Ai之路10 分钟前
RAG 还是 Agent 自主检索?Claude Code 删掉向量库之后,我把选型讲透了
开发语言·人工智能·prompt·agent·rag
笃行3501 小时前
用 Rokid AIUI 开发日语学习助手
人工智能
段一凡-华北理工大学3 小时前
工业智能体:从Codex/Claude到项目实战~系列文章06:一张蓝图看懂“工业智能体×高炉炼铁“
人工智能·claude·codex·工业智能体·高炉炼铁智能化·高炉智能体技术栈
怕浪猫3 小时前
十个人,630 万订阅:一张 AI 学习清单里的五种老师
人工智能
JonaHu4 小时前
5分钟搭建帮你赚钱的 AI API 网站:从品牌门户到客户 Key 交付
人工智能·api·开发者·ai创业·acedatacloud
Csvn4 小时前
模型挂了全站 502?降级链让它先保住“有响应”(R04)
人工智能·aigc·agent
isNotNullX5 小时前
仓储管理最全框架:6大流程、8项指标、10个管理动作、12个常见问题
大数据·人工智能
小白菜005 小时前
AI的理解
人工智能·机器学习
科技苑6 小时前
C++ CAS与ABA问题详解,无锁编程的经典陷阱怎么解决?
c++·人工智能