Openai Codex显示大型语言模型的限制

7.

本文是我们的一部分yabet468.ccAI研究论文的评论,一系列探索人工智能最新发现的一系列职位。www.yabovip4

在一篇新论文中,OpenAI的研究人员揭示了Codex的细节,Codex是一种生成软件源代码的深度学习模型。Codex power Copilot,一个人工智能对程序员“由Openai和GitHub共同开发的工具。Copilot目前以Beta测试模式提供给有限数量的用户。

是一个迷人的阅读,解释了Openai的科学家通过该过程管理,以便将他们的旗舰语言模型GPT-3重新调整Codex。但更重要的是,这篇论文还避免了迫切需要的光线,你可以信任在编程中的深度学习。

“没有免费的午餐”定理

食典是一个后代GPT-3.,去年是一种大规模的深层学习语言模型。复杂性深入学习模式通常通过它们具有的参数数量来衡量。通常,模型的学习能力随着参数的数量而增加。GPT-3带有1750亿个参数,比其前身大超过两个数量级,GPT-2(参数为15亿)。GPT-3培训超过600千兆字节,比GPT-2培训数据集大超过50倍。

除了大小的巨大增加,GPT-3的主要创新是“少量学习“执行训练中没有训练过的任务的能力。这介绍GPT-3的纸张被标题为“语言模型是很少拍摄的学习者”并陈述:“我们在这里展示缩放语言模型大大提高了任务不可知的,几次射击性能[强调矿井],有时甚至达到先前最先进的FineTuning方法的竞争力。“

基本上,前提是在大型文本语料库上培训的大量模型可以匹配或优于专门针对特定任务的多种型号。

但根据Openai的新文件,GPT-3的各种版本都不能解决用于评估法典的任何编码问题。要公平,GPT-3的训练数据集没有编码样本,因此我们不能指望它能够编码。但是,Openai科学家还测试了GPT-J,训练了60亿参数模型,一个800千兆字节数据集,包括95千兆字节的GitHub和32千兆字节的Stackexchange数据。GPT-J解决了11.4%的编码问题。Codex,GPT-3的120亿参数Fineetuned来自GitHub的159千兆字节的代码示例,解决了28.8%的问题。单独版本的Codex,称为Codex-s,通过监督学习将其提升到37.7%的性能(其他GPT和Codex模型通过无人监督的学习)。

Codex VS GPT-3
Codex可以解决大量的编码挑战。具有监督学习(Codex-S)的模型的版本进一步提高了性能。

法典证明了机器学习仍然由“没有免费午餐“定理(NFL),这意味着泛化是以性能成本的。换句话说,当旨在解决一个特定问题时,机器学习模型更准确。另一方面,当他们的问题域名拓宽时,它们的性能会降低。

Codex可以在穷人的成本下执行一个专业任务(将功能描述和签名转换为源代码)自然语言处理能力。另一方面,GPT-3是一种常规语言模型,可以生成关于大量主题的体面文本(包括复杂的编程概念),但无法编写单行代码。

大小与成本为

Openai的研究人员的实验表明,根据增加机器学习模型的规模,Codex的性能提高。在3亿参数中,Codex解决了13.2%的评估问题,抵御120亿参数模型的28.8%的表现。

但GPT-3的完整版本有1750亿个参数,比创建Codex所用的参数大了整整一个数量级。对大型模型进行食品法典培训数据的培训难道不会产生更好的结果吗?

停止120亿的一个可能的原因可能是数据集大小。更大的Codex模型需要更大的数据集。在159千兆字节的语料库上培训它可能会导致过度装备,在那里,该模型变得非常善于记忆和排练其培训示例,并在处理新颖情况下非常糟糕。收集和维护更大的数据集是昂贵且耗时的过程。

同样令人烦恼的问题将是Codex的成本。除了科学的实验之外,Codex应该成为未来产品的骨干,可以转入研究实验室的利润准有市通过商业实体。正如我之前已经讨论过的那样,培训和运行的成本175亿GPT-3模型将使它很难发展一个有利可图的商业模式周围。

然而,在利润和损失方面,GPT-3的较小但FineTuned版本将更为可控。

最后,作为Openai的实验表明,Codex的尺寸/绩效比率遵循对数尺度。这意味着随着模型的大小增加,性能收益逐渐减少。因此,收集数据和培训和运行较大模型的增加的成本可能是不值得小的性能提升。

