人工评估一直是评估大型语言模型(LLM)质量和准确性的金标准,特别是对于创意写作和编码等开放式任务而言。然而,人工评估速度慢、成本高,且经常需要专业知识。
Meta FAIR的研究人员提出了一种新颖的方法,称为“自学评估器”,该方法利用合成数据训练LLM评估器,无需人工标注。尽管该方法存在一些局限性,但它可能会显著提高希望构建自定义模型的企业在LLM评估方面的效率和可扩展性。
LLM评估的挑战
LLM(大型语言模型)本身常被用作评估者,在将其他模型与人类偏好对齐或在训练过程中改进自身性能方面发挥着关键作用。这对于可能存在多个有效答案的任务尤为重要,如创意或复杂指令任务。
然而,训练准确的LLM评估器通常依赖于大量的人工标注数据,这些数据的获取既昂贵又耗时。这一瓶颈成为了自我挫败的因素,阻碍了基于LLM的新应用的快速开发和部署。
“自学评估器”通过采用一种无需人工标注数据的训练方法来解决这一挑战。它建立在“LLM作为评判者”的概念之上,其中模型被提供输入、两个可能的答案和一个评估提示。作为评判者的LLM模型旨在通过生成一系列推理来得出正确的结果,从而确定哪个响应更好。
自学评估器从一个种子LLM和一个大型未标注的人类编写指令集合开始,这些指令通常可以在生产系统中找到。
首先,模型从未经整理的指令池中选择一组指令。对于每条指令,自学评估器生成一对模型响应:一个被指定为“选中”的响应,另一个被指定为“拒绝”的响应。被选中的响应设计得比被拒绝的响应质量更高。
然后,模型进行迭代训练。在每次迭代中,它会对每个示例采样多个“LLM作为评判者”的推理轨迹和判断。如果模型产生了正确的推理链,则该示例将被添加到训练集中。最终数据集由一系列示例组成,包括输入指令、一对真假答案和一个判断链。然后,模型在这个新的训练集上进行微调,生成用于下一次迭代的更新模型。
对自学评估器进行测试
研究人员使用Llama 3-70B-Instruct模型初始化了他们的自学评估器。他们采用了WildChat数据集,该数据集包含大量人类编写的指令,并选择了推理类别中的2万多个示例。他们还测试了其他数据集和任务,包括编码和字词数学问题。他们让自学流程在没有任何人工干预的情况下生成完整的答案和训练集。
实验结果表明,自学评估器在流行的RewardBench基准测试上显著提高了基础模型的准确性,经过五次迭代且没有任何人工标注的情况下,准确率从75.4%提高到了88.7%。这一性能接近甚至在某些情况下超过了使用人工标注数据训练的模型,甚至超越了某些私有前沿模型。
研究人员还在MT-Bench基准测试上观察到了类似的改进,该基准测试评估了LLM在多轮对话中的性能。
对企业的意义
这项研究促进了使用LLM在自动化循环中进行自我改进的技术趋势。这些技术可以显著降低创建高性能LLM所需的手动工作量,为更高效、可扩展的AI驱动应用的开发和部署铺平道路。
自学评估器可以为拥有大量未标注企业数据并希望在自己的数据上微调模型而无需广泛手动标注和评估的企业带来益处。它还可以提示Meta将如何利用其丰富的未标注用户生成数据集来训练和改进其当前和未来的模型。
尽管前景广阔,但自学评估器也存在局限性。它依赖于经过指令调整和与人类偏好对齐的初始种子模型。在实验中,研究人员使用Mixtral 8x22B专家混合模型作为创建初始训练数据集的种子。
企业需要仔细考虑与其特定数据和任务相关的种子和基础模型。同样重要的是要注意,标准化基准测试往往不能代表LLM的全部功能和局限性。同时,完全自动化的循环仅依赖LLM来自我评估其输出可能会陷入无意义的捷径,这些捷径会优化模型以适应基准测试,但在现实任务中却会失败。企业需要在训练和评估过程的不同阶段进行自己的手动测试,以确保模型实际上正在接近他们期望的性能。