模型微调完成后,你会面临一个基本问题:它表现如何?对于生成型任务,回答这个问题不像检查准确率分数那样直接。与分类问题中输出结果非对即错不同,生成文本的质量是主观且多方面的。一份摘要可能事实正确但文笔不佳。一次翻译可能直译但听起来生硬。聊天机器人的回复可能很流畅但无助于解决问题。因此,评估经过微调的生成型模型需要根据其预期功能采取周到的方法。你选择的评估指标必须反映微调任务的具体目标。一个用于总结法律文档的模型,其评判标准会与一个旨在生成创意营销文案的模型有所不同。生成型任务的种类明确评估策略的首要步骤是确定模型的主要功能。不同的任务对文本质量的不同方面有不同的侧重。文本摘要目标是生成更长文本的简洁准确呈现。评估必须衡量:忠实度: 摘要是否准确反映了源文本中的核心信息,且未引入虚假内容?简洁性: 摘要是否明显短于原文?流畅性: 摘要是否语法正确且易于阅读?这类任务的自动化评估指标通常依赖于与人工编写的“参考”摘要的词语或短语重叠度。机器翻译在这里,目标是在不同语言中传达源文本的准确含义。评估侧重于:准确性: 原始文本的含义是否得到保留?流畅性: 输出结果在目标语言中读起来是否像一个自然的句子?与文本摘要类似,评估通常涉及将模型的输出与一份或多份专业人工译文进行比较。指令遵循和问答对于这些任务,模型必须对用户的提示提供直接且正确的回复。成功的标准是:相关性: 回复是否直接回应了用户的指令或问题?正确性: 提供的信息是否事实准确?清晰度: 答案是否以清晰易懂的方式呈现?事实正确性众所周知难以自动衡量,通常需要人工审核或与已知知识库进行比较。对话式人工智能评估聊天机器人或对话代理很复杂,因为它涉及多轮交互。单个好的回复不足以衡量;整个对话必须有效。主要评估点包括:连贯性: 模型的回复是否逻辑上遵循对话历史?有用性: 模型是否成功协助用户实现其目标?安全性: 模型是否避免生成有害、偏见或不当内容?吸引力: 对话对于用户来说是否自然且具有吸引力?评估的两个支柱:自动化与人工鉴于生成型任务的多样化要求,评估策略建立在两种独特但互补的方法之上:自动化定量指标和人工定性评估。digraph G { rankdir=TB; splines=ortho; node [shape=box, style="rounded,filled", fontname="sans-serif"]; edge [fontname="sans-serif"]; subgraph cluster_auto { label = "自动化评估 (定量)"; style = "rounded,filled"; fillcolor = "#e9ecef"; fontcolor = "#495057"; node [fillcolor="#a5d8ff", color="#1c7ed6"]; rouge [label="ROUGE\n(内容重叠)"]; bleu [label="BLEU\n(N-gram 精度)"]; perplexity [label="困惑度\n(模型置信度)"]; rouge -> bleu -> perplexity [style=invis]; } subgraph cluster_human { label = "人工评估 (定性)"; style = "rounded,filled"; fillcolor = "#e9ecef"; fontcolor = "#495057"; node [fillcolor="#b2f2bb", color="#37b24d"]; likert [label="李克特量表\n(例如:流畅性、相关性)"]; ab_test [label="A/B 对比\n(偏好)"]; fact_check [label="事实正确性"]; likert -> ab_test -> fact_check [style=invis]; } ft_model [label="微调模型", shape=cylinder, fillcolor="#ffec99", color="#f59f00"]; synthesis [label="综合见解\n与迭代", shape=ellipse, fillcolor="#ffc9c9", color="#f03e3e"]; ft_model -> cluster_auto [lhead=cluster_auto]; ft_model -> cluster_human [lhead=cluster_human]; cluster_auto -> synthesis; cluster_human -> synthesis; synthesis -> ft_model [label=" 改进模型"]; }一个评估框架结合了用于持续监测的快速自动化指标,以及用于衡量实际表现的较慢、更详尽的人工评估。自动化评估指标这些算法通过将模型的输出与参考文本进行比较来计算分数。它们的主要优点是速度快和可扩展性高。你可以在数千个示例上自动运行它们,以便在模型迭代过程中获得持续一致的性能衡量。它们对于训练期间追踪进展和比较不同模型版本不可或缺。常见的自动化评估指标分为几类:基于重叠度: 这些指标,例如 ROUGE(摘要理解导向的召回评估替补)和 BLEU(双语评估替补),衡量生成文本与参考文本之间 N-gram(词语序列)的重叠度。它们是摘要和翻译的标准评估方法。基于模型: 像困惑度这样的指标衡量模型在预测下一个词元时的不确定性。它源自交叉熵损失,并且可以是衡量流畅度的有用近似指标。较低的困惑度(通常计算为 $2^{H(p,q)}$,其中 $H(p,q)$ 是交叉熵损失)表明模型对其生成文本更“有信心”。我们将在下一节介绍这些评估指标的实现方法。人工评估没有哪种自动化指标能完美捕捉生成文本的质量。输出是否听起来自然?是否真正有创意?是否事实正确?回答这些问题需要人工判断。人工评估是衡量模型表现的黄金标准,尽管它更耗时且成本更高。人工评估的常见方法包括:李克特量表: 评估人员根据量表(例如1到5分)对模型的输出在流畅性、相关性和连贯性等具体属性上进行评分。A/B 测试: 向评估人员展示来自不同模型(或一个模型与一个基线)的两个输出,并要求他们选择更优的一个。直接评估: 要求评估人员执行诸如对照来源核实输出的事实准确性,或编辑使其完善等任务。全面的评估策略会利用自动化指标进行快速、迭代的反馈,并辅以定期的人工评估,以确保模型真正实现其目标。有了这个框架,我们现在可以研究最常见定量指标的实现细节。