让 LLM 来评判 | 选择 LLM 评估模型
基础概念
这是 让 LLM 来评判 系列文章的第一篇,敬请关注系列文章:
- 基础概念
- 选择 LLM 评估模型
- 设计你自己的评估 prompt
- 评估你的评估结果
- 奖励模型相关内容
- 技巧与提示
什么是评估模型?
评估模型 (Judge models) 是一种 用于评估其他神经网络的神经网络。大多数情况下它们用来评估生成文本的质量。
评估模型涵盖的范围很广,从小型的特定分类器 (例如 “垃圾邮件分类器”) 到大型的 LLM,或大而广、或小而专。使用 LLM 作为评估模型时,需要提供一个 prompt 来解释对模型评分的细则 (例如:请对语句流畅度从 0 到 5 评分,0 分表示完全不可理解,…)。
使用模型作为评估工具可以对文本中复杂和细微的特性有效的评估。
例如精确匹配预测文本和参考文本的任务,只能评估模型预测正确事实或数字的能力。但要评估更开放性的经验能力 (如文本流畅水平、诗词文学质量或输入忠实程度) 则需要更复杂的评价工具。
这就是评估模型最初的切入点。
它们通常用于三大任务。
- 为生成文本打分:使用预先定义的评分标准与范围来评估文本的某些属性 (如流畅度、有害性、一致性、说服力等)。
- 成对比较:对比模型的两个输出,以选出在给定属性上表现更好的文本。
- 计算文本相似度:用于评估参考文本和模型输出的匹配程度。
注:本文目前主要关注 LLM + prompt 的评估方法。不过建议你还是了解一下简单分类器评估模型的工作原理,因为这种方法在许多测试用例中都具有稳定的表现。最近也出现了一些新的有前景的方法,例如奖励模型作为评估模型 (在 这篇报告 中提出,本指南中也简单写了一篇 文章 介绍奖励模型)。
LLM 评估模型的优劣势:
优势:
- 客观性:与人类相比,LLM 评估模型在自动化地做出经验性判断时更加客观。
- 规模化和可复现:LLM 评估模型可以在非常大规模数据上做评估,并且评估结果可以复现。
- 成本较低:与支付人工标注员报酬相比,由于无需训练新模型,只要使用现有的高质量 LLM 和 prompt 就可以进行评价任务,因此评估模型成本较低。
- 与人类判断对齐:LLM 评估结果在一定程度上与人类的判断具有相关性。
劣势:
- LLM 评估模型看似客观,实际上具有更难被检测到的 隐藏偏差,这是因为我们无法主动地发掘这些偏差 (参考 [model-as-a-judge/Tips and tricks] 章节)。此外,缓解人类偏差可以通过设计一些内容具体或统计稳健的调查问卷的方式 (这在社会学领域已有近百年的研究),而缓解 LLM 偏差的方式就没那么成熟了。另外,使用 LLM 评估 LLM 可能会产生 “回音室效应”,即潜移默化地加强了模型的固有偏差。
- LLM 评估模型虽然具有规模化优势,但同时也会生成大量的数据需要仔细检查。例如模型可以生成思维路径或数据推理,但产生的结果需要更多的分析。
- LLM 评估模型在通常情况下便宜,但在某些具体任务中如需获取质量更高的评估结果而聘请专家级人工标注员,那么成本会相应增加。
如何开始?
- 如果你想尝试设置自己 LLM 评估模型,推荐阅读由 Aymeric Roucher 撰写的 LLM 评估模型指南 ()!
一些使用工具:distilabel 代码库,它能够基于 LLM 生成和迭代数据集。Ultrafeedback 论文 中提到的方法以及相应的 教程。Arena Hard 基准实现教程。
原文作者: clefourrier
译者: SuSung-boy
审校: adeenayakup
让 LLM 来评判 | 选择 LLM 评估模型的更多相关文章
- scikit-learn 中常用的评估模型
一,scikit-learn中常用的评估模型 1.评估分类模型: 2.评估回归模型: 二.常见模型评估解析: •对于二分类问题,可将样例根据其真实类别和分类器预测类别划分为:(T,F表示预测的 ...
- 【机器学习与R语言】12- 如何评估模型的性能?
目录 1.评估分类方法的性能 1.1 混淆矩阵 1.2 其他评价指标 1)Kappa统计量 2)灵敏度与特异性 3)精确度与回溯精确度 4)F度量 1.3 性能权衡可视化(ROC曲线) 2.评估未来的 ...
- 吴恩达老师机器学习课程chapter05——评估模型
吴恩达老师机器学习课程chapter05--评估模型 本文是非计算机专业新手的自学笔记,高手勿喷. 本文仅作速查备忘之用,对应吴恩达(AndrewNg)老师的机器学期课程第十章.第十一章. 目录 吴恩 ...
- 【数学建模】day14-建立GM(1,1)预测评估模型应用
学习建立GM(1,1)灰色预测评估模型,解决实际问题: SARS疫情对某些经济指标的影响问题 一.问题的提出 2003 年的 SARS 疫情对中国部分行业的经济发展产生了一定影响,特别是对部分 疫情较 ...
- Spark Mllib里决策树回归分析使用.rootMeanSquaredError方法计算出以RMSE来评估模型的准确率(图文详解)
不多说,直接上干货! Spark Mllib里决策树二元分类使用.areaUnderROC方法计算出以AUC来评估模型的准确率和决策树多元分类使用.precision方法以precision来评估模型 ...
- Spark Mllib里决策树二元分类使用.areaUnderROC方法计算出以AUC来评估模型的准确率和决策树多元分类使用.precision方法以precision来评估模型的准确率(图文详解)
不多说,直接上干货! Spark Mllib里决策树二元分类使用.areaUnderROC方法计算出以AUC来评估模型的准确率 具体,见 Hadoop+Spark大数据巨量分析与机器学习整合开发实战的 ...
- R_Studio(cart算法决策树)对book3.csv数据用测试集进行测试并评估模型
对book3.csv数据集,实现如下功能: (1)创建训练集.测试集 (2)用rpart包创建关于类别的cart算法的决策树 (3)用测试集进行测试,并评估模型 book3.csv数据集 setwd( ...
- 吴裕雄 python 机器学习——模型选择学习曲线learning_curve模型
import numpy as np import matplotlib.pyplot as plt from sklearn.svm import LinearSVC from sklearn.da ...
- sklearn 模型选择和评估
一.模型验证方法如下: 通过交叉验证得分:model_sleection.cross_val_score(estimator,X) 对每个输入数据点产生交叉验证估计:model_selection.c ...
- 28. ClustrixDB 分布式架构/评估模型
本节描述如何在数据库中计算查询.在ClustrixDB中,我们跨节点切片数据,然后将查询发送到数据.这是数据库的基本原则之一,它允许随着添加更多节点而几乎线性地扩展. 有关如何分布数据的概念,请参阅数 ...
随机推荐
- 强化学习训练过程中的过度拟合(overfitting)
相关: A.I. Learns to Drive From Scratch in Trackmania 本文讨论的是强化学习中的过度拟合问题,要知道强化学习中的过拟合和其他的监督.无监督学习的过拟合不 ...
- PostgreSQL中将对象oid和对象名相互转换
PostgreSQL中将对象oid转为对象名 使用pg的内部数据类型将对象oid转为对象名,可以简化一些系统视图的关联查询. 数据库类型转换对应类型的oid 可以用以下数据库类型转换对应类型的oid( ...
- 共享存储ISCSI
建立共享iscsi磁盘组 资源环境 服务端:192.168.2.131 客户端:192.168.2.[110,169] 服务端磁盘: [root@centos ~]# lsblk NAME MAJ:M ...
- TAMAYA
TAMAYA 挺有意思的维护题. 题面 n个小夫坐成一排,每个小夫有一个真实值vi.小夫们有m场聚会,第i次聚会会在编号为 [li, ri] 的小夫中举办. 聚会之后,这些小夫的真实值会变为他们之中的 ...
- C# 开发的数据采集及云端监控系统
前言 推荐C#语言开发的堤坝渗透地质数据采集及云端监控系统.希望本文能够为大家提供有价值的信息和参考. 项目介绍 使用数十个 .NET 客户端控制硬件设备进行工作,采集数据并进行处理. 管理人员通过 ...
- vue前端分页多条件搜索
vue前端分页多条件搜索 fliterData() { if (this.query_syscode || this.query_version || this.query_group || Stri ...
- (Redis基础教程之十三) 如何从命令行更改Redis的配置
介绍 Redis是一个开源的内存中键值数据存储.Redis有几个命令,可让您即时更改Redis服务器的配置设置.本教程将介绍其中一些命令,并说明如何使这些配置更改永久生效. 如何使用本指南 本指南以备 ...
- 抓包工具之MitmProxy
官方文档: https://mitmproxy.org/ github:https://github.com/mitmproxy/mitmproxy 缘起: 之前使用过几个抓包工具, 例如fiddle ...
- python多版本管理软件pyenv
我们在平时的项目开发或者学习中,有可能使用不同的Python版本,大家都知道Python的版本非常多,如果我们把需要的不同版本的Python都下载到服务器上,管理起来会非常困难,多版本并存又容易互相干 ...
- npm run build命令运行后报错 npm ERR! missing script: build
打开vue项目中的package.json查看一下script的设置,是否如下图 如果是的话,那么运行打包命令的时候要运行 npm run build:prod --report