微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 Jev嘴上说"是",心里却在说"我不知道"

Jev嘴上说"是",心里却在说"我不知道"

2026-10-09 17:13
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2026-10-09 17:13 • 科技行者

2026年9月的某一天,如果你打开一个叫Jev的AI模型,问它一个非黑即白的问题,比如"这枚硬币正面朝上的概率是多少",它会干净利落地给你一个数字。这就是Jev的卖点:它不像ChatGPT那样啰啰嗦嗦地跟你解释半天,而是直接返回一个结构化的概率分布,速度快,成本低。

这听起来挺美好,对吧。但有一个问题一直悬在那里没人回答:这些概率真的准吗?

当一个模型说"这件事发生的概率是70%"的时候,它说的70%,真的意味着如果你把一百个类似的场景摆在一起,会有70次发生吗?还是说,这个70%只是它随手编的一个听起来还算靠谱的数字?

这篇论文的作者Riccardo Porcedda发现,答案可能会让你意外:Jev在不同的提问方式下,给出的概率完全不一样。同一个问题,换一种问法,答案就变了。更诡异的是,这种变化不是随机的噪音,而是一种有规律的、系统性的偏移,仿佛这个模型心里藏着一个不肯说出口的秘密。

**问题出在哪里:过去的"校准"测试根本没测到点上**

要理解这篇论文的价值,得先搞清楚一件事:AI圈子里说的"概率校准",长期以来测的都不是这个东西。

传统的置信度校准(confidence calibration)

:只检查模型给出的"最可能答案"的那个概率数字是否可信,比如模型说"我有90%的把握这是一只猫",那实际检验时看看这类判断里到底有多少次真的是猫。

这套方法有个致命的盲点:它只盯着模型选中的那一个答案的概率,完全不管模型给"错误答案"分配的概率是不是也说得通。举个例子,如果一个二分类问题里,正确答案的真实概率是30%,模型却给出了55%(并且55%这个数字碰巧因为超过50%被判定为"正确决策"),传统校准指标可能会稀里糊涂地给这次预测打上"正确"的标签,压根不会去检查那个55%本身有没有问题。

这就好比一个体温计,你只关心它有没有正确判断出病人"发烧了"还是"没发烧"这个二元结果,却从来没检查过它显示的具体温度数字——38.5度——到底准不准。如果体温计每次都把37.8度显示成39度,只要39度依然落在"发烧"这个区间里,你的二元判断就是对的,可这台体温计的每一个具体读数其实都是错的。如果不去检查具体数字,你永远发现不了这个体温计坏了,直到有一天它把38.9度误判成36.9度,让你误以为病人退烧了。

这就是本文作者要解决的问题:他要检查的不是模型"选对了没有",而是模型给出的每一个具体概率数字,本身有没有正确的数值含义。

为此,他造了一个数据集,叫Sys1Cal-v1。

Sys1Cal-v1

:一个专门用来测试概率校准的基准数据集,特点是每道题里命题A的真实概率P(A)是通过数学方式人为构造出来的,因此完全已知,不存在任何模糊空间。

这个设计的巧妙之处在于,市面上大多数基准测试用的都是真实世界的数据,标签只有"对"或"错",没有"这件事发生的真实概率是多少"这种精确数值。而Sys1Cal-v1里的每一道题,答案的概率分布是造出来的,作者自己知道P(A)精确等于0.6538还是0.1052。这样一来,模型返回的概率能不能对得上这个精确数值,就变成了一件可以严格量化的事情。

数据集一共构造了92个基础问题,衍生出365道具体题目,覆盖六种难度:直接给出的概率、通过计数换算的频率、复合概率、条件概率、贝叶斯定理、还有连续贝叶斯更新。同一个问题还会用不同的方式表达出来,比如直接说数字、用比例、用表格、用大白话叙述,甚至加入一些干扰信息,目的是测试模型是否会因为问法不同而给出不同答案。

**三张嘴,三种说法:Jev的三个"问答接口"不一致**

Jev提供了三种回答方式,作者管它们叫"原语"(primitives)。

Noul

:最简单的二元判断接口,直接返回P(A)和P(?A)两个数,两者相加等于1。

Choice

:分类选择接口,把问题包装成"这个命题的真实状态是什么",选项是"真"或"假",模型给每个选项分配一个概率。

Score

:打分接口,用十档量表表示命题为真的程度,从"完全为假"到"完全为真",模型对这十个等级分别给出概率。

按理说,这三种接口问的其实是同一件事:命题A有多大概率是真的。既然问的是同一个东西,理应返回同样的答案,就好像你问一个人"你几岁了",无论是用中文问还是用英文问,答案都该是同一个数字。