并注意代码生成是一个非常有利可图的市场。鉴于程序员的高每小时工资,甚至节省了每月的数小时的编码时间就足以支付食品法典的订阅费用。在劳动力不足昂贵的其他域中,具有大语言模型的自动化任务将从利润和损失的角度更具挑战性。

生成VS了解代码

需要提醒的一件事是,无论Codex的产出如何,无论是多么令人迷人的输出,深度学习模式都不了解编程。像其他人一样基于深度学习的语言模型Codex正在捕获代码片段之间的统计相关性。

OpenAI的科学家在他们的论文中承认,Codex“培训的样本效率不高”,而且“即使是经验丰富的开发人员,在他们的职业生涯中也不会遇到这么多代码。”

他们进一步补充说,“一名完成介绍性计算机科学课程的强大学生将能够解决比Codex-12B的更大的问题。”

Here’s an interesting excerpt from the paper: “We sample tokens from Codex until we encounter one of the following stop sequences: ‘\nclass’, ‘\ndef’, ‘\n#’, ‘\nif’, or ‘\nprint’, since the model will continue generating additional functions or statements otherwise.”

这意味着即使已经完成了解决提示中规定的问题的块,Codex也会毫无意义地继续生成代码。

这是一种运作良好的方案,当您想要解决重复时间和再次的简单问题时。但是,当您缩小并尝试编写一个解决必须在多个步骤中解决问题的大程序时,Codex的限制变得明显。

Openai的科学家发现,随着功能描述中的组件数量增加,模型的性能呈指数级增长。

“这种行为是一个人类程序员的一种不可结构的人,他应该能够正确地实施一系列任意长度的程序,如果他们可以为长度的链条,”研究人员写在纸上。

Openai法典复杂问题解决
Openai的Codex在需要合成多个组件的编码问题时失败。

Further exposing Codex’s lack of understanding of program structure and code is the fact that it “can recommend syntactically incorrect or undefined code, and can invoke functions, variables, and attributes that are undefined or outside the scope of the codebase,” according to the paper. Practically, this means that in some cases, the machine learning model will stitch together different pieces of code it has previously seen, even if they don’t fit together.

在他们的论文中,研究人员还在食谱中讨论了“未对准”问题,其中模型可以解决特定问题,但由于各种错误而非这样做。Codex使用您正在处理的文件的内容作为上下文来生成其输出。如果你的代码包含微妙的错误(如果你是人类程序员,那是一个非常正常的),Codex可能会“故意”建议,研究人员警告说,Codex可能会“刻意”建议代码。

未对准是一种有趣的现象,需要进一步研究。但是Openai的实验进一步表明,如果数据,参数和培训时间缩放,则“如果数据,参数和培训时间缩短,则”未对准可能持续甚至更差“,这可能是保持模型尺寸在120亿参数下平衡的另一个原因。

本文还广泛地讨论了Codex生产已弃用和脆弱的代码(这是值得独立的文章,所以我没有在这里讨论)。

Openai Codex Misalignment.
如果提示的上下文包含细微犯错误,Openai的Codex可能会故意错误。

负责任的使用和报告ai

正如我在释放副驾驶后所说的那样,“AI对程序员”,在Github的CopIlot网页上使用的术语是不准确的。

食典委不是程序员。而且它也不会带你的工作(如果你是程序员)。编码只是程序员所做的一部分。Openai.’s scientists observe that in its current state Codex “may somewhat reduce the cost of producing software by increasing programmer productivity,” but it won’t replace the other tasks that software developers regularly do, such as “conferring with colleagues, writing design specifications, and upgrading existing software stacks.”

对于程序员来说,编制法典也可以导致“过度依赖”,程序员盲目地批准模型生成的任何代码而不修改它。鉴于明显而细微的错误法典可以制造,忽略这种威胁可能需要质量和安全风险。“安全使用代码生成系统等人类监督和警惕,因为Codex这样的代码生成系统,”Openai的研究人员在纸上发出警告。

总的来说,程序员社区的反应表明,Codex是一个非常有用的工具,对软件行业的未来可能产生巨大影响。与此同时,鉴于围绕副本释放的炒作,了解其不必要的含义非常重要。在这方面,值得在Openai的人们为负责任地学习,记录和报告食品典礼的限制和威胁。

1评论

留下一个回复

本网站使用AkisMet减少垃圾邮件。了解如何处理您的评论数据