评估你的评估结果

这是 让 LLM 来评判 系列文章的第三篇,敬请关注系列文章:

  • 基础概念
  • 选择 LLM 评估模型
  • 设计你自己的评估 prompt
  • 评估你的评估结果
  • 奖励模型相关内容
  • 技巧与提示

在生产中或大规模使用 LLM 评估模型之前,你需要先评估它在目标任务的表现效果如何,确保它的评分跟期望的任务表现一致。

注:如果评估模型的输出结果是二元分类,那么评估会相对简单,因为可使用的解释性分类指标有很多 (如准确率、召回率和精确率)。但如果输出是在某个范围内的分数,评估起来就会困难一些,因为模型输出和参考答案的相关性指标很难与分数映射的非常准确。

在选定 LLM 评估模型以及设计 prompt 之后,还需要:

1. 选择基线

你需要将选定模型的评估结果与基线对比。基线可以是很多种类型,如:人工标注结果、标准答案、其他表现良好评估模型的结果、其他 prompt 对应模型的输出,等等。

测试用例的数量不需要非常多 (50 个足矣),但必须极具代表性 (例如边缘用例)、区分性、并且质量足够高。

2. 选择评估指标

评估指标是用来比较评估结果和参考标准之间的差距的。

通常来说,如果比较对象是模型的二元分类或成对比较属性,评估指标计算起来就非常容易,因为一般使用召回率 (二元分类)、准确率 (成对比较)、和精确率作为评估指标,这些指标容易理解、且具有可解释性。

如果比较对象是模型得分与人类评分,则计算指标就会困难一些。如要深入理解可以阅读 这篇博客

总的来说,如果你不清楚如何选择合适的评估指标或者评估模型,可以参考 这篇博客 中的 图表

3. 评估你的评估结果

这一步你只需用评估模型和测试 prompt 来评估在样本上的表现,拿到评估结果之后使用上一步选定的评估指标计算分数即可。

你需要确定一个阈值来决定结果归属,阈值大小取决于你的任务难度。例如成对比较任务的准确率指标可以设为 80% 到 95%,再比如评分排名任务的相关性指标,文献中经常使用 0.8 的皮尔逊相关系数,不过也有一些论文认为 0.3 足以表明与人工评估的相关性良好。所以标准不是死的,根据任务灵活调整吧!


> 英文原文: https://raw.githubusercontent.com/huggingface/evaluation-guidebook/refs/heads/main/translations/zh/contents/model-as-a-judge/evaluating-your-evaluator.md>

原文作者: clefourrier

译者: SuSung-boy

审校: adeenayakup

让 LLM 来评判 | 评估你的评估结果的更多相关文章

  1. MOOC学习成果认证及对高等教育变革路径的影响

    MOOC是网络开放教育创新发展的产物,也是备受人们欢迎的网络学习途径.当前制约MOOC能否可持续深入发展的问题聚焦于MOOC学习成果能否得到合理的认证.MOOC学习成果认证分为非学分认证和学分认证.M ...

  2. 数据库join方式分析

    前言    不管是博客园还是CSDN,看到很多朋友对数据库的理解.认识还是没有突破一个瓶颈 ,而这个瓶颈往往只是一层窗纸,越过了你将看到一个新世界.    04.05年做项目的时候,用SQL Serv ...

  3. Scala编程--基本类型和操作

    如果你熟悉Java,你会很开心地发现Java基本类型和操作符在Scala里有同样的意思.然而即使你是一位资深Java开发者,这里也仍然有一些有趣的差别使得本章值得一读.因为本章提到的一些Scala的方 ...

  4. Scala 编程(三)基本类型和操作

    一些基本类型 值类型 范围 Byte 8位有符号补码整数(-27-27-1) Short 16位有符号补码整数(-215-215-1) Int 32位有符号补码整数(-231-231-1) Long ...

  5. tensorflow estimator API小栗子

    TensorFlow的高级机器学习API(tf.estimator)可以轻松配置,训练和评估各种机器学习模型. 在本教程中,您将使用tf.estimator构建一个神经网络分类器,并在Iris数据集上 ...

  6. 【新业务搭建】竞争情报业务规划及体系构建的思考——By Team

    竞争情报业务规划.体系构建 一.竞争情报业务定位——“做什么” 一)业务愿景.目标和原则 愿景:将情报工作融入到公司各个业务中,成为业务活动的灯塔 目标:直接支撑标杆学习(间接支撑三大战略).直接支持 ...

  7. Tensorflow在CIFAR-10构建CNN

    使用Tensorflow在CIFAR-10二进制数据集上构建CNN 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 Tensorflow机器学习实战指南 利用Tensorflow读取 ...

  8. 数据集划分——train set, validate set and test set

    先扯点闲篇儿,直取干货者,可以点击这里. 我曾误打误撞的搞过一年多的量化交易,期间尝试过做价格和涨跌的预测,当时全凭一腔热血,拿到行情数据就迫不及待地开始测试各种算法. 最基本的算法是技术指标类型的, ...

  9. 有关 CMMI

    CMMI的全称为Capability Maturity Model Integration,即能力成熟度模型集成.CMMI是CMM模型的最新版本.早期的CMMI(CMMI-SE/SW/IPPD),SE ...

  10. 分布估计算法解决TSP问题

    分布估计算法解决旅行商问题(TSP) TSP问题(Traveling Salesman Problem,旅行商问题),由威廉哈密顿爵士和英国数学家克克曼T.P.Kirkman于19世纪初提出.问题描述 ...