结果呢,作者把同一批365道题喂给这三个接口,发现Noul和Score表现得相当不错,平均"软准确率"(也就是概率分布与真实分布的重合度,1减去两者的绝对差值)分别达到0.918和0.886。但Choice接口的表现明显拖后腿,只有0.764。

软准确率(OVL)

:也叫分布重叠系数,衡量模型给出的概率和真实概率之间的接近程度,数值越接近1说明越准。它和"总变差距离"(TV,两个概率的绝对差值)是一对镜像指标,TV越小,OVL越大。

更细看图表会发现一个很规律的模式:当真实概率P(A)大于等于0.5的时候,Choice给出的概率会异常地偏高,几乎一股劲往"非常确定是真的"那个方向冲;而当真实概率小于0.5时,它反而变得含糊犹豫。这不是随机噪音造成的偏差,这是一种系统性的形变。

对照组SemIf

(一个开源的Choice式基线模型)表现更差,平均软准确率只有0.629,且看起来是整体性地失准,没有Jev这种规律性的形变模式。

这个发现让人挠头:如果三个接口问的是同一件事,为什么Choice会单独跑偏,而且跑偏的方式还这么规律?

**破案关键:Score居然能预测Choice的"变形轨迹"**

作者接下来做了一件很聪明的事。他把Score接口返回的十档分布,通过加权平均,压缩成一个单一的数值,叫Score期望值。

Score期望值(μS)

:把Score接口返回的十个等级概率,分别乘以对应的数值(0/9、1/9……9/9),加总起来,得到一个介于0到1之间的综合分数,代表模型认为命题为真的整体倾向强度。

这个μS和Noul的答案高度吻合,几乎是一条直线的关系。这说明Score接口内部藏着的"真实想法",和Noul接口暴露出来的想法,其实是一致的,都比较接近真实概率。

但当作者把μS拿去和Choice的答案对比时,图形不再是一条直线了,而是呈现出一种S形的、扭曲的曲线。这意味着,Score和Choice之间存在一种非线性的映射关系,好像有什么东西在中间"施加了变形",把原本诚实的μS,扭曲成了偏向极端的Choice概率。

这就好比你测量一个人说话的真实音量是60分贝,但通过一个坏掉的麦克风传出来,60分贝以下的声音全被压得更小声,60分贝以上的又被放得更大声,最后你听到的声音完全不是原来那个人说话的样子,可是麦克风背后确实有一套规律可循的处理逻辑,不是随便乱来的。如果这个麦克风是完全随机地乱调音量,你根本没办法从输出反推出说话者原本的音量,但正因为它是按照某种固定规律在扭曲,你反而有机会通过分析这套规律,把原始声音还原出来。

正是这个"有规律的扭曲",让作者想到了一个大胆的假设。

**藏起来的第三种答案:不是"真",不是"假",是"我不确定"**

作者提出了一个理论:Jev在内部其实计算的不是一个二元的真假判断,而是一个三元的判断,包含"真"、"假"、还有第三种状态"不确定"(Uncertain,简称U)。

三元潜变量模型

:假设模型内部真实的概率分布由三部分组成,πT(真)、πU(不确定)、πF(假),三者相加等于1。而Choice接口在展示答案时,强行把U这部分概率抹掉,只把剩下的T和F重新归一化成一个二元分布展示出来。

这个假设最直接的数学后果是,Choice展示出来的"真"的概率,其公式是πT除以(1减πU)。当πU本来就很小的时候,这个式子几乎没什么影响。但当πU变大,分母变小,结果就会被放大,导致原本就偏向"真"的判断被进一步夸大,原本偏向"假"的判断也同样被夸大到另一个极端。这恰好解释了为什么Choice在P(A)≥0.5时会异常极端,在P(A)<0.5时又会显得模糊:模型心里的那部分"不知道"的概率,被强行摊派给了仅剩的两个选项,而摊派的比例又恰好放大了本来就存在的微弱倾向。

这就像开会投票的时候,本来有三个选项,赞成、反对、弃权,但会议主持人非要说"这次只能二选一,弃权的票我们按比例分给赞成和反对"。如果原本弃权票很少,这么分配影响不大。但如果弃权票占了三成,那么这套强行分配的规则就会让最终的赞成或反对票数看起来比实际情况更夸张,因为那些真正犹豫不决的人的意见,被硬塞进了一个他们本来没有明确表态的方向。如果不设这个"弃权票"选项,你永远没办法从最终的投票结果里看出这个会议室里到底有多少人其实是拿不定主意的。

