今天稍微讲一些AI通识好了,说几个未来有可能成为常识的知识点。
如果点赞转发多的话,我就开个系列,免费的那种。
前几天《歌手》公布排名,孙楠13.8%排第三,香缇莫13.11%排第四。
这个事情本身没啥,不过有记者拿着这个问题去问了下AI……结果发现包括ChatGPT在内的大部分大语言模型,都翻车了。今天我打算聊聊,为什么AI不大懂数学,另外说说如何成功让它有能力回答类似的问题。
通识1:AI不懂数学
除了13.8和13.11这个bad case,最近AI圈还有个类似的案例:「9.11和9.9哪个大?」这个涉及到大语言模型的工作原理——其实它是基于概率来工作的。我以前曾经N次推荐过诺奖得主Daniel Kahneman的书《思考,快与慢》。书里面提到说,人类的两种思考方式——系统1和系统2:系统1为直觉或快速反应,系统2为理性思考或深度推理。包括ChatGPT在内的生成式AI,它的工作原理会更像是「系统1」的工作模式。假设我就是一个大语言模型,当我被问到「你是谁」这个问题时,基于之前受到的训练(人生阅历),我对第一个字的判断是——出现「我」的概率是100%。而出现了「我」之后,接下来的可能性有三个,分别是「是」「叫」「的」,假设它们的概率分别是60%、35%、5%。而基于「我是」「我叫」「我的」这三种情况,每种情况后续又会有更多的可能性出现,每种可能性都对应一个概率。最后我们可能会有N种回答这个问题的可能性,每一种可能的回答都对应着一个出现概率(把前面每一步的概率相乘)。包括ChatGPT在内的生成式AI,会对过去的大量文本、数据进行学习,从而建立起自己的概率分布表。经过预先训练的这些大语言模型,会根据上下文来判断接下来会出现的文字,最大概率可能是哪个字,从而生成出来。所以大语言模型并不是真的理解这个世界,它只是用了「系统1」,没办法像人类一样用「系统2」来进行深度推理。所以,网络上才会有大量AI「一本正经地胡说八道」的笑话,也就是业内常常会提到的「AI幻觉」现象。通识2:解决AI幻觉的方法
方法1:死记硬背
所以只要给AI刷足够多的题库(无论是通过重新训练模型,还是微调),自然可以提高答对的概率。然而,这种做法还是会有问题:即使它记住了13.11<13.8,也不见得它就明白了9.11<9.9呀。方法2:开卷考试
还有一种方法就是允许AI接入外部知识库(包括联网)。在回答问题前,让AI先搜一下本地题库里有没有类似的问题(业界称为RAG,即「检索增强生成」),或是让AI在互联网上搜搜有没有现成的答案。然后程序会发送类似以下格式的文字给到AI,让AI进行回答:
所以我们看到的测试结果中,腾讯元宝因为先搜了搜公号文章,所以成功避免了错误。要搭建自己的本地知识库也不难啦,github上有无数的开源RAG程序,比如Langchain-Chatchat、MaxKB等等。没有代码能力的话,也可以试试英伟达自己的官方应用ChatwithRTX。或者更方便点的,就是问AI的时候加一句「请先联网搜索后回答」。方法3:用计算器
不少大语言模型都可以接入Code Interpreter(代码执行器),我在以前也介绍过这个bug级别的 功能。你可以在提示词后面加上一句,「请执行代码来回答」。这样AI会写代码,并执行这个代码,从而去判断数学问题的答案。方法4:给点提示
你可能听说过「提示词工程」(Prompt engineering)这个词,简单说就是优化给到AI的问题的文案,让AI可以产出更符合我们要求的答案。比如这道数学题,AI之所以会有错误,是因为它的断句(tokenization)有问题——9.9被它看成了「9」「.」「9」三个部分,9.11被它看成了「9」「.」「11」三个部分。然后它比较了整数部分发现都是9,比较小数部分发现11比9大,所以才会判断说9.11>9.9。知道原理后,我们可以尝试把提问改为「9.9和9.11哪个大?请先拓展到小数点后两位再比较」。我试了下,GPT-4o中英文这么提问都OK,可以成功回答。对这个系列感兴趣的话,可以给我点赞转发,如果感兴趣的人多的话,我之后开个系列,免费的那种。P.S. 更及时全面的资讯,可以看看我们的另一个公号——「很帅的投资客」的所有内容皆仅以传递知识与金融教育为目的,不构成任何投资建议。一切请以最新文章为准。
✍🏻 图文/ @狐狸君raphael,曾供职于麦肯锡金融机构组,也在 Google 和 VC 打过杂。华尔街见闻、36氪、新浪财经、南方周末、Linkedin等媒体专栏作者,著有畅销书《风口上的猪》《无现金时代》。