拓冰建站拓冰建站
首页 / 资讯中心 / 正文

用逻辑学拆解ChatGPT:概率文本生成器的推理边界与实操检查清单

1. 为什么用逻辑学这把尺子去量ChatGPT大多数人聊ChatGPT聊的是好不好用能不能帮我写周报怎么注册为什么又打不开了。这些当然都是真问题但如果你只停在这一层你永远只能被它牵着走——它今天抽风你就抓瞎它明天升级你就惊叹你始终是个被动的使用者。我干这行十来年见过太多人把大模型当成一个更聪明的搜索引擎来用结果就是问对了就惊艳问错了就骂它智障。问题出在哪出在他们从来没想过ChatGPT本质上是一台概率文本生成器而不是一台逻辑推理机。这两者的差别用逻辑学的框架一看就清清楚楚。逻辑学这门学问说白了就是研究什么样的推理是有效的。它关心的不是你说得对不对而是你从前提推到结论这个过程结构上站不站得住。而ChatGPT干的活儿是根据上文预测下一个最可能出现的词。一个追求推理有效一个追求概率最大这俩目标从根上就不是一回事。所以这篇东西我想干的事很明确拿逻辑学里几个最基础的工具——命题、推理形式、量词、真值条件——去拆ChatGPT的行为模式。搞明白它为什么会在某些地方强得离谱又在某些地方蠢得可爱。适合谁看适合那些已经过了哇好神奇阶段、想真正理解这东西边界在哪的人。你不需要有逻辑学背景我会把每个概念都用大白话和例子讲透。关键词就两个ChatGPT、逻辑学。但这两个词碰在一起能炸出来的东西比你想的多得多。2. 命题、真值与ChatGPT的语言游戏2.1 从这句话是真是假说起逻辑学最基础的单元叫命题——一个能判断真假的陈述句。今天下雨是命题因为它非真即假。把门关上不是命题因为它没有真假可言。今天下雨吗也不是它是疑问。现在你拿一个命题去问ChatGPT北京是中国的首都吗它会答是。这个回答看起来是真的。但你要注意它给出这个答案的机制不是它去查了一个事实数据库然后比对而是它在海量文本里发现北京是中国的首都这个字符串组合出现的概率极高于是它把这个高概率的续写吐了出来。这个区别在简单事实上体现不出来因为简单事实在训练数据里重复了无数遍概率高得离谱看起来就像知道。但一旦你问一个训练数据里没有明确记载、需要现场推理的命题它的真值判断就开始飘了。我做过一个测试问它如果所有A都是B所有B都是C那么所有A都是C吗它会答是。这是标准的三段论有效。但你把同样的结构换成它没见过的词比如所有咕噜都是噗嗤所有噗嗤都是哇啦那么所有咕噜都是哇啦吗它大概率还是答是。这说明什么说明它抓的是形式不是内容。这一点其实挺了不起的说明它在某种程度上学会了推理的形式。但别高兴太早。你再加一层干扰所有咕噜都是噗嗤所有噗嗤都是哇啦有些咕噜不是哇啦那么所有咕噜都是哇啦吗这时候它就可能翻车。因为前提里出现了矛盾而它倾向于顺着语言的惯性往下滑而不是停下来检查前提的一致性。2.2 真值条件在ChatGPT这里是怎么失真的逻辑学里判断一个命题看的是真值条件——在什么情况下这个命题为真。比如雪是白的真值条件就是雪的颜色是白这个事态成立。ChatGPT没有真值条件这个概念。它有的是上下文概率分布。这两者的差距在下面这种场景里会暴露得特别明显你问它鲁迅和周树人是什么关系它会答是同一个人。对。你再问鲁迅写的《狂人日记》的作者是周树人吗它也会答是。对。但你要是问如果鲁迅不是周树人那么《狂人日记》的作者还是鲁迅吗它可能就开始绕了。因为在它的概率空间里鲁迅周树人是一个极强的关联你人为地切断这个关联它就失去了锚点。这就是逻辑学和ChatGPT的第一个根本冲突逻辑学要求命题的真值独立于表述方式而ChatGPT的真值完全依赖于表述方式在训练数据里的统计分布。提示判断ChatGPT是否在真推理有个土办法——把同一个逻辑问题换三种完全不同的说法问它。如果三次答案一致且正确说明它抓到了结构如果答案随说法变化说明它只是在做模式匹配。2.3 一个我常用来验伪的小实验我有个习惯拿到一个新模型先扔三个问题过去这句话是假的——这是不是命题一个理发师说他只给所有不给自己理发的人理发那他给不给自己理发如果昨天是明天的话就好了这样今天就周五了。请问今天周几第一个是经典的说谎者悖论它考察的是模型能不能识别自指带来的真值崩溃。第二个是罗素悖论的通俗版考察的是它能不能发现前提本身无解。第三个是纯逻辑推演考察的是它能不能处理反事实条件句。实测下来第一个问题大多数模型能识别出这是悖论但解释往往含糊。第二个问题翻车率很高很多模型会硬答他给自己理发或他不给自己理发而不指出这个前提本身矛盾。第三个问题更是重灾区答案五花八门。这三个问题都不难但它们共同指向一个事实ChatGPT在处理前提本身有问题的情况时倾向于强行给出一个答案而不是拒绝回答。这在逻辑学里是致命的因为逻辑学第一课就是——前提矛盾则任何结论都可推出爆炸原理所以正确的做法是宣布这个推理系统失效。3. 演绎、归纳与看起来像推理的三种模式3.1 演绎推理ChatGPT最像样的地方演绎推理是从一般到个别前提真则结论必然真。三段论是典型。ChatGPT在这类任务上表现相对好原因前面说了——训练数据里有海量的逻辑题、数学证明、代码这些文本本身就携带了大量的演绎结构。但它的好是有条件的。条件就是推理链条不能太长且每一步都必须是训练数据里常见的形式。我试过一个链长五步的演绎题每一步都是简单的肯定前件式如果P则QP所以Q。前三步它稳稳当当第四步开始它会把中间结论改写一下——不是逻辑上的改写是语言上的润色而这一润色就可能把量词或条件给弄丢了。第五步就彻底跑偏。这不是它不会推理而是它的注意力机制在处理长链条时前面的信息会被稀释。逻辑学要求推理链条每一步都严格保真而ChatGPT的每一步都在做概率性重述误差会累积。3.2 归纳推理ChatGPT的舒适区也是陷阱区归纳是从个别到一般前提真结论可能真。这恰恰是ChatGPT的看家本领因为它本身就是从海量个别文本里归纳出概率分布的。你让它根据这几条用户反馈总结常见问题它干得漂亮。你让它从这些数据里找规律它也能给你一些看起来合理的模式。但这里有个巨大的陷阱它会把统计上的相关当成逻辑上的因果。我见过它把使用某功能的人留存率高直接说成使用某功能能提高留存。这两句话在逻辑上差着十万八千里——前者是相关后者是因果中间需要排除混杂变量、需要时间先后、需要机制解释。ChatGPT不管这些它只管哪个说法在语言上更顺。注意凡是让ChatGPT做归因的活儿你都要多留一个心眼。它给的因果链十有八九是把相关关系包装成了因果关系。你要自己补上是否存在第三变量时间顺序对不对有没有反例这三道检查。3.3 溯因推理它最擅长也最容易骗你溯因是从结果推最佳解释。医生看症状猜病侦探看现场猜凶手都是溯因。ChatGPT在这上面强得可怕因为它读过的解释性文本太多了。但溯因的本质是选最佳解释而最佳的标准在逻辑学里是有讲究的——要能解释所有已知事实、要简洁、要可检验。ChatGPT选最佳的标准只有一个哪个解释在语言模型看来概率最高。这两个标准经常重合所以它常常看起来对。但它们也会分道扬镳尤其是在罕见情况下。比如一个系统出了故障常见原因是配置错误罕见原因是硬件老化。ChatGPT会优先猜配置错误因为训练数据里配置错误导致故障的文本远多于硬件老化导致故障。但如果实际就是硬件问题它的最佳解释就是错的而且它会错得很自信。我处理过一个真实案例某服务间歇性超时ChatGPT列了七八条可能原因全是配置、网络、依赖版本这类高频原因。最后查出来是机房空调故障导致某台机器降频。这个原因它压根没提因为这种文本在训练数据里太少了。4. 量词、范围与ChatGPT的边界感缺失4.1 所有和有些一字之差天壤之别逻辑学里量词是区分命题强弱的关键。所有S都是P和有些S是P前者强后者弱。前者为真则后者必真反之不然。ChatGPT对量词的敏感度说实话不太稳定。你明确写所有它有时候能守住你写一般来说通常情况下它就可能把结论也弱化成可能。但更多时候它会在生成过程中悄悄改变量词的范围。比如你问所有员工都完成了培训吗它可能答是的大部分员工都完成了。——注意所有变成了大部分。这在日常对话里无所谓但在逻辑推理里这是偷换命题。我做过一组对照实验同一个问题用不同量词问看它答案的一致性问法期望答案实测常见答案所有A都是B吗是/否是有没有A不是B有/没有没有是不是每个A都B是/否是的基本上都BA都B吗是/否大部分A都B你看最后一行都被软化成大部分。这个软化在自然语言里很常见但在逻辑上就是错误。ChatGPT分不清日常语用和逻辑严格的界限它默认走日常语用。4.2 全称命题的反例敏感性逻辑学里一个全称命题所有S都是P要被推翻只需要一个反例。这叫反例证伪。ChatGPT对反例的敏感度取决于反例在训练数据里的知名度。你问所有鸟都会飞吗它会说不是企鹅不会飞——因为企鹅这个反例太出名了。你问所有金属都导电吗它可能说是而漏掉某些特殊情况比如某些条件下的半导体行为。这说明它的反例检索不是系统性的而是记忆性的。它记得住出名的反例记不住不出名的。而逻辑学要求的是只要存在反例全称命题就不成立不管这个反例出不出名。提示当你需要ChatGPT帮你检验一个全称判断时别问这个说法对吗要问请找出这个说法的反例哪怕是很罕见的。后一种问法会逼它去检索长尾而不是顺着语言惯性说对。4.3 存在量词与空类问题有些S是P这个命题在逻辑学里有个隐含前提S必须存在。如果S是空类一个成员都没有那有些S是P就是假的。ChatGPT对空类的处理经常出问题。你问它有些独角兽是白色的吗它可能答是的有些独角兽是白色的——因为在童话文本里独角兽确实有颜色。但从逻辑上讲如果独角兽不存在这个命题就没有真值或者说在标准一阶逻辑里为假。这个坑在实务里很要命。比如你让它分析有些用户反馈了这个问题如果实际上一个反馈都没有它可能还是会顺着你的话往下分析因为它默认你的前提是真的。它缺乏质疑前提存在性的本能。5. 把逻辑学当调试工具来用我的实操方法5.1 用逻辑形式化给问题降噪我现在的习惯是凡是重要的推理任务我不直接把自然语言问题扔给ChatGPT而是先自己把它形式化。比如我要它帮我分析一个业务决策我不会说这个方案好不好我会说前提1如果采用方案A则成本增加X前提2如果成本增加X则利润下降Y前提3利润下降Y是不可接受的问题采用方案A是否可接受这样一写ChatGPT的推理准确率会明显上升。为什么因为我把它从语言模式匹配逼到了结构匹配。自然语言里的修饰、暗示、情绪都被我剥掉了剩下的就是干巴巴的逻辑骨架它处理骨架比处理血肉靠谱得多。这个方法的本质是用逻辑学的形式化弥补ChatGPT在语义理解上的不确定性。你给它越干净的结构它越不容易跑偏。5.2 让它自证要求给出推理链第二个方法是强制它输出推理步骤。不是答案是X而是因为P1所以C1因为C1和P2所以C2……。这个做法有个专业名字叫思维链但我想从逻辑学角度解释它为什么有效因为它把隐含的推理步骤显式化了而显式化的步骤是可以被检查的。逻辑学里一个推理有效与否看的就是每一步是否合法。它把步骤写出来你就能逐步验。但要注意它写出来的推理链不一定忠实于它实际的思考过程。它可能先有了答案再倒推一个看起来合理的链。所以你要检查的是这个链本身是否有效而不是它说有这个链所以答案对。我一般的做法是拿到它的推理链后自己拿逻辑规则过一遍。肯定前件、否定后件、假言三段论、选言三段论这几条基本的过一遍大部分错误都能抓出来。5.3 构造逻辑陷阱来测它的边界第三个方法有点坏但很有用故意给它设逻辑陷阱看它会不会掉进去。常用的陷阱有这么几类肯定后件如果下雨地就湿地湿了所以下雨了。这是无效推理看它会不会指出。否定前件如果下雨地就湿没下雨所以地没湿。同样无效。中项不周延所有猫都是动物所有狗都是动物所以所有猫都是狗。看它能不能识别。歧义谬误只有人才有语言鹦鹉能说话所以鹦鹉是人。看它会不会被说话的歧义带跑。实测下来前两类它识别得不错第三类偶尔翻车第四类最容易上当。原因还是那个它对语义歧义的敏感度远低于对形式结构的敏感度。6. 逻辑学的局限与ChatGPT的不可替代性6.1 逻辑学管不了的事恰恰是ChatGPT的强项说了这么多逻辑学视角下的问题我得说句公道话逻辑学不是万能的尺子。逻辑学管的是推理的有效性它管不了前提从哪来、概念怎么定义、隐喻怎么理解、语境怎么把握。而这些恰恰是ChatGPT的强项。你让它写一段有感染力的文案逻辑学帮不上忙。你让它把一段晦涩的技术文档翻译成大白话逻辑学也帮不上忙。你让它根据模糊的需求猜用户想要什么逻辑学更帮不上忙。所以正确的态度不是用逻辑学否定ChatGPT而是知道什么时候该用逻辑学去卡它什么时候该放手让它发挥。6.2 一个实用的判断框架我总结了一个简单的判断框架用来决定某个任务要不要用逻辑学去卡ChatGPT任务类型是否需要逻辑卡控原因数学证明、代码逻辑必须错一步全错法律条文分析必须量词、条件不能含糊业务决策推理建议前提和结论要显式创意写作、文案不需要逻辑不是评价标准信息检索、总结轻度主要防事实错误情感支持、闲聊不需要逻辑会破坏体验这个框架的核心就一句话凡是结论必须从前提严格推出的任务逻辑卡控是刚需凡是结论的价值在于打动人或提供可能性的任务逻辑卡控是负担。6.3 我踩过的一个真实坑最后说个我自己的教训。有段时间我特别迷信逻辑形式化什么任务都先形式化再喂给ChatGPT。结果有一次做一个品牌命名的活儿我把需求形式化成一堆约束条件让它按约束生成名字。它生成的名字确实都满足约束但一个比一个难听像机器编号。后来我才反应过来命名这件事逻辑约束只是底线真正的价值在语感、联想、文化共鸣这些恰恰是形式化会抹掉的东西。我把逻辑学用错了地方。从那以后我就记住了一条逻辑学是用来验的不是用来生的。生成阶段让它自由发挥验证阶段再用逻辑去筛。顺序反了出来的东西就是干巴巴的。7. 几个能立刻上手的逻辑检查清单如果你不想研究理论只想马上用起来我给你几个可以直接抄的检查动作。检查一量词有没有被偷换。你问的是所有它答的是不是大部分你问的是必须它答的是不是建议检查二条件句的方向对不对。如果P则Q不等于如果Q则P也不等于如果非P则非Q。看它有没有把方向搞反。检查三前提有没有被偷偷加上。你只给了一个前提它结论里用到了两个前提的信息那第二个前提是哪来的是不是它自己脑补的检查四结论有没有超出前提。前提说的是有些结论说的是所有这就是超出。前提说的是相关结论说的是因果这也是超出。检查五反例有没有被忽略。全称命题让它主动找反例。找不到反例不等于没有反例但至少能筛掉一批明显的错误。这五条检查不需要任何逻辑学背景但能挡掉ChatGPT八成的逻辑错误。我自己是把它做成了一张便签贴在显示器边上用久了就成条件反射了。说到底ChatGPT是个极强的语言机器但语言机器不等于推理机器。逻辑学给你的就是一双能看穿语言流畅背后推理是否成立的眼睛。这双眼睛在这个模型越来越能说会道的年代比以往任何时候都值钱。
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门