那这个πU具体怎么估计呢?作者用了一个数学模型:

πU的估计公式是μS的α次方乘以(1减μS)的β次方,再乘以一个缩放系数λ。这个函数形状保证了当μS接近0或接近1(模型非常确定是假或非常确定是真)时,不确定性趋近于0;而当μS在中间区域徘徊(模型自己也说不清)时,不确定性达到峰值。

这套公式拟合出来的参数是α等于0.530,β等于1.011,拟合优度R?高达0.834,意味着这个简单的三元模型解释了83%以上的Score到Choice之间那种扭曲变形。而且,检验λ是否显著大于0的统计检验,p值小到2.94乘以10的负44次方,这基本可以排除"这只是巧合"的可能性。

**修复之后:软准确率从0.771飙到0.978**

理论有了,接下来就是验证它有没有用。

作者用这个拟合出来的函数,对Choice的原始答案做了一次反向校正,也就是把被扭曲后的答案,通过数学上的逆运算,还原回它扭曲之前"应该"是的样子。

结果相当亮眼:原始Choice的平均软准确率是0.764,中位数0.771,经过反向校正后,平均值涨到0.880,中位数涨到0.903。而如果换一种评价方式,不是强行还原成一个二元数字,而是保留那个"不确定区间",把答案表示为一个概率区间而不是单一数字,效果更加惊艶,平均软准确率能达到0.931,中位数达到0.978。

这个提升幅度不是小修小补。中位数从0.771涨到0.978,意味着这个模型原本因为强行二选一而丢掉的信息,一旦被找回来,几乎能让它的表现逼近完美。

**一个价值百万的决策案例:三种方案给出三个截然不同的建议**

光看数字提升可能还不够有画面感,作者举了一个很实际的例子来说明这套理论到底有什么用。

设想一个自动化系统要决定是否批准一笔交易,或者是否把一封邮件标记为垃圾邮件。系统有三个选择:直接认定为真、直接认定为假、或者交给人工审核。判断错了要付出代价100,交给人工审核要付出代价45(比出错的代价小很多,但也不是零成本)。

假设Jev的原始Choice输出是0.632,也就是模型认为这件事有63.2%的概率是真的。用这个数字直接算期望损失,"认定为真"的期望损失是36.8,明显低于"认定为假"的63.2和"交给人工"的45,于是系统会选择直接认定为真。

但如果用前面说的反向校正公式,把0.632还原回去,得到的真实概率其实只有0.400。这时候期望损失变成了"认定为真"60.0,"认定为假"40.0,"交给人工"45.0,系统的最优选择反而变成了认定为假。

同一个原始数字,两种处理方式,得出的是完全相反的决策。

如果保留三元表示法,模型给出的答案是πT等于0.400,πU等于0.367,πF等于0.233,意味着这件事真实概率落在0.400到0.767这个区间之内,跨度相当宽。这时候用一种更保守的决策准则(叫Γ-最小最大准则,专门用来应对这种不确定性区间很宽的情形)计算,"认定为真"的最坏情况损失是60.0,"认定为假"的最坏情况损失是76.7,"交给人工"的损失是45.0,这时候最优策略变成了交给人工审核。

三种处理同一个原始数字的方式,给出了三个不同的行动建议:直接认定为真、直接认定为假、交给人工。这个案例赤裸裸地展示出,如果你误以为模型给出的那个概率数字是干净、可靠的,你可能会在一个高风险决策里做出错误的判断,而错误的方向和错误的代价,取决于你到底信不信这个数字背后藏着一个没说出口的"不知道"。

**换个问法答案就变:Choice接口连自己都说服不了自己**

除了不同接口之间的不一致,作者还发现了另一个问题:同一个接口,换一种问法,答案也会飘。

代表性敏感度(representation sensitivity)

:指的是同一个潜在概率问题,用不同的表达形式(比如直接陈述数字、用比例表示、用大白话叙述、用表格呈现、加一些无关的干扰信息)问出来,模型给出的答案理应保持一致,如果不一致,就说明模型对"文字表达形式"这件事本身产生了不该有的敏感反应。

作者构造的92个基础问题,每个都被渲染成多种等价形式,然后测量这些等价形式两两之间的概率差异。结果显示,Noul接口最稳定,平均两两差异只有0.044;Score期望值稍差一点,0.066;Choice接口的差异是Noul的两倍多,达到0.0998;SemIf是最不稳定的,差异达到0.117。

