Self-Taught Evaluators - Meta推出的新型模型评估方法
发布于 2024-10-21 · Self-Taught Evaluators是一种新型的模型评估方法,基于自我训练的方式提高大型语言模型(LLM)的评估能力,无需人工标注数据。从未经标记的指令开始,用迭代自我改进方案生成对比模型输出。用LLM作为裁判,生成推理轨迹和最终判断。
Self-Taught Evaluators是什么
Self-Taught Evaluators是一种新的模型评估方法,靠自我训练来提升大型语言模型(LLM)的评估能力,不需要人工标注数据。它从未经标记的指令出发,用迭代自我改进的方案生成对比用的模型输出,再让LLM当裁判,产出推理轨迹和最终判断,每轮迭代都重复这套流程,用改进后的预测来训练模型。实验里,基于Llama3-70B-Instruct模型的评估准确性从75.4提升到88.3,在多数投票的情况下达到88.7,超过GPT-4等常用的LLM裁判,和用人工标注数据训练的顶级奖励模型性能相当。
Self-Taught Evaluators的主要功能
- 生成对比模型输出:从未经标记的指令出发,按提示生成质量不同的模型响应对。
- 训练LLM作为裁判:用LLM产出推理轨迹和最终判断,评判哪个响应更好。
- 迭代自我改进:每轮迭代都用当前模型的判断来标注训练数据,再微调模型,让模型持续自我改进。
- 评估模型性能:在RewardBench这类标准评估协议上考察模型的准确性,并与人类评估的结果做对比。
Self-Taught Evaluators的技术原理
- 初始化:前提是能拿到大量人类编写的用户指令,以及一个初始的种子LLM。
- 指令选择:用LLM给指令分类,挑出有挑战性、分布也平衡的指令子集。
- 响应对构建:给每条选中的指令生成偏好数据,包含两个响应(优选和非优选),按提示生成,并保证非优选响应的质量比优选响应低。
- 迭代训练:分成判断注释和模型微调两步。当前模型生成推理轨迹和判断,判断正确就把示例加进训练集,再用这些数据微调模型,下一轮迭代用的就是更新后的模型。
Self-Taught Evaluators的项目地址
- GitHub仓库:https://github.com/facebookresearch/RAM/tree/main/projects/self_taught_evaluator
- HuggingFace模型库:https://huggingface.co/datasets/facebook/Self-taught-evaluator-DPO-data
- arXiv技术论文:https://arxiv.org/pdf/2408.02666
Self-Taught Evaluators的应用场景
- 语言模型开发:开发新的大型语言模型(LLM)时,Self-Taught Evaluators可以评估并优化模型的输出质量,让生成的文本符合预期标准。
- 自动化内容评估:在新闻机构、出版业、社交媒体平台这些内容生产领域,它可以用来自动评估内容的质量和准确性,让内容审核效率更高。
- 教育和学术研究:在教育领域,Self-Taught Evaluators可以当辅助工具,评估学生的写作作业或研究论文,给出反馈和改进建议。
- 客服和技术支持:在客户服务场景里,用它评估自动回复系统的质量,保证回复既准确又有帮助,客户满意度也能跟着提升。
- 编程和代码生成:在需要代码生成和评估的场景里,Self-Taught Evaluators可以对生成的代码片段做质量评估,帮开发人员把代码改得更好。






0 条评论
暂无评论,来抢沙发。