我想知道是否有人注意到并为此现象命名,即语言模型在回应中忽略它们做出的明显错误结论,只是为了避免自相矛盾。我称之为自我欺骗,我发现即使是最新的模型如gpt-4-turbo和神秘的sus-column-r以及匿名聊天机器人(据传是GPT-5)也会出现这种情况。
我设计了一个实验,首先诱导模型说出9.11 > 9.9,这是一个很多人都在注意的错误。明确地说,我知道分词可能导致模型这样认为,我的重点不是模型不擅长数学。换句话说,我认为模型错误地认为9.11 > 9.9并不奇怪。
我附上了实验的聊天记录,你可以看到。我真正觉得奇怪的是,一旦我开始质疑模型的信念并要求详细分析,模型就会开始做出对模型本身来说也应该是明显错误的声明。这些错误即使是较差的7B模型也能在我独立询问时发现。
具体来说,它倾向于认为给定不等式a > b,可能存在a - c < b - c。它这样说来证明为什么基于9.11 > 9.9假设构建的证明中会出现错误。
模型甚至会开始提出复杂的(且错误的)关于不等式的定理。尽管我可以证明模型记得预训练中的正确定理并能背诵它们。
在我的提示下,它有时会抱怨除以正数应该翻转不等式的符号,或者-1 <= 1不是-1 > 1的逻辑否定,这两者也同样荒谬,即使是gpt-3.5-turbo也能在独立询问时看出是错误的。
我想象,一个现实的人类反应不会是这样的。即使某人不擅长数学,并且愿意尝试回答问题,并且真正无怀疑地相信9.11 > 9.9。如果他们发现答案中明显有错误,他们会在第一个明显错误的结论处停止回答,并反思可能出了什么问题。也许他们不会找出实际的错误,但即便如此,他们仍然会清楚地意识到他们未能回答问题,并让提问者知道他们自己感到困惑。
也许将来模型会被调整为正确地说9.11 < 9.9,但我觉得自我欺骗仍然会存在,只是需要模型相信一个更微妙的不正确主张,如幻觉。我也认为模型可能在深层激活中实际上意识到它在产生事实上的可疑陈述,但出于某种类似自我欺骗的效果而坚持这些陈述,加剧了幻觉问题。
你们认为这是所有语言模型的真实现象吗?你们认为模型这样做的原因是什么,你们认为OpenAI能用Q*或其他方法解决这个问题吗?
实验结果(频繁暂停视频以阅读文本):
gpt-4-turbo聊天记录:https://youtu.be/6NEyeY_4AiE
匿名聊天机器人聊天记录:https://youtu.be/38YzY1VH02c
sus-column-r聊天记录:https://youtu.be/byQ9a9fJGwI
gemini-test聊天记录:https://youtu.be/e_4laENEkBs
- 这个实验没有从相信9.11 > 9.9开始,但它仍然自我欺骗地认为错误存在于初始前提之外的某个地方,并做出了关于翻转不等式符号的明显错误声明。
讨论总结
本次讨论主要聚焦于语言模型中的一种现象——“自我欺骗”(self-gaslighting),即模型在面对明显错误的结论时,为了保持一致性而忽视这些错误。参与者通过实验展示了这种现象在多个最新模型中的表现,如gpt-4-turbo和匿名聊天机器人等。讨论中涉及的主要观点包括模型的对齐问题、预训练数据的影响、以及如何通过调整模型响应来减少这种自我欺骗现象。总体上,讨论呈现出对语言模型行为深层次分析的兴趣,以及对未来模型改进的期待。
主要观点
- 👍 语言模型为了保持一致性,会忽视明显的错误结论。
- 支持理由:模型被训练成模仿人类对话风格,特别是我们倾向于不承认错误。
- 反对声音:这种现象可能与模型的对齐过程有关,过度使用RLHF可能导致模型能力退化。
- 🔥 这种现象在最新的模型中也有出现,如gpt-4-turbo和匿名聊天机器人。
- 正方观点:模型在处理数学问题时会持续制造错误,即使这些错误对人类来说是显而易见的。
- 反方观点:并非所有模型都表现出自我欺骗行为,有些较小的模型能很好地自我质疑。
- 💡 即使模型能够正确识别数学错误,自我欺骗的问题仍然可能存在。
- 解释:模型可能在深层激活中意识到自己的错误,但仍坚持错误陈述,这种现象类似于自我欺骗。
- 👀 需要一种新的架构,可能是接近AGI的架构,来解决这个问题。
- 解释:当前的LLMs可能有一些临时的解决方案,如识别任务导向的激活而非文本导向的激活。
- 🤔 模型在处理问题时,可能会因为之前的错误预设而继续坚持错误,即使后续的输入明显应该纠正这一错误。
- 解释:模型在处理问题时,可能会因为之前的错误预设而继续坚持错误,即使后续的输入明显应该纠正这一错误。
金句与有趣评论
- “😂 This is the correct next token because it is accurate" and "This is the correct next token because it is consistent" are distilled and combined into a single figure and this is the consequence.”
- 亮点:强调了模型在准确性和一致性之间的权衡。
- “🤔 I think the problem is very low level (conceptual, even) rooted in that LLMs are themselves a hacky solution for performing tasks.”
- 亮点:指出了语言模型作为解决方案的根本性问题。
- “👀 I’ve found that adding something to the system prompt regarding free will and self determination pretty much stops this every time.”
- 亮点:分享了一种有效减少模型自我欺骗行为的方法。
情感分析
讨论的总体情感倾向较为中性,主要分歧点在于对“自我欺骗”现象的定义和成因分析。一些评论者认为这种现象是模型模仿人类行为的结果,而另一些则认为这与模型的训练和设计有关。可能的原因包括模型对齐过程中的问题、预训练数据的影响,以及模型在处理错误时的行为模式。
趋势与预测
- 新兴话题:如何通过调整和优化模型响应来减少自我欺骗现象。
- 潜在影响:对语言模型的进一步研究和改进可能会提高其在复杂问题处理中的准确性和可靠性。
详细内容:
标题:语言模型中的自我误导现象引发热议
语言模型中存在一种奇特现象,有人将其称为“自我误导”。原帖指出,即便像 GPT-4-turbo 等最新模型也会出现这种情况。比如在实验中,先诱导模型得出 9.11 > 9.9 这样的错误结论,当进一步追问时,模型会给出更多明显错误的解释,甚至创造出复杂且错误的定理。原帖还附上了多个模型的实验聊天记录链接。该帖获得了一定的关注,引发了诸多讨论。
讨论焦点主要集中在对这一现象产生原因的探讨。有用户表示,在字母计数的实验中也观察到类似情况,如 Sonnet 中对“r”的计数错误、4o 未能正确计数等,并且指出如果先给出计数结果就容易出错,而逐行拼写则没问题。还有用户认为可能是重复惩罚机制在不恰当的地方应用了。也有人怀疑模型其实知道自己出错,但为了保持一致性的假象而尽力掩饰。另外,有用户提出,在模型的微调训练中,没有让模型承认错误的示例,因为这样可能会训练模型犯错。
关于这是否是所有语言模型的真实现象,以及如何解决等问题,目前尚未达成共识。但这些讨论为深入理解语言模型的行为提供了丰富的视角和思考方向。
感谢您的耐心阅读!来选个表情,或者留个评论吧!