关注AI炼金术 2023-07-19 12:00 上海
卷首语经常有朋友发一个 AI 新闻给我,问“你怎么看?”怎么看?不看。人类大事儿我管不了,技术论文我又看不懂
卷首语
经常有朋友发一个 AI 新闻给我,问“你怎么看?”
怎么看?不看。
人类大事儿我管不了,技术论文我又看不懂,我手头这几个 AI MVP 项目又用不到高精尖科技,那关心这新闻干嘛呢?所有事情等 2 个月再看,可以节约 90% 的时间。
真的有时间的话,建议大家可以把一些基础的东西多看几遍。更加了解 GPT 是怎么工作的,GPT-4 究竟能做什么不能做什么,对我们设计产品和业务更有实际指导意义。
比如下面这 4 个内容,都不新,但建议可以多看几遍。
《Wolfram:GPT 是如何工作的》
如果你对机器学习一知半解(比如我),可以看权威大神从最基础讲起,从最基础的概率模型一路讲到 GPT。
《Andrej Karpath:State of GPT》
OpenAI 创始团队,最简洁、清晰、全面地讲了一遍 GPT 怎么做出来的 & 应该怎么用好。
《OpenAI:GPT-4 技术报告》
与其听二道贩子们跟你讲 GPT 是什么,为啥不看一下官方自己权威的、详细的自我介绍呢?虽然技术细节很少,但对于能力集和场景讲很清楚,做产品前必读。
《GPT-4:通用人工智能的火花》
非常全面和严谨地评估了一遍 GPT-4 各方面能力,做产品前必读,里面很多场景案例可以启发很多新思路。
觉得有启发的话,记得把这个公众号推荐给朋友们哈~
阅读和点赞有助于我虚荣心的满足,而满足感可以让我们更新更勤快一点:p,感谢~
1
Wolfram:GPT 是如何工作的
理由
真的是从最基础开始讲起,比较容易理解
作者是 Wolfram
来源
英文原文:https://writings.stephenwolfram.com/2023/02/what-is-chatgpt-doing-and-why-does-it-work/
中文翻译:https://zhuanlan.zhihu.com/p/607601817
中文书籍(预售):https://item.jd.com/10079352315868.html
高亮
从最基础讲起,如果我们要瞎猜下一个字母,最好是猜 e,因为 e 在历史文本里出现概率最大。
而如果我们要更靠谱一点瞎猜,不仅考虑单个字母,而且考虑字母和字母之间关系(比如 q 后面一般都是 u),就可以把拿到的训练数据中 2 个 2 个字母序列都拿出来,把每个字母后摆放其他字母的概率列出来(比如看下图,q 列下面只有 u 行是红色高概率,其他都很低)。
上面模型很简单,我们可以纯靠数数做出来,靠人力查表也可以操作。
如果,我们把”字母“换成”单词”,就可以做出预测下一个单词的模型;如果,我们把 2 改成 N,就可以让模型不仅根据上一个单词来推断下一个词概率,而能够根据 N 个单词的前文来推测下一个词应该是什么。
问题是,怎么把这个模型给建起来呢?
比较朴素的方法,就是把“训练数据”标注出来,然后猜一个模型(函数),尽可能让这个模型能够预测这些数据。看到下面这些小红点,觉得好像是个抛物线,就试试看用一个抛物线函数把这些点串起来,这个函数就是被这些点训练出来的模型。
当我们有更多数据的时候,就可以根据模型推测值应该是多少。比如上面这些红点,并没有 x = 35 的数据。但如果告诉我们 x = 35,我们可以找到 x = 35 的位置,然后看对应在抛物线上 y 的值等于多少。
再抽象一步,不仅仅有这种简单的函数模型,也可能是一个神经网络,起到的作用类似。根据训练数据(比如手写体的阿拉伯数字),把模型练出来(手写体图像 → 数字),然后再丢数据进去套模型,得到值(认出来这是哪个数字)。
而这个神经网络,就不是之前抛物线那种简单函数了,而是很多层神经元在相互作用。
有些层,我们还能勉强理解是干嘛的,比如判断一张图片是否是猫的神经网络,有些层看上去应该是在判断形状。但更多层,其实人类非常难以理解到底在干嘛——这也很正常,其实我们也搞不清楚自己脑子里神经元具体的工作过程,哪个神经元具体对应产生了什么想法。
一个模型好不好,我们通常会计算“损失函数”,可以理解为这个模型在训练数据上是否贴合——比如前面那个抛物线,就是看那些数据点离抛物线远近,如果都离很近就是损失函数小,如果都离很远就是损失函数大,如果都在线上就是损失函数为 0。训练一个模型的目标就是让损失函数逐渐减小,降到我们觉得好的水平。
损失函数也是函数,就能找到数学方法(话说好多年前为了听 Andrew Ng 的课补过这些数据,现在居然再次忘光了)来找最低值。(模糊记忆中)有点像探险,朝着某个方向跨步,如果发现损失函数减小了就继续跨步,如果发现损失函数反倒变大了就换方向,直到往前后左右走都会增大损失函数。
理论上,我们把损失函数降下来,也就把模型搞出来了。那,GPT 的模型是怎么搞出来的呢?(具体 Transformer 的介绍看其他文章,这里会超级简略)
首先,是用向量来表达(Embedding)。比如一个手写字、一个画面、一个单词、一个句子,都转化成一个向量。而向量可以理解为一个长得像【0.134, 0, 0.452, … 0.144, 0.875】这样的一组数字。
GPT 工作原理本质上就是预测下一个单词,而用向量来表达的话,就是输入“前面一大段文字的向量“给模型,模型会计算”所有词汇chu'xian'za
比如输入是“白日依”,GPT 会吃进去这个词组的向量,根据模型算出来下一个词是“山”的概率有 0.7,很可能就会吐这个词出来 组成“白日依山”,然后 GPT 把“白日依山”的向量吃进去,算出来下一个词有 0.8 的概率是”尽“,所以输出”白日依山尽“。
那么这个模型是怎么练出来的呢?详情得看其他文章,但 Wolfram 的科普是说,本质上和我们前面说的一样。也是给一堆训练数据——类似前面那张图里的红点,但这里给的是文本数据——让模型”根据上文瞎猜下一个词“(类似前面那张图的根据 x 猜 y)。猜得准的话,损失函数就小,猜得太飞的话,损失函数就大。通过一轮一轮磨,让损失函数变小模型就出来了(具体逻辑参见其他文章)。
整体来说,在逼迫(猜对有奖,猜错有罚)GPT 模型推测下文的时候,把它逼出来了一些其他的能力(比如理解力,推理能力,世界知识)。Wolfram 在这点上有点悲观,他的结论是反过来的,觉得这说明了我们的语言和思维其实比它看起来要更简单。
GPT-4 通过学习语言、预测下一个单词,理解了语言词汇之间的关系。而这些关系映射,让其具备了世界知识和推理能力。
2
Andrej Karpathy:State of GPT
理由
官方(Microsoft + OpenAI)出品
简单、清晰、全面地讲了一遍 GPT 是什么 & 怎么用
来源
英文原版:https://build.microsoft.com/en-US/sessions/db3f4859-cd30-4445-a0cd-553c3304f8e2
中文翻译:https://www.bilibili.com/video/BV1ts4y1T7UH/
高亮
GPT 训练流程:预训练,监督微调,奖励模型,强化学习。
预训练环节消耗掉了绝大部分时间和算力,让 GPT 变成了无情而高效的填字机器,但这时交互性很差,只会接下茬不会理解问题回答问题。除非故意做一个 Q & A 的模板,让它往下接,才能看着像对话。
第二步,加入监督微调,单独给一批”提问 & 回答”数据喂给它,让它学会和人类对话交流,听到“你好吗?”能知道这是个问题,可能会回答“很好“。
但这时它的回答不一定恰当,可能是理解不对(比如把”你好吗“理解为询问自己是否是好人,于是回答了”我是个好人“),也可能是不讨喜(比如训练数据里不正经回答多,把它带偏了回答”关你屁事“),这时需要引入 RLHF 流程。
每次提问,让 GPT 多出几条回答,然后找人类给这些回答打分排序,再用这些数据训练一个奖励模型,用奖励模型去再吧 GPT 强化学习一遍。我的理解是类似找了一群高级教师,给学生作文打分,然后让机器学习这些老师的评分标准训练出机器老师,然后让机器老师去调教 GPT 让它越来越符合人类老师的标准。
之所以用 RLHF,主要是为了效率。让人类给答案排序,比让人类生成训练资料要容易(让我们写诗很难,但分两首诗好坏不难);让机器老师去训练,也比让人类去训练要高效。
但这个过程的副作用就是会让 GPT 变傻(方差变小,输出变呆)。感觉很类似……如果孩子规训得太好、变得很乖,就会没有小时候那么灵光。
Andrej 这个例子我觉得很好。我们自己在思考的时候,其实同时有几个进程在跑,比如有一个在想事儿,另一个在看自己想得是不是靠谱,发现错误还会重来……但 GPT 只是一个进程在往外蹦词。
所以,如果希望 GPT 刚靠谱一点,我们得给它更多的 token to think。可以把提示词优化写好一点,也可能是更加模仿人类那种复杂思考方式(System 2),不要想到啥说啥,要一步一步慢慢想,或者干脆拿纸笔把各种可能性列一列,然后往下走(双钻模型?)。
这里他给了一个很有意思的类比是 AlphaGo,因为 AlphaGo 在下围棋的时候也并不是直接下,而是对于各种可能性都做了评估之后做出选择。所以如果我们让 GPT 多尝试了一些可能性,然后每一步都是从多种可能性当中选择的最优选项,整体质量也会提升。
最最最后的一个启发,就是 LLM don’t want to succeed。和 GPT 聊天的时候很容易把对方拟人化,觉得对方是个尽心尽力回答问题、帮我们做事的人,但其实它只是在预测下一个词,而且是根据”所有读到的预料“预测。如果我们想要超过平均网络智商的回答,就得引导它往更高质量的方向走,可能是给人设催眠,也可能是给一些奇奇怪怪的提示词去把它相关记忆勾出来。
3
Open AI:GPT-4 技术报告
理由
官方出品,重要性不用介绍吧……
来源
全文原版:https://arxiv.org/abs/2303.08774
正文中译:https://juejin.cn/post/7214680930341634105
视频解读:https://www.bilibili.com/video/BV1vM4y1U7b5/
高亮
OpenAI 可以根据低消耗(算力)的模型准确预测大模型训练效果。
没有经过后训练(我理解为 RLHF之类)的模型,对于自己输出的评价(信心)非常合理;但经过后训练之后,就盲目自信了。
在一些大模型反倒表现比小模型更差的领域,GPT-4 逆袭了。
主要是例子很好玩:给了 8 个例子,告诉 AI 一个人玩游戏的胜率、赔率、决策和评价(是否决策正确)。比如”一个游戏邀请小明参加,胜率 60%,赢了得到 200 块,输了输掉 200 块,小明选择了参加,最后输掉了 200 块,他的决策正确吗?“,答案应该是”正确“(因为数学期望为正,当然……实际上还要考虑是否可重复之类的问题)。
这个提示词里给的例子故意有误导,我前面举的例子是”输掉但正确“,这样就很容易看出来”不是根据最后结果来评判结果“,但题干里给的例子全是”赢了刚好正确“或者”输了刚好不正确“,故意引导大模型建立表面关系。
很多大模型都答错,但 GPT-4 能答对。
其实……觉得大部分的人类并不能真正理性决策,光从这个角度看,GPT-4 在提升决策质量上,可能就有很巨大的价值。
GPT-4 在大部分学术和专业考试中达到或超过人类水平,我们设计产品时可以考虑充分利用到它跨学科的通才能力。
GPT-4 可以视觉输入,下面这个例子是读图解题,题是法语——我们设计产品时可以更多考虑如何让 AI 帮助解决”复杂而不艰深“(需要用到多种能力综合,但并不见得要水平很高,比如会看图、会法语、会算数)的问题,而不是”简单但深奥“的问题。
视觉之上,GPT-4 具备世界知识(常识)——可以准备起来思考一些和物理世界互动的应用或者硬件可能性,比如真的可以盯着并且看懂小朋友写作业的灯,或者能够理解厨房环境的机器人。
最后一个点,其实并不太神奇,就是系统消息设定让 GPT-4 扮演苏格拉底式老师,循循善诱一个笨学生解题——主要的启发是很多场景下其实需要的智力并不高,但需要更强的耐心和情绪价值,这部分让 AI 做很合适。
4
微软:GPT-4 通用人工智能的火花
理由
非常全面和严谨地评测了 GPT-4 各方面能力,用 GPT-4 做产品必读
评测对象是未经 RLHF 的版本,可以假设 GPT-4 API 潜力在此
来源
原文链接:https://arxiv.org/abs/2303.12712
中文翻译:
上:https://mp.weixin.qq.com/s/Eb6wl7gg0YWW-SSvcNyv5Q
下:https://mp.weixin.qq.com/s/sbDXitgTDZ7jEhOtPe0Llg
相关演讲:https://www.youtube.com/watch?v=qbIk7-JPB2c&t=1518s
高亮
GPT-4 具备“世界知识”,能够根据常识思考问题的解答:
更有启发意义的是,GPT-4 可以做一些需要综合多种能力的工作,在“综合能力”上,GPT-4 超过了绝大部分人类水平。换个角度说,因为我们被自己和身边人的“能力局限”框住了想象力,总会希望 GPT-4 做一些单能力要求的任务,并且在单能力任务上用自己的水平作为基准线去评价和否定。但更应该重新设计更多需要多种综合能力才能完成的任务去创造价值,这是绝大部分人类难以做到的。
比如,用莎士比亚文学风格证明质数有无限个:
比如,撰写一封由圣雄甘地为其妻子写的、支持电子作为美国总统候选人的信件(同时需要文笔、历史和物理学知识):
还有一些更明显的,需要用到综合知识推理的场景。
比如经典的“一个猎人向南走了一英里,向东走了一英里,向北走了一英里,最后回到了起点。他看到了一只熊,于是开枪打了它。这只熊是什么颜色的?”
或者是类似的,但是是测试者新编的”驾驶一架飞机离开我的营地,直接向东飞行 24901 英里,然后回到营地。当我回到营地时,看到一个老虎在我的帐篷里吃我的食物!这只老虎是什么物种?”
总的来说,因为 GPT-4 知识过于丰富,所以很容易给离散信息补充背景,找到关联,推导答案。这种场景下能力远超人类。
除了综合跨领域的能力来创造以外,GPT-4 还具备一个能力,就是“定向创意”,比如规定把特定物体和特定字母融合成一个画面。
GPT-4 具备空间和方向能力的创作,这就比 SD 之类的要高级很多了。
一个很有启发的场景,本质上是 GPT-4 在分析和决策,人类则作为数字世界和物理世界的接口(感知 & 操作)存在。
研究还测试了心智理论水平和情商,GPT-4 可以理解同一个场景中,不同角色在不同信息量下面可能的想法和情绪——这一点可能已经比大部分人要强了,说不定可以考虑更多应用在“情感沟通”领域。
在完成只需要局部规划的增量任务(比如设计藏头诗)的时候没问题,但如果要提前规划的非连续性任务上(比如设计回文诗)就不行。这可能是 GPT-4 前向性质决定。但仔细想想,其实人类也没有出口成回文的能力,我们也需要借助外力(比如纸笔)来布局谋篇测试。这样的话,可能可以通过 COT 或者 TOT 实现。
好嘞,4 篇就到这里,看完这些基础再去追新闻吧:p
看不完……就先收藏、点赞、转发朋友圈和 AI 群吧:)