中国金融网 加入收藏    设为首页
首页
国内资讯社会财经科技教育时尚娱乐房产家居汽车母婴健康商业区块链生活企业传媒区域经济旅游体育
您现在的位置:首页 > 区域经济 > 正文
会写代码的AI开源了:C语言写得比Codex还要好,掌握12种编程语言
2022-03-09 03:05      来源:IT之家      编辑:如思      阅读量:18470   

比 Codex 还会写 C 语言的 AI 代码生成模型,现在开源了!

会写代码的AI开源了:C语言写得比Codex还要好,掌握12种编程语言

这段时间,用 AI 写代码可以说是大火,其中最著名的要属 OpenAI 的 Codex 和 DeepMind 的 AlphaCode。

基于 Codex 的 Copilot

可是,这两个 AI 模型,全都没有开源:其中 AlphaCode 只给出了一些测试样例,而 Codex 只开放了 API。

为此,来自 CMU 的几个研究人员,用 GPT—2 搞出了一个名叫 PolyCoder 的 AI 代码生成模型,而且还是开源的。

据研究人员表示,虽然 PolyCoder 最大只有 27 亿参数,但它用 C 语言写出来的代码,比 Codex 的效果还要好。

这里面究竟有什么秘诀。

用 12 种编程语言代码集训练

首先来看训练用的数据集,这也是 PolyCoder 的最大特点之一此前,包括 Codex,CodeParrot 等 AI 代码生成模型,主要都是基于 Python 语言的代码来训练

例如 Codex 的评估数据集之一 HumanEval,评估的也是生成 Python 代码的效果。

相比之下,PolyCoder 采用了多种编程语言代码集来训练,一共有 12 种:C,C#,C++,Go,Java,JavaScript,PHP,Python,Ruby,Rust,Scala 和 TypeScript。

其中,C 语言的代码量是最多的,达到了 221GB,而 Python 代码的数据量比 Codex 和 CodeParrot 用得都要少。

这里 PolyCoder 用的是 GitHub 上的公开代码,主要选取的是各种编程语言中比较受欢迎的库,每个库至少有 50 Stars。

据研究人员表示,每种编程语言库的 Stars 总数加起来不超过 25k,以避免模型生成的代码效果太过于倾斜最流行的编程语言。

通过提取库中的文件,经过简单处理后,一共筛选出大约 254GB 的数据用于训练。

然后是预训练的方法。

语言模型的预训练方法通常有三种第一种是自左向右的语言模型,根据上文预测下文,比较适用于代码生成等,第二种是掩蔽语言模型,基于上下文预测屏蔽片段,比较适合代码分类等,第三种是编解码器模型,比较适用于代码注释等任务

这里 PolyCoder 主要采用的是第一种预训练方法。

相比于同样采用 GPT—2 训练的 CodeParrot 和 Codex,PolyCoder 在超参数设置上也稍微有一些差异:

PolyCoder 一共提供了三种不同的模型,分别有 27 亿参数,4 亿参数和 1.6 亿参数,研究人员可以根据自身需求和不同的训练能力来选取合适的模型。

那么,最终训练出来的 AI 模型,代码生成效果如何。

C 语言写得尤其好,但 Python 不行

研究人员将 PolyCoder 与已有的 AI 代码生成模型进行了对比由于 AlphaCode 不好比较,所以研究人员主要分析了下面这些模型,包括 GPT—Neo,CodeParrot 和 Codex 等

其中蓝色的是开源的,橙色的是没开源的:

从参数量来看,PolyCoder 并不是最顶尖的,最大的 27 亿参数模型也只有 Codex 的四分之一不到。

研究人员先是用语言模型评估常用的困惑度对一系列模型进行了比较。

困惑度,用于衡量语言模型的好坏困惑度越低,语言模型面对代码感到困惑的程度就越低,模型生成效果越好

从图中来看,PolyCoder 在 C 语言中意外取得了最好的效果。其次是TypeScript,JavaScript和Python,由在浏览器中本地运行的语言服务提供支持,语法高亮,单文件自动补全,语法错误提示等功能都有,使用体验“良好”;。

用大量 C 语言训练 PolyCoder 的结果说明,即使模型整体原理不变,单纯改变训练用的代码集,也能训练出擅长不同语言风格的 AI 代码生成模型。

可惜的是,从其他语言来看,生成的效果就完全没办法和 Codex 相比了:

例如,在主要用于评估 Python 代码的 HumanEval 上,PolyCoder 的能力远不如 Codex 好:

据论文分析,这可能是 Python 代码数据量,模型参数量不足等原因导致的。

目前代码已经开源,无论是直接拿来用,还是试着在它的基础上开发新模型都可以。

感兴趣的小伙伴可以上手一试了~

一作许方正,目前在 CMU 读博,研究方向是 NLP,信息抽取等,发表过多篇顶会论文,包括 ICLR,ACL 和 EMNLP 等本硕毕业于上海交通大学,师从朱其立教授

Uri Alon,在 CMU 进行博士后工作,研究方向是编程语言处理,NLP 和深度学习。

Graham Neubig,CMU 助理教授,研究方向是 NLP,机器翻译和基于机器学习的自然语言理解。

Vincent J. Hellendoorn,CMU 计算机助理教授,主要研究方向是软件工程和机器学习,致力于利用智能方法帮助软件开发人员减少代码调试,程序优化等繁琐工作的时间。

项目地址:

论文地址:

郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。

 
上一篇: 新船市场超预期回升中国船舶2021年量价显著上涨
下一篇:最后一页
 
     栏目排行
  1. 新船市场超预期回升中国船舶2021年量价
  2. 完美日记母公司财报披露前夕迎大涨,股价近
  3. 北京冬奥组委:冬残奥会期间总体防疫效果较
  4. 全天综合:残奥冬季两项刘梦涛摘金残奥冰球
  5. 精准流调再添“利器”三河市流调小程序正式
  6. 大豪科技:公司董事长已经办理完毕法定退休
  7. 苹果iPhone13/13Pro全新绿色
  8. 全球首套:中国千吨级二氧化碳加氢制汽油示
  9. 三星创下另类吉尼斯世界纪录:最多Gala
  10. 育碧和Take-Two宣布在俄罗斯暂停游
     栏目推荐
京郊民宿暂别高歌猛进 市场转换中回归理性京郊民宿暂别高歌猛进 市场转换中回归理性
二手房“带押过户”启动满月 成功尝鲜者寥寥无几二手房“带押过户”启动满月 成功尝鲜者寥寥无几
2022年营收78.61亿,汤臣倍健迎来VDS行业新2022年营收78.61亿,汤臣倍健迎来VDS行业新周期
大兴国际氢能示范区兼顾产业发展和配套服务打造员工理想大兴国际氢能示范区兼顾产业发展和配套服务打造员工理想生活蓝本
迪丽热巴穿军绿色也好美!和吴磊同框丝毫没有年龄迪丽热巴穿军绿色也好美!和吴磊同框丝毫没有年龄