随机推荐

  1. log4j2 变量注入漏洞(CVE-2021-44228)

    log4j2 JNDI注入漏洞(CVE-2021-44228) 概述 本文非常详细的从头到尾debug了CVE-2021-44228漏洞的利用过程,喜欢的师傅记得点个推荐~ Apache Log4j2 ...

  2. C#生成二维码的两种方式(快看二维码)

    前言 最近在做项目的时候遇到一个需求是将文本内容生成二维码图片的,对于这个需求那就直接上手(两种方法,我比较喜欢第二种方式,往上面也是有很多的方法.这里只作为个人纪录) 方法一:ThoughtWork ...

  3. nrm安装后无法使用

    前情 在使用node.js的过程中,经常会时不是遇到有些包下载安装慢或者失败,有时可以尝试切换源来解决这类问题 坑 通过npm install nrm -g安装完nrm后运行nrm一直报错 Why? ...

  4. 【Android】谷歌应用关机闹钟 PowerOffAlarm 源码分析,并实现定时开、关机

    前言 RTC RTC 即实时时钟(Real-Time Clock),主要是功能有: 时间保持:RTC可以在断电的时候,仍然保持计时功能,保证时间的连续性 时间显示与设置:RTC可以向系统提供年.月.日 ...

  5. Winserver主副域控切换的方法

    ​查看当前的dc netdom query dc 步骤 登录主域控(PDC),例如主域控的主机名为dc01.yourdomaincontroller.com (FQDN 格式) 打开CMD命令行终端, ...

  6. ng-alain: 配置开发环境

    配置 ng-alain 开发环境 安装 1. Yarn 官方文档实际上是基于 Yarn 1 的,请从 Yarn 1 开始.在创建项目之后,可以升级到 Yarn 3. 注意:直接通过 npm 安装 ya ...

  7. 2024年1月Java项目开发指南16:用户自由选择字段查询、是否模糊查询

    我们希望用户可以自己控制是否要模糊查询 用户可以自由的选择字段去查询. 如上图,我在前端页面准备了 多选框:决定是否模糊查询.(True or False) 下拉选择框:决定要查询关键词的所属字段 输 ...

  8. 【Python】【爬虫】爬取小说5000章,遇到的爬虫问题与解决思路

    爬虫问题分析 回顾 之前写了一个爬取小说网站的多线程爬虫,操作流程如下: 先爬取小说介绍页,获取所有章节信息(章节名称,章节对应阅读链接),然后使用多线程的方式(pool = Pool(50)),通过 ...

  9. 转载 mybatis-plus配置控制台打印完整带参数SQL语句

    问题背景 通常我们开发的时候,需要联合控制台和Navicat/PLSQL等工具进行语句的拼接检查,如果只是输出了一堆???,那么将极大降低我们的效率.因此我们需要输出完整的SQL语句以便调试. Upd ...

  10. MySQL百万级数据量分页查询方法及其优化

    1. 直接用limit start, count分页语句, 也是我程序中用的方法: select * from product limit start, count 当起始页较小时,查询没有性能问题, ...