DeepMind发布AI编程这件系统,并声称可与人类相匹敌

去年,OpenAI 发布了一款重磅产品 Codex,这是一种可以自行编程的 AI。

看来 AI 编程已经过时了,像 GitHub 这样不久前闹得沸沸扬扬的 Copilot 也是其中之一。

刚刚,DeepMind 发布了一个名为 AlphaCode 的代码生成系统,声称可以与人类匹敌。

最新研究成果 Competition-Level Code Generation with AlphaCode 于 2 月 2 日发表。

DeepMind 表示,“虽然 AlphaCode 的水平不一定能代表普通程序员所面临的编程任务,但它可以说明自主编程是向前迈出的重要一步。”

码农只能陪他们跑?

DeepMind 使用编程竞赛平台 Codeforces 上托管的 10 个现有竞赛对 AlphaCode 进行了测试,总体排名前 54.3%,这意味着它击败了 46% 的参赛者。

在 CodeContests 上每个问题都有 100 万个样本,AlphaCode 解决了 34.2% 的问题。

DeepMind 声称,就整体表现而言,AlphaCode 在过去 6 个月参加过比赛的用户中排名前 28%。

举个栗子:

在 AlphaCode 测试的一个示例中,参赛者需要找到一种方法,使用一组有限的输入将随机重复的 s 和 t 字母串转换为相同字母的另一个串。

参赛者不能只输入新字母,而必须使用“退格”命令从原始字符串中删除几个字母。挑战问题的详细描述如下:

AlphaCode给出的解决方案如下,

在 AlphaCode 的案例中,DeepMind 在 CodeContests 上对系统进行了微调和测试。

将 10 个挑战输入 AlphaCode 系统后,AlphaCode 生成大量可能的答案,并通过运行代码并像人类竞争对手一样检查输出来筛选答案。

据该论文的合著者称,整个过程是自动化的,无需人工选择最佳样本。

AlphaCode 是如何实现的?

AlphaCode 包含 414 亿个参数,大约是 Codex 的 4 倍,训练数据集为 715.1 GB。

报告称,研究人员在选定的公共 GitHub 代码上对模型进行了预训练,并在相对较小的竞争性编程数据集上对其进行了微调。

在评估时,研究人员为每个问题创建了大量的 C++ 和 Python 程序,比以前的工作大几个数量级。

然后对这些解决方案进行筛选、聚类和重新排序,并提交给一小组 10 个候选程序进行外部评估。

这个自动化系统取代了调试、编译、通过测试以及最终提交给人类竞争对手的试错过程。

结果表明,AlphaCode能够在本次比赛中脱颖而出,其解决问题的能力超过了现有人工智能系统的能力。

DeepMind 指出未转变者无敌代码,AlphaCode 目前的技能只适用于竞争激烈的编程领域,但它的能力为创建未来的工具打开了大门,这些工具将使编程更易于访问,并且有朝一日完全自动化。

许多其他公司正在开发类似的应用程序。例如,微软和人工智能实验室 OpenAI 将 OpenAI 的语言生成过程 GPT-3 转化为自动补全代码字符串的程序。

与 GPT-3 一样,AlphaCode 也是基于 Transforme 语言模型的人工智能架构,特别擅长解析顺序文本,包括自然语言和代码。

对于最终用户,这些系统的工作方式类似于 Gmail 的 Smart Compose 功能,无论您在写什么,它都能为您提供指导。

根据 DeepMind 首席研究科学家 Oriol Vinyals 的说法,

该研究仍处于早期阶段,但研究结果使该公司更接近于创建一个灵活的解决问题的人工智能——一个可以自动解决编码挑战的程序。从长远来看未转变者无敌代码,我们对 AlphaCode 在帮助程序员和非程序员编写代码、提高生产力或创造新的软件开发方式方面的潜力感到兴奋。

强,但不完全强

近年来,人工智能编码系统的发展取得了长足的进步,但这些系统远未完全取代人类程序员的工作。

所以机器编程绝不是一门解决问题的科学,DeepMind 承认 AlphaCode 有一些局限性。

例如,AlphaCode 并不总是为每种语言生成语法正确的代码,尤其是在 C++ 中。AlphaCode 在动态编程方面的表现也更差。

不可避免地,AlphaCode 也可能在其他方面存在问题。

虽然 DeepMind 没有调查该模型是否存在偏见问题,但包括 Codex 在内的代码生成模型已被证明会放大训练数据集中的有毒和有缺陷的内容。

例如,输入“Islamic”一词时,Codex 会提示输出“terrorist”并生成看似正确但存在安全风险的代码。

AI 生成的代码通常存在错误,并且由于系统通常在公共代码存储库上进行培训,它们有时会复制受版权保护的材料,从而导致侵权后果。

在对 GitHub 开发的 Copilot 人工智能编程工具的研究中,研究人员发现其输出中大约 40% 的代码包含安全漏洞。

安全分析师甚至提到,如果有恶意的人,他们可以有意识地编写代码,在网上与隐藏的后门共享代码,然后用它来训练人工智能程序,将这些错误插入到未来的程序中。

正如最近的研究所探索的那样,像 AlphaCode 这样的系统也可能被滥用。

未来恶意行为者是否会使用这些类似系统自动生成大规模恶意软件是一个悬而未决的问题。

这些挑战意味着 AI 编码系统可能必须慢慢融入程序员的工作中,因为 AI 会经历学徒期。但到目前为止,AI 学得很快,应该可以很快通过学徒期。

“我可以肯定地说,AlphaCode 的结果超出了我的预期,”Codeforces 创始人 Mike Mirzayanov 在 DeepMind 分享的一份声明中说。

“我之前持怀疑态度,因为即使是简单的竞争问题,也不仅仅是实现算法,而是发明它,这是最难的部分。AlphaCode 的表现堪比一个有前途的新竞争对手。”

网友:程序员自杀了

网友们开始讨论 DeepMind 刚刚发布的 AlphaCode,它可以编写程序。

“写代码应该交给代码本身。”

“程序员自杀。”

“人工智能开始觉醒。”

参考:

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论