作者:兰韬
随着大模型发展的不断深入,我们越来越关注到语料质量对模型能力的影响,语料中的偏差和主观性会导致生成内容不准确或带有偏见。智能引擎事业部是阿里内部深耕多年的 AI 工程团队,为内部业务提供了完整的大模型工程体系,持续关注大模型训推性能、成本、研发范式等关键问题。本文将基于我们的思考,探讨大模型语料的复杂性及其背后的思维过程。
一、前言
人类对语言的理解,不仅仅是沟通的工具,更是感知世界的方式。20 世纪哲学家路德维希·维特根斯坦曾提出:“语言的界限即是世界的界限。”在他的观点中,语言不仅是传递信息的媒介,更是人类思想和意识的边界所在。
我们通过语言表达想法,交流信息,描述世界,思考未来。正因如此,语言成为了探索智能问题的核心。如果存在一个语言中没有的概念,我们甚至难以意识到它的存在,亦或者如果它存在我们一定会尝试对其定义,这也就保证了存在的概念一定存在于语言中。大模型的训练似乎隐隐回应了这种观点:我们通过大量语料输入模型,希望它在词与词的关联中找到人类理解的“路径”。若想让机器具备真正的智能,它们首先需要掌握的,或许就是语言。
在为大模型提供语料时,我们其实是在用人类的文本记录去构建一种模拟的智能。可以说语料的能力上限决定着模型的能力上限,语料的能力下限决定这模型的能力下限。
在这种情况下,我们有必要深度的审视语料本身。语料本身并不是一种绝对中立、无偏的载体,它是人类历史、文化和社会偏见的延伸。就像历史上出现的各种偏见和歧视被融入了文本,模型在学习这些内容时,是否也继承了其中的偏见和限制?在一定程度上,语料的缺陷和偏见可能会限制大模型“理解世界”的能力。那么,如果大模型的“世界观”源自于这些存在偏见的语料,它是否会被永久限制在语料的偏见之中?
二、认知偏差和错误内容:不完美语料的“陷阱”
在日常交流中,人类的认知过程本身并不完美,通常会受到经验、情绪和知识结构等多种因素的影响。即便人类本身很努力,依旧难以保证每条信息都准确无误。这种不完美会在语料中表现为认知偏差、误导性信息,甚至是错误结论。一旦这样的内容被大模型吸收,便可能“传染”到模型生成的内容中。
举个例子,曾经在知乎上流行过一个“数学陷阱”问题:
在区间 [−0.5, 0.5] 内所有数加起来的和是多少?
很多人,包括一些未经严谨训练的大模型,都会给出答案“0”。乍看之下,这似乎符合直觉,因为在 [-0.5, 0.5] 区间内,正负数的分布对称,容易误导人们认为它们会相互抵消。然而从数学角度来看,这一答案是没有意义的,因为在连续区间内的实数个数是不可数的,它们的和在传统意义上是无法定义的。这一“错误”揭示了日常直觉和专业知识体系之间的差异:我们常常会不自觉地用一种简单化的方式理解复杂问题,导致偏差。而当这种直觉化的错误成为语料的一部分,并用于训练大模型时,模型可能会在涉及类似话题时产生误导性答案。
这种偏差不仅仅出现在数学领域,更普遍存在于日常推理中。例如,假设有人身边的几个朋友借钱不还,他可能会因此认为“大多数人借钱不还”。这是典型的过度归纳,即用少数的个例经验推断全局,忽视了更广泛的数据。这样的错误判断在认知心理学中称为“可得性偏差”:人们更倾向于根据容易回忆起来的信息作出判断,而不是基于全面、客观的数据。
一旦基于这类认知偏差的内容被文字化发表出来,成为了大模型训练数据的一部分,模型就可能从中学到不准确的结论。在接触到类似话题时,模型会更倾向于给出片面的答案或带有偏见的建议。这种偏差并非源于模型本身的“失误”,而是源于语料数据中的偏差和思维陷阱。事实上,正是因为训练数据中的“认知盲区”被模型吸收后再现出来,才使得大模型看起来像“人类”——它模仿的不仅仅是人类的知识,也模仿了人类的偏见和认知误区。
诚然,即便一些具有“陷阱性”的问题,大模型在多数情况下也能作出相对正确的回答。这是因为人类语言环境具备一定的自我纠错能力——在互联网上,不同角度的讨论和大量的对话逐渐积累,使得正确答案的比例有机会增大。然而,这一机制并不可靠,因为它容易陷入“多数正确”的悖论:并非所有观点的广泛传播都意味着其准确无误。一些看似正确但本质上有偏差的答案,若被大量重复引用,反而可能被模型错误地认为是“事实”。