【人工不智能】为什么问有些大模型 “strawberry”中有几个字母“r” 会回答错,是什么原理?

大模型在回答类似“strawberry中有几个字母‘r’”这类看似简单的问题时出错
在这里插入图片描述
这个问题本质上是由其技术原理与人类认知方式的根本差异导致的,涉及到大模型在处理文本时的Tokenization(分词)过程以及其预测机制。具体来说,以下是几个关键点:


错误原因:

1. Token 化机制的天然缺陷

在这里插入图片描述

大模型处理文本的第一步是将字符序列转换为子词单元(Token),这一过程可能导致字母级信息丢失

  • GPT-4o 的分词结果:strawberry → str-aw-berry
  • Llama 3.1 的分词结果:strawberry → st-raw-berry
  • Claude 3 的分词结果:strawberry → str-aw-berry

这种分词方式将原本连续的字母序列切割为语义片段,导致模型难以追踪每个字母的具体位置。例如,berry中的两个r被合并为一个 Token,模型可能误认为这是一个整体而非两个独立字母


2. 注意力机制与长程依赖

大模型的核心机制是基于概率的自回归生成,其本质是 “猜测下一个 Token” 而非 “逻辑推理”:

  • 注意力机制的均值特性:谷歌研究表明,Transformer 的注意力权重会被归一化,导致无法有效累积计数信息。例如,当需要统计r的数量时,模型可能因注意力分散而漏数。
  • 训练数据的偏差:若训练数据中存在大量拼写错误(如strawbery),模型会将错误模式泛化。例如,千问模型在解释时提到 “rr 里面有两个 r”,但最终仍漏数。
  • 词表大小的限制:当字符数量超过模型维度(如 Llama 3.1 的 405B 参数),计数任务的准确率会显著下降。

3. 任务特性与模型能力

大模型的能力分布呈现不均衡性(Jagged Intelligence),具体表现为:

  • 复杂任务强,简单任务弱:能通过法律考试、数学竞赛,却数不清字母。
  • 语义理解强,形式计算弱:擅长理解 “草莓” 的含义,却无法准确统计字符。
  • 模式匹配强,逻辑推理弱:依赖训练数据中的统计规律,而非符号逻辑。

这种现象源于模型的 “无自我认知” 特性 :它无法判断自身是否擅长某项任务,也不会主动调用工具(如代码解释器)辅助计数。


如何解决

  • 特殊符号强制分词:使用全角字符或分隔符(如ⓢⓣⓡⓐⓦⓑⓔⓡⓡⓨ)迫使模型将每个字母视为独立 Token
  • 提示词优化:要求模型“先拼写单词,再逐个字母检查”。
  • 分步思考(Chain-of-Thought):要求模型 “分步骤思考”,如:
    Step 1: 拼写 "s-t-r-a-w-b-e-r-r-y"。
    Step 2: 从左到右扫描字母,标记所有“r”的位置。
    Step 3: 统计标记数量。
    
  • 外部工具辅助:结合拼写检查API或自定义函数(如count("r", "strawberry")),但需模型支持插件调用,如:提示 “请编写 Python 代码统计 r 的数量”,模型可直接输出strawberry.count(‘r’)

总结

大模型的错误源于其设计初衷(语义生成)与符号操作任务(如精确计数)的不匹配,加之训练数据噪声和分词机制的局限。模型的错误率与其分词器设计、训练数据和架构优化密切相关。改进需结合提示工程或外部工具,而非单纯依赖模型自身能力。

参考:https://developer.aliyun.com/article/1639729

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值