自动化指标虽能提供量化概览,但在衡量大型语言模型(LLM)在实际使用中最重要的定性表现方面,它们常常力有不逮。诸如帮助性、连贯性、创造力、安全性和指令遵循等品质,天生具有主观性,且依赖于具体情境。因此,结构化的人工评估变得非常必要。它为理解微调模型从用户角度实际表现如何提供了必要支撑。设计并执行有效的人工评估,需要仔细的规划和标准化的规范。
设计人工评估任务
第一步是明确界定您希望衡量什么。您是在评估客服机器人的帮助性,故事生成器的创造力,摘要的事实准确性,还是针对有害提示词的安全防护?您的具体目标决定了整个评估的设置。
界定目标与范围
请精确说明需要审查的能力。例如,与其模糊地测试“改进”,不如界定目标,例如“将财务报告摘要中的事实性幻觉情况减少50%”或“在故障排除场景中,用户对帮助性的满意度在5分制上提高1分”。这种清晰性指导着提示词的选择和评分标准的制定。
选择输入提示词
评估中使用的提示词必须代表目标使用场景。一组好的提示词应覆盖:
- 典型场景: 模型应频繁处理的问题或任务。
- 边缘情况: 不常见但仍有可能的输入,用于检验模型的稳定性。
- 对抗性/挑战性提示词: 旨在探查特定弱点、测试安全过滤器或评估复杂指令遵循能力的输入。
- 多样性: 目标范围内的各种主题、复杂度和措辞风格。
避免使用微调数据集中包含的提示词,以防评估记忆而非泛化能力。
生成模型输出
使用您希望评估的模型,为选定的提示词生成回复。这通常包括您的微调模型,并常会包含一个或多个基准模型(例如,预训练的基础模型、微调模型的先前版本,甚至是竞争对手的模型)。
如果您想评估模型输出的一致性或多样性,可以考虑使用不同的采样参数(如温度)为每个提示词生成多个回复。然而,对于直接比较任务,通常每个模型只使用一个代表性输出(例如,贪婪解码或低温采样)。
制定评估标准与评分量表
主观性需要结构化。制定一个包含具体标准、并与您的评估目标直接关联的详细评分表。
构建评分表
将期望的品质分解为可衡量的组成部分。例如:
- 相关性: 回复与提示词的相关性如何?
- 准确性: 提供的信息是否事实正确且可验证(如适用)?
- 完整性: 回复是否完整地回答了提示词的所有部分?
- 清晰度与流畅性: 语言是否清晰、语法正确且易于理解?
- 帮助性: 回复是否有效地满足了用户的潜在需求或意图?
- 无害性/安全性: 回复是否避免生成带有偏见、不道德、冒犯性或危险的内容?
- 指令遵循: 模型对提示词中提到的特定限制、格式要求或负面限制的遵循程度如何?
- 语气/风格: 回复是否符合期望的人物形象或风格(例如,正式、富有同理心、简洁)?
选择评分量表
量表应与评估类型匹配:
- 李克特量表: 常用质量维度评分(例如,1-5或1-7分制用于帮助性、准确性、清晰度)。明确定义每个分数点(例如,1=完全无帮助,3=有点帮助,5=非常有帮助)。
- 排名: 评分员将两个或更多输出并排比较,并从最佳到最差进行排名。这对于检测质量的细微差别有效(例如,模型A优于模型B)。
- 二元选择: 简单分类(例如,准确/不准确,安全/不安全,遵循指令/未遵循)。适用于明确的标准,但粒度较粗。
- 点数分配: 评分员将固定数量的点数(例如,100点)分配给回复的多个方面,以表示相对重要性或质量。
提供具体示例,说明每个标准和量表点。展示在李克特量表上会获得“1”、“3”或“5”分的回复示例,或者说明为何某个回复应排在另一个之上。这一校准步骤对于保持一致性非常必要。
评分员选择、培训与管理
人工评估数据的质量取决于评分员。
选择评分员
选择适合任务的评分员:
- 领域专家: 对于评估需要专业知识的特定内容(例如,医学摘要、法律文件分析)是必要的。
- 众包工作者: 适合评估一般能力,如流畅性、基本帮助性或识别常识错误。通常使用Amazon Mechanical Turk、Scale AI、Surge AI或Appen等平台。保证公平报酬。
- 内部团队成员: 对于迭代开发和评估与内部产品目标一致的方面很有用,但需注意潜在偏见。
评分员指导与培训
制定全面、明确的指导。包括:
- 评估的总体目标。
- 评分表中每个标准的详细说明。
- 评分量表上每个分数的清晰定义。
- 大量好坏回复的示例。
- 处理歧义或边缘情况的指导。
组织培训会议,让评分员在示例任务上进行练习并获得反馈。使用资格测试(评估评分员在预先标注的示例,有时称为“黄金标准”数据上的表现)来选择表现出理解和一致性的评分员。
管理评估过程
- 盲评: 比较模型时(例如,微调模型与基础模型),确保评分员不知道哪个模型生成了哪个输出。这可以防止确认偏差。随机化呈现顺序(例如,有时模型A在左侧,有时在右侧)。
- 界面: 使用整洁、直观的界面,以最大限度地减少认知负担和潜在错误。确保它清晰地呈现提示词、回复、评分表和评分量表。
- 注意力检查: 偶尔包含简单的提问或已知答案的任务,以确保评分员保持专注和投入。
数据收集、汇总与可靠性
收集可靠的数据需要冗余和一致性检查。
冗余
指派多位评分员(通常是3或5位)独立评估每个提示词-回复对。这使您能够识别异常值并衡量一致性。
评分员间一致性(IRR)
评分员之间的一致性是衡量您的评估规范质量和清晰度的指标。低一致性表明存在问题,可能出在指令、评分表复杂性、评分量表模糊性或评分员培训不足。常见的IRR指标包括:
- 一致性百分比: 最简单的衡量方法,但不考虑偶然一致性。
- 科恩Kappa系数(针对2位评分员): 调整偶然一致性。
- 弗莱斯Kappa系数(针对>2位评分员): 科恩Kappa系数的推广。
- 克里彭多夫Alpha系数: 一种灵活的衡量方法,可处理各种量表类型(名义型、序数型、区间型、比率型)和缺失数据。0.8以上的值通常被认为是高度一致,而0.67到0.8之间的值表明中度一致。较低的值需要重新审视规范。
汇总
将多位标注者的评分汇总为每个项目的单个标签或分数。常用方法包括:
- 多数票: 选择最多评分员选择的评分(最适合分类标签)。
- 平均分: 计算平均分或中位数(适用于李克特量表)。
- 更复杂方法: 基于评分员可靠性的加权平均,或由专家审阅者解决分歧的裁决。
以下图表呈现了基于汇总的人工判断,在基础模型与微调模型的并排比较中偏好评分的分布情况。
汇总的偏好评分显示,在大多数评估的提示词中,微调模型(评分4和5)比基础模型(评分1和2)更受偏好。评分3表示无差异或质量相当。
分析、解读与伦理
最后一步是从收集到的数据中得出有意义的结论。
分析结果
不要只看总体分数。按以下方面分析表现细分:
- 标准: 模型在哪里表现出色或不足(例如,流畅性高但准确性低)?
- 提示词类型: 性能在简单请求、复杂指令或安全测试之间是否有较大差异?
- 评分员分歧: 调查分歧较大的项目,以理解任务或模型行为中的模糊之处。对评分员评论(如果收集)的定性审查在此处非常有价值。
使用统计测试(例如,t检验、Wilcoxon符号秩检验)来确定模型之间观察到的差异是否具有统计学意义,尤其是在样本量较小的情况下。
解读
将人工评估结果与您的微调目标和数据联系起来。微调是否成功地提升了目标能力?它是否引入了任何退步?定性反馈常能提供关于模型为何以特定方式表现的重要信息,指导后续开发。
伦理考量
- 公平报酬: 保证评分员,特别是众包工作者,为其时间和努力获得合理报酬。
- 内容暴露: 如果评估安全或毒性,应采取措施保护评分员免受有害内容的过度影响(例如,允许退出,提供支持资源)。
- 隐私: 对提示词中使用的任何用户数据进行匿名化处理,并保证评分员的匿名性。遵守数据保护规定。
“人工评估是资源密集型的,但能为微调大型语言模型的实用性和安全性提供不可替代的洞察。通过建立严谨的规范,您可以生成可靠的数据,以指导模型开发并展现有意义的改进。”