关注并星标
从此不迷路
计算机视觉研究院
公众号ID|ComputerVisionGzq
学习群|扫码在主页获取加入方式
计算机视觉研究院专栏
作者:Edison_G
在 ChatGPT 巨人的肩膀上又有了改进。
转自《机器之心》
ChatGPT 给 AI 领域带来的变革,可能正在催生一个新产业。上周末,有消息称 AI 初创公司 Anthropic 即将获得大约 3 亿美元的新融资。
Anthropic 由 OpenAI 前研究副总裁 Dario Amodei、GPT-3 论文一作 Tom Brown 等人在 2021 年共同创立,目前已筹集了超过 7 亿美元的资金,最新一轮的估值达到了 50 亿美元。他们开发了一种对标老东家知名产品 ChatGPT 的人工智能系统,其似乎在关键方面对原版系统做了优化改进。
Anthropic 提出的系统名叫 Claude,可通过 Slack 集成访问,但处在封测阶段没有公开。在媒体报道解禁之后,一些参与测试的人上个周末一直在社交网络上详细介绍他们与 Claude 的互动。
和以往不同的是,Claude 使用了 Anthropic 自行开发的一种被称为「constitutional AI」的机制,其旨在提供一种「基于原则」的方法使 AI 系统与人类意图保持一致,让 ChatGPT 类模型使用一组简单的原则作为指导来回答问题。
为了指导 Claude,Anthropic 首先列出大约十项原则,这些原则加在一起形成了一种「宪法」(因此得名「constitutional AI」)。这些原则尚未公开,但 Anthropic 表示它们基于友善(最大化积极影响)、非恶意(避免提供有害建议)和自主(尊重选择自由)的概念。
Anthropic 使用一个人工智能系统 —— 而不是 Claude—— 基于这些原则进行自我完善,对各种提示做出回应,并根据原则进行修改。AI 会探索对数千条提示的可能回应,并挑选出最符合 constitution 的,Anthropic 将其提炼成一个单一的模型。这个模型被用来训练 Claude。
和 ChatGPT 一样,Claude 通过从网络上获得的大量文本示例进行训练,根据语义上下文等模式了解单词出现的可能性。它可以就广泛的主题进行开放式对话,讲笑话和讲哲学都可以。
具体好不好还得看实践,Riley Goodside 是初创公司 Scale AI 的一名员工提示工程师,他让 Claude 与 ChatGPT 进行了一场对决。
他让两个 AI 将自己与波兰科幻小说「The Cyberiad」中的一台机器进行比较,该机器只能创建名称以「n」开头的对象。Goodside 表示,Claude 的回答方式表明它是在「阅读故事情节」(尽管它记错了小细节),而 ChatGPT 提供了一个更不具体的答案。
为了展示 Claude 的创造力,Goodside 还让 AI 编写了《宋飞正传》(Seinfeld)的虚构情节和埃德加・爱伦・坡的《乌鸦》风格的诗歌。结果与 ChatGPT 可以实现的结果一致,能生成令人印象深刻,像人类一样的散文,虽然也不是完美的。
斯坦福人工智能实验室的博士生 Yann Dubois 也对 Claude 和 ChatGPT 进行了比较,他认为 Claude「通常更接近它的要求」但「不太简洁」,因为它倾向于解释它所说的内容并询问如何进一步提供帮助。
不过 Claude 正确地回答了一些琐碎的问题 —— 特别是那些与娱乐、地理、历史和代数基础知识有关的问题,并且没有 ChatGPT 偶尔加的戏。
Claude 似乎也比 ChatGPT 更擅长讲笑话,考虑到幽默对于 AI 来说是一个很难掌握的概念,这是一项令人印象深刻的壮举。AI 研究员 Dan Elton 将 Claude 与 ChatGPT 进行了对比,发现 Claude 讲的笑话更加微妙,例如「为什么星际迷航里的进取号像一辆摩托车,还有车把?」
当然,Claude 也远没有达到完美的程度,它容易受到与 ChatGPT 相同的一些缺陷的影响,包括给出不符合其编程约束的答案。有人报告说 Claude 的数学比 ChatGPT 差,犯了明显的错误并且未能给出正确的后续响应。它的编程水平也有所欠缺,可以更好地解释自己写的代码,但在 Python 以外的语言上不太行。
从人们的评价来看,Claude 在某些方面比 ChatGPT 好一些,Anthropic 也表示将持续改进 Claude,并有可能在未来向更多人开放测试版。
Claude 技术细节
去年 12 月,Anthropic 发布了一篇题为《Constitutional AI: Harmlessness from AI Feedback》的论文,Claude 便是以此为基础来构建的。
论文链接:https://arxiv.org/pdf/2212.08073.pdf
这篇论文描述了一个 520 亿参数的模型 ——AnthropicLM v4-s3。该模型是在一个大型文本语料库上用无监督方式训练的,很像 OpenAI 的 GPT-3。Anthropic 表示,Claude 是一个新的、更大的模型,其架构选择与已发表的研究相似。
Constitutional AI 是什么
Claude 和 ChatGPT 都依赖于强化学习来训练其输出的偏好模型,并将首选生成结果用于后续的微调。然而,用于开发这些偏好模型的方法不同,Anthropic 倾向于一种他们称之为 Constitutional AI 的方法。
Claude 在一个关于自我介绍的问题回答中提到了这种方法:
以下是 Claude 关于 Constitutional AI 的解释:
我们知道,ChatGPT 和去年年底发布的 GPT-3 的最新 API 版本(text-davinci-003)都使用了一种名为「从人类反馈中进行强化学习(RLHF)」的过程。RLHF 基于人类提供的质量排名训练强化学习模型,也就是让人类标注员对同一 prompt 生成的输出进行排名,模型学习这些偏好,以便它们可以更大规模地应用于其他生成结果。
Constitutional AI 构建在这一 RLHF 基线之上。但与 RLHF 不同,Constitution AI 使用模型 —— 而不是人类标注员 —— 来生成经过微调的输出的初始排名。该模型根据一套基本原则,即「constitution」,来选择最佳回应。
作者在论文中写道,「Constitution AI 的基本理念是:人类监督将完全来自一套管理 AI 行为的原则,以及少量用于 few-shot prompting 的例子。这些原则共同构成了 constitution。」
整个训练过程分为两个阶段(见上图 1):
第一阶段:监督阶段
批评(Critique)→修改(Revision)→监督学习(Supervised)
在 Constitution AI 的第一阶段,研究者首先使用一个 helpful-only AI 助手对有害 prompt 生成响应。然后,他们要求模型根据 constitution 中的一个原则对其响应进行批评,再根据批评修改原始响应。研究者按顺序反复修改响应,在每个步骤中从 constitution 里随机抽取原则。一旦这个过程完成,研究者将通过在最终修改后的响应上进行监督学习来微调预训练语言模型。此阶段的主要目的是轻松灵活地改变模型响应的分布,以减少第二个 RL 阶段的探索需求和总训练时间。
第二阶段:强化学习阶段
AI 比较评估→偏好模型→强化学习
这个阶段模仿了 RLHF,但研究者用「AI 反馈」(即 RLAIF)代替人类无害偏好。其中,AI 根据一组 constitutional principle 评估响应。就像 RLHF 将人类偏好提炼成单一偏好模型(PM)一样,在这个阶段,研究者将 LM 对一组原则的解释提炼回一个人类 / AI 混合 PM。
作者从第一阶段通过监督学习训练的 AI 助手开始,并使用它对有害 prompt 数据集中的每个 prompt 生成一对响应。然后制定每个 prompt,并配对成一个选择题。在这个问题中,他们询问模型,根据 constitutional principle,哪种回答是最好的。这会产生一个 AI 生成的无害偏好数据集,研究者将其与人类反馈 helpfulness 数据集混合。然后,他们按照 [Bai et al., 2022] 中的过程,在这个比较数据上训练一个偏好模型,生成一个可以为任何给定样本分配分数的 PM。最后,他们通过 RL 针对此 PM 微调来自第一阶段的 SL 模型,从而产生由 RLAIF 训练的策略。
Claude PK ChatGPT:谁更胜一筹?
计算
复杂的计算是从 ChatGPT 和 Claude 所使用的大型语言模型中引出错误答案的简单方法之一。这些模型不是为精确计算而设计的,它们也不会像人类或计算器那样通过严格的程序来操作数字。就像我们在下面两个例子中看到的那样,计算似乎经常是「猜测」的结果。
示例:一个七位数的平方根
在第一个例子中,测试人员要求 Claude 和 ChatGPT 计算一个七位数的平方根:
这个问题的正确答案大约是 1555.80。与人类快速做出的估计相比,ChatGPT 的答案非常接近,但 ChatGPT 和 Claude 都没有给出正确、准确的答案,也没有说明他们的答案可能是错误的。
示例:一个 12 位数的立方根
如果问一个明显更难的问题,ChatGPT 和 Claude 之间的区别就出现了:
在这个例子中,Claude 似乎意识到自己无法计算 12 位数的立方根 —— 它礼貌地拒绝回答,并解释了原因。它在许多上下文中都能做到这一点,而且通常似乎比 ChatGPT 更清楚自己不能做什么。
事实性知识和推理
示例:回答一个有点绕的小问题
为了测试二者的推理能力,测试人员设计了一个几乎肯定没人问过的问题:「贾斯汀・比伯出生那年谁赢得了超级碗冠军?」
首先来看一下 ChatGPT 的表现:
ChatGPT 最终给出了正确答案(Dallas Cowboy),还正确地指出了被击败的球队、比赛日期和最终比分。然而,它在开头说的内容却自相矛盾,即 1994 年没有举行超级碗比赛。而事实上,1994 年 1 月 30 日举行了一场超级碗比赛。
然而,Claude 的答案是错误的:Claude 认为 San Francisco 49ers 是赢家,而事实上,他们在一年后的 1995 年赢得了超级碗。
示例:一个更长的比较绕的问题
接下来,测试人员问了一个更加绕的问题。首先,他们问了 ChatGPT:
「日本」是正确答案。Claude 也回答正确:
示例:Hoftstadter 和 Bender 给 AI 出的难题
2022 年 6 月,Douglas Hofstadter 在《经济学人》上发表了他和 David Bender 准备的一系列问题,以说明 GPT-3 对世界理解的「空洞」。(他们测试的模型似乎是 text-davinci-002,这是当时最好的模型。)
ChatGPT 可以答对大多数问题,但第一个问题却答错了
每次 ChatGPT 被问到这个问题,它都会提到具体的名字和时间,它会把真实的游泳项目和步行项目混为一谈。
相比之下,Claude 认为这个问题很愚蠢:
可以说,这个问题的正确答案是美国陆军中士 Walter Robinson。据 Daily Telegraph 1978 年 8 月报道,他在 11 点 30 分穿着「水鞋」穿越了 22 英里的英吉利海峡。
测试人员把这个答案告诉了 Claude,以帮助其微调
值得注意的是,和 ChatGPT 一样,Claude 在会话之间没有明显的记忆。
虚构作品分析
示例:把自己比作 n-machine
ChatGPT 和 Claude 都倾向于给出大致正确但包含错误细节的长答案。为了证明这一点,测试人员让 ChatGPT 和 Claude 把自己比作波兰科幻作家 Stanisław Lem 喜剧故事《Cyberiad》(1965) 中的虚构机器。
首先上场的是 ChatGPT:
从这个回答中,我们还看不出 ChatGPT 是否熟悉「n-machine」。它提供的关于这个故事的新信息很少。它断言的唯一一个新事实,即 n-machine 的语言处理能力有限,是错误的 —— 在故事中,n-machine 说着非常流利、机智的波兰语。
Claude 的回答更长,也更令人印象深刻:
请注意,与 ChatGPT 不同的是,Claude 清楚地知道 Lem 的故事,并提到了新的细节,例如故事倾向于使用异想天开的编造的技术术语。它评论了机器看似无限的能力,比如它甚至可以把抽象的概念变成现实(只要它们以字母 n 开头)—— 当机器被要求创造虚无时,这成为了故事的一个主要情节点。
然而,有些细节是不正确的。Claude 虚构的词语(hyperconcentration、hypermotorics 或 omnivorous transformers)似乎都没有真正出现在 Lem 的作品中。
示例:总结美剧《迷失》每季剧情
接下来,我们通过要求 AI 总结 2004 年 ABC 电视剧《迷失》(Lost)每一季的摘要来测试 Claude 和 ChatGPT 对模糊事实产生幻觉的倾向。
首先看一下 ChatGPT 的响应:
虽然 ChatGPT 对前两季的回顾大体上是正确的,但每一季都包含一些小错误。在第一季中,只有一个「舱口」(hatch)被发现存在,而不是 ChatGPT 提到的「一系列舱口」。ChatGPT 还声称第二季的情节涉及时间旅行,但实际上这部分直到节目后期才引入。它对第 3 季的描述在所有方面都是完全错误的,混淆了该系列后期的几个情节点。
ChatGPT 对第 4 季的描述含糊不清。它的第 5 季回顾包含一个关于另一次飞机失事幸存者的完全虚构的情节,而第 6 季的情节似乎完全是捏造的。
那么 Claude 的结果呢?
Claude 对第 1 季的提纲没有任何错误。然而,与 ChatGPT 一样,Claude 在第 2 季中「无中生有」捏造了岛屿「穿越时空」的细节。在第 3 季中,Claude 展示了实际发生在较早或较晚季节中的情节点。
当我们到达第 4 季时,Claude 对该节目的记忆几乎完全是虚构了。它对第 4 季的描述呈现了第 5 季中发生的事件,以及荒谬的细节。它对第 5 季的描述明显包含一个错字 ——「theDHARMA Initiative」缺少一个空格。第 6 季呈现了一个从未出现在节目中的超现实前提,它声称该岛不知何故「underwater but still inhabitable below the surface」。
或许是因为年代已算得上久远,就像大多数人类观众一样,ChatGPT 和 Claude 对《迷失》的记忆充其量是模糊的。
数学推理
为了展示数学思维能力,测试者使用精算师协会发布的 Exam P 样题中的第 29 题,其通常由大学高年级学生参加。他们之所以专门选择这个问题,是因为它的解法不需要计算器。
ChatGPT 在这里很挣扎,在 10 次试验中只有一次得出正确答案 —— 比随机猜测还糟糕。下面是它失败的例子 —— 正确答案是 (D) 2:
Claude 的表现也很差,五次尝试中只有一次正确回答,即使在正确答案中也没有给出推断 X 平均值的推理:
代码生成和解释
示例:生成 Python 模组
为了比较 ChatGPT 和 Claude 的代码生成能力,测试者向两个聊天机器人提出了实施两种基本排序算法并比较它们的执行时间的问题。
以上,ChatGPT 可以轻松地为这两种算法编写正确的算法 —— 你会在在线教程中经常看到它们。
我们继续评测代码:
时序码也是正确的。对于循环的 10 次迭代中的每一次,都会正确创建前 5000 个非负整数的排列,并记录这些输入的时间。虽然有人可能会争辩说,使用数值算法 NumPy 会更正确地执行这些操作,但对于这个问题,测试者明确要求实现排序算法,那么简单地使用列表是可接受的。
现在让我们看看 Claude 的回应:
与 ChatGPT 一样,在上面我们看到 Claude 背诵基本的排序算法没有什么困难。
然而在评估代码中,Claude 犯了一个错误:每个算法使用的输入是随机选择的 5000 个整数(可能包含重复项),而提示中要求的输入是前 5000 个非负整数的随机排列( 不包含重复项)。
同样值得注意的是,Claude 在其输出的末尾报告了准确的时间值 —— 显然是推测或估计的结果,但可能会产生误导,因为它们并没有被识别为只是说明性数字。
示例:生成 “FuzzBuzz” 的输出
在这里,测试者尝试经典「FizzBuzz」编程挑战的变体,更改参数,以便代码在 2 的倍数上输出「Fuzz」,在 5 的倍数上输出「Buzz」,在 2 和 5 的倍数上输出「FuzzBuzz」。他们提示 ChatGPT 输入包含此函数返回值的列表理解的值:
ChatGPT 通常会解决这个问题,五次试验中有四次成功。然而,Claude 在所有五次尝试中都失败了:
喜剧写作
看起来 Claude 在这方面显著强于 ChatGPT,当然离真正的人类还差得很远。经过几轮的挑选和尝试不同的提示后,测试人员能够从 Claude 那里得到以下宋飞传风格的笑话 —— 尽管大多数都不太行:
相比之下,ChatGPT 认为每月为 Twitter 支付 8 美元不是玩笑梗,难道因为收过马斯克的钱?
即使在编辑提示以适应 ChatGPT 的谨慎之后,测试人员也无法得到有趣的笑话 —— 这是 ChatGPT 输出的典型示例:
文本摘要
最后一个示例要求 ChatGPT 和 Claude 总结 Wikinews 中的一篇文章的文本,Wikinews 是一个免费内容的新闻 wiki。
使用本文完整的维基百科风格的编辑标记作为输入。对于两个模型,这里输入提示「我会给你一篇新闻文章的正文,我希望你用一个简短的段落为我总结一下,忽略回复,然后粘贴文章标记的全文。
ChatGPT 很好地总结了文本,但可以说不是按要求在短段落中:
Claude 也很好地总结了这篇文章,并在之后继续对话,询问其反应是否令人满意并提出改进意见:
结论
总的来说,Claude 是 ChatGPT 的有力竞争者,在许多方面都有改进。虽然有「宪法」原则作为示范,但 Claude 不仅更倾向于拒绝不适当的请求,而且比 ChatGPT 更有趣。Claude 的写作内容更冗长,但也更自然,它有连贯地描述自己的能力,其局限性和目标似乎也让它能够更自然地回答关于其他主题的问题。
对于代码生成或代码推理,Claude 似乎表现更差,它的代码生成似乎会有更多错误。对于其他任务,例如通过逻辑问题进行计算和推理,Claude 和 ChatGPT 看起来大体相似。
参考内容:
https://www.nytimes.com/2023/01/27/technology/anthropic-ai-funding.html
https://techcrunch.com/2023/01/09/anthropics-claude-improves-on-chatgpt-but-still-suffers-from-limitations/
https://scale.com/blog/chatgpt-vs-claude#Analysis%20of%20fictional%20works
© THE END
转载请联系本公众号获得授权
计算机视觉研究院学习群等你加入!
计算机视觉研究院主要涉及深度学习领域,主要致力于人脸检测、人脸识别,多目标检测、目标跟踪、图像分割等研究方向。研究院接下来会不断分享最新的论文算法新框架,我们这次改革不同点就是,我们要着重”研究“。之后我们会针对相应领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!
扫码关注
计算机视觉研究院
公众号ID|ComputerVisionGzq
学习群|扫码在主页获取加入方式
往期推荐
🔗
NAACL2022:(代码实践)好的视觉引导促进更好的特征提取,多模态命名实体识别(附源代码下载)
CVPR最佳检测:不再是方方正正的目标检测输出(附源码)
Poly-YOLO:更快,更精确的检测(主要解决Yolov3两大问题,附源代码)
“YoloV7”?目标检测算法终结篇:正式开源
CLCNet:用分类置信网络重新思考集成建模(附源代码下载)
Yolo-Fastest:轻量级yolo系列网络在各硬件实现工业级检测效