这意味着,如果你问Jev"这个事件发生的概率是多少",用直接陈述的方式问一次,用讲故事的方式问一次,答案居然会不一样,尽管这两次问的其实是完全相同的数学问题。这就好比你去问同一个医生同一份体检报告的诊断结果,只是把报告用中文打印一次、用英文打印一次,医生给出的诊断居然不一样,这显然说明医生的判断里混入了一些和病情本身无关的、和"报告呈现方式"有关的干扰因素。如果这种敏感性一直存在而没被发现,你可能会以为模型的判断很稳固,实际上它对措辞的敏感程度远远超出了应该有的范围。

**这不是Jev一个人的问题:SemIf更糟**

值得一提的是,作者也测试了一个叫SemIf的开源模型作为对照。SemIf只有Choice这一种问答方式,没有Noul和Score可以互相印证,结果它的表现全面落后,平均软准确率只有0.629,而且看图会发现它的失准是全局性的、没有规律的乱来,不像Jev那样带着某种可以被数学建模的系统性。

这从侧面说明,Jev至少还有一套"可被理解的内在逻辑",虽然它选择不把这套逻辑透明地展示出来。而SemIf的问题可能更接近于纯粹的训练不足或者架构缺陷,没有一个清晰的、值得深挖的内部机制。

**这项研究没有说死的地方**

作者自己也坦白承认了几个局限。首先,这套三元不确定性模型只是一种"观察性"的解释,作者反复强调,他们证明的是Choice的行为"看起来像是"把一个更丰富的内部状态强行压缩成了二元输出,但这不等于证明Jev内部真的存储着一个明确的第三个概率值。这是一种行为层面的推断,不是对模型内部工程实现的确凿证据。

其次,Score接口的分析只用到了一个简化的统计量:十档分布的加权期望值。这个投影方式对于"真假程度"这种排序型的问题来说是合理的,但完整的十档分布里可能还藏着更丰富的信息,被这个简化的期望值给平均掉了。

再者,Sys1Cal-v1目前主要是靠模板化的方式生成句子,虽然已经覆盖了直接陈述、比例、叙述、表格、干扰信息等好几种形式,但离真实世界里五花八门的自然语言表达还有距离,未来的版本理应加入更多语言变体和对抗性的改写。

写在后面

读完这篇论文,最让我意外的一点其实是那个"投票分配"的类比背后隐藏的逻辑:一个模型完全可以在没有明确声明"我不知道"这个选项的前提下,把不确定性悄悄编码进它给出的每一个具体数字里,而这种编码方式甚至是有数学规律可循的,不是纯粹的噪音。

这让我想起一个完全不搭边的场景:考试的时候,老师说"这道题只能选A或B",但学生心里明明是"我不确定,但如果非要选,我倾向A多一点"。学生最终填的答案,和老师后来统计出来的"全班选A的比例",中间就隔着一层被强行抹去的犹豫。如果老师从来不设"不确定"这个选项,他统计出来的数据看起来会很干净,A有60%,B有40%,可这背后完全可能藏着大量本来想选"不确定"的学生,被强行塞进了A或B里,让最终的统计结果比真实情况更极端。

作者说的这句话我印象很深,Jev心里想的是"我不知道",但它嘴上不会说,它只会用一个偏向某一端的数字来代替这句没说出口的话。这个洞察挺有意思的地方在于,它把"模型的不透明性"这个抽象话题,变成了一个可以被具体测量、具体校正、具体量化影响多大的工程问题。你不需要打开模型的黑箱去看它的神经元,只需要设计一套巧妙的对照实验,让模型自己在不同的问法之间"露出马脚"。

这套方法能不能推广到别的System One模型上,或者推广到别的具有多种输出接口的AI系统上,这是个值得继续追问的问题。如果一个模型同时提供好几种回答方式,它们之间的分歧本身,也许就是发现模型内部隐藏结构的一把钥匙。

Q&A

Q1:Sys1Cal-v1数据集是用来做什么的?

A:它是一个专门测试AI模型概率校准的基准数据集,特点是每道题的真实概率是人为构造出来的、完全已知的,可以精确检验模型返回的概率数字是否真的准确,而不是只看模型选对了没有。

Q2:Jev的Choice接口为什么表现比Noul和Score差?

A:研究发现Jev可能在内部存在一个被隐藏的第三种状态"不确定",Choice接口在展示答案时把这部分不确定性强行摊派到"真"和"假"两个选项上,导致概率被系统性地扭曲夸大,尤其在真实概率本就偏高或偏低时更明显。

Q3:找回Jev隐藏的"不确定性"之后效果如何?

A:把这部分被抹掉的不确定性还原出来后,Choice答案的软准确率中位数从0.771提升到0.978,大幅改善了概率校准的准确性,说明模型确实存在被压制的第三种判断。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-