基础概念

这是 让 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 评估模型在通常情况下便宜,但在某些具体任务中如需获取质量更高的评估结果而聘请专家级人工标注员,那么成本会相应增加。

如何开始?


英文原文: https://github.com/huggingface/evaluation-guidebook/blob/main/translations/zh/contents/model-as-a-judge/basics.md

原文作者: clefourrier

译者: SuSung-boy

审校: adeenayakup

让 LLM 来评判 | 基础概念的更多相关文章

  1. 【Machine Learning】机器学习及其基础概念简介

    机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

  2. TCP/IP基础概念及通信过程举例

    TCP/IP基础概念及通信过程举例 出现 上个世纪60年代,由于中央集中式网络的容灾性较弱,以美国国防部为中心的一家组织研究出分组交换网络.后来为了验证分组交换技术的实用性,ARPANET出现了,并且 ...

  3. Jmeter基础之---jmeter基础概念

    Jmeter基础之---jmeter基础概念 JMeter 介绍: 一个非常优秀的开源的性能测试工具. 优点:你用着用着就会发现它的重多优点,当然不足点也会呈现出来. JMeter 介绍: 一个非常优 ...

  4. 快速入门系列--WCF--01基础概念

    转眼微软的WCF已走过十个年头,它是微软通信框架的集大成者,将之前微软所有的通信框架进行了整合,提供了统一的应用方式.记得从自己最开始做MFC时,就使用过Named Pipe命名管道,之后做Winfo ...

  5. 理解 angular2 基础概念和结构 ----angular2系列(二)

    前言: angular2官方将框架按以下结构划分: Module Component Template Metadata Data Binding Directive Service Dependen ...

  6. JavaBean 基础概念、使用实例及代码分析

    JavaBean 基础概念.使用实例及代码分析 JavaBean的概念 JavaBean是一种可重复使用的.且跨平台的软件组件. JavaBean可分为两种:一种是有用户界面的(有UI的):另一种是没 ...

  7. RabbitMQ基础概念详细介绍

    http://blog.csdn.net/column/details/rabbitmq.html 转至:http://www.ostest.cn/archives/497 引言 你是否遇到过两个(多 ...

  8. linux设备驱动归纳总结(二):模块的相关基础概念【转】

    本文转载自:http://blog.chinaunix.net/uid-25014876-id-59415.html linux设备驱动归纳总结(二):模块的相关基础概念 系统平台:Ubuntu 10 ...

  9. linux设备驱动归纳总结(一)内核的相关基础概念【转】

    本文转载自:http://blog.chinaunix.net/uid-25014876-id-59413.html linux设备驱动归纳总结(一):内核的相关基础概念 xxxxxxxxxxxxxx ...

  10. 什么是JavaScript闭包终极全解之一——基础概念

    本文转自:http://www.cnblogs.com/richaaaard/p/4755021.html 什么是JavaScript闭包终极全解之一——基础概念 “闭包是JavaScript的一大谜 ...

随机推荐

  1. fiddler限速配置&mock配置

    一.限速配置 1.开启性能选项 2.找到对应的参数入口 3.修改对应的从参数 解释下 这2个参数是如何做到限速的 4.request-trickle-delay(上传数据限制) 默认值是300,他的意 ...

  2. 使用 FastGPT 工作流实现 AI 赛博算卦,一键生成卦象图

    最近那个男人写的汉语新解火遍了全网,那个男人叫李继刚,国内玩 AI 的同学如果不知道这个名字,可以去面壁思过了. 这个汉语新解的神奇之处就在于它只是一段几百字的提示词,效果却顶得上几千行代码写出来的应 ...

  3. Centos7下Docker搭建Matomo

    1.docker安装和启动 wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repo ...

  4. uniapp对接个推推送以及模拟器调试

    uniapp 推送需要配置的内容https://ask.dcloud.net.cn/article/35622 推送流程 参考 https://blog.csdn.net/m0_67401660/ar ...

  5. 高性能计算-openmp-多线程缓存一致性(9)

    1. 背景介绍 L1 L2 cache是单核独享,L3是多核共享.如果多线程访问共享一维数组的连续元素,先读入第一个线程的L1 缓存中,其他线程访问缓存不命中需要加载,并且数据的更改后,标记为脏数据, ...

  6. npm报错error:0308010C:digital envelope routines::unsupported

    error:0308010C:digital envelope routines::unsupported 出现这个错误是因为 node.js V17版本中最近发布的OpenSSL3.0, 而Open ...

  7. JDBC性能小贴

    本文由 ImportNew - 刘志军 翻译自 javarevisited.如需转载本文,请先参见文章末尾处的转载要求. 本文收集了一些用于提升JDBC性能的方法.Java应用或者JavaEE Web ...

  8. Python:pygame游戏编程之旅四(游戏界面文字处理)

    本节讲解游戏界面中字体的处理,以在界面中实时显示当前时间.小球位置为例进行实验,具体见代码. 一.代码 # -*- coding:utf-8 -*- import os import sys impo ...

  9. Mybatis【9】-- Mybatis占位符#{}和拼接符${}有什么区别?

    代码直接放在Github仓库[https://github.com/Damaer/Mybatis-Learning ],可直接运行,就不占篇幅了. 目录 1.#{}占位符 2.${}拼接符 3.#{} ...

  10. CudaSPONGE之Python接口

    技术背景 在上一篇博客中我们介绍了CudaSPONGE的基本安装和使用方法.为了性能考虑,CudaSPONGE是基于纯CUDA C开发的,但是现在很多轮子都是Python开发的.为兼容更多的框架和平台 ...