热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

训练AI写代码还在用GitHub?ProjectCodeNet或是更优解:1400万代码,50种编程语言...

👇👇关注后回复“进群”,拉你进程序员交流群👇👇来源公众号丨新智元https:mp.weixin.qq.

👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇

来源公众号丨新智元

https://mp.weixin.qq.com/s/mAEXLLGbwCNSxebwqdaHQQ

bfa4738c266e6087d164c84265c57d1a.png


  新智元报道  

来源:thenextweb

编辑:LRS

【新智元导读】深度学习的转折点往往都发生在不经意间。IBM的Project CodeNet发布五个多月仍未引起过多关注,但它可能是助力AI编程的最有用的数据集,但它的风头似乎都被Copilot抢走了,至今未见过多宣传,沦为小众数据集。

如今写代码已经成为各行各业的必备技能,学会写代码可以让计算机代替我们做一些重复的工作,极大提升工作效率。

但一个真正能帮你写代码的AI程序离我们还有多远?

5月5日,IBM向极少数媒体和学术界发布了Project CodeNet,在当时并未引起过多关注。

CodeNet完美继承了ImageNet的思想。ImageNet是一个大规模的图像及其描述数据集,为CV 的模型发展和标准化提供了巨大的帮助,也是深度学习计算机视觉进步的核心, 并且图像可免费用于非商业用途。 

850df28172a65454b9923a8c5effcde4.png

CodeNet的目标是为人工智能写代码提供一个标准的数据库,它包含超过1400 万个代码样本,涵盖50种编程语言,能够解决4000个编码问题。该数据集还包含许多附加数据,例如软件运行所需的内存量和运行代码的日志输出。

IBM表示,Project CodeNet是同类中最大、最具差异的数据集,它解决了当今编码中的三个主要用例:代码搜索(自动将一种代码翻译成另一种代码,包括像COBOL这样的遗留语言);代码相似性(识别不同代码之间的重叠和相似性);还有代码约束(根据开发人员的特定需求和参数定制约束)。

然而有安全研究人员认为CodeNet和类似项目最重要的影响不是优化代码,而是增加了自然语言编码(Natural Language Coding, NLC)的可能性。

近年来,OpenAI和Google等公司一直在快速改进自然语言处理(NLP)技术。这些是机器学习驱动的程序,旨在更好地理解和模仿自然人类语言并在不同语言之间进行翻译。训练机器学习系统需要访问包含以所需人类语言编写的文本的大型数据集。

8a380e6df6640d5f1c7536a6889aac41.png

但写代码是一项很难学习的技能,更不用说掌握了,经验丰富的编码员应该精通多种编程语言。相比之下,NLC利用NLP技术和诸如CodeNet之类的庞大数据库,能够利用英语来进行编程,最终使用任何其他自然语言都可以进行编码。

它可以使诸如设计网站之类的任务变得简单,只需输入一句话,然后就会出现一个符合要求的网站,这要求生成的代码都是可以运行的。

例如“制作带有飞机图像的红色背景,中间是公司的logo,下方有一个与我联系的按钮。“

9e5bf509cc3eba549e1b82b3e0f7774f.png

很明显,如此科幻的想法除了IBM以外还有很多人在做。

GPT-3是OpenAI的一个NLP模型,在多项文本生成任务都遥遥领先,目前也已经被用于生成代码,输入就是预期的网站或者应用程序的自然语言描述,输出可运行的代码。

但是,在IBM的消息发布后不久,微软宣布已获得GPT-3的独家授权。

除了GPT-3外,微软还于2018年收购了互联网上最大的开源代码集合网站 GitHub。并且还开发了一个人工智能代码助手GitHub Copilot,可以在VS code等IDE辅助开发,能够简化开发过程,但它是付费的。

虽然Copilot离NLC的目标还有很大距离,但它已经是向前迈了一大步了。

不过后续的测试来看,Copilot除了抄袭开源代码和注释外,并不能创造代码,还会把其他用户的漏洞代码扩散开。

d6d34324ef16cd05771ccde0280455d4.png

Copilot是朝着NLC迈出的一大步,但它还远远没有实现AI写代码的功能。

虽然NLC还没有完全可行,但目前的研究方向正在迅速走向一个不需要长时间训练也能编程的未来,并且影响是巨大的。

首先,更多的研究和开发人员会产生更多的成果。有人认为潜在创新者的数量越多,创新率越高。

如果每个人都能写代码,那编程带来的创新潜力就会更大。

ee11ee2697614d0af84a4b0c358dc32d.png

此外,计算物理学和统计社会学等学科越来越依赖于定制的计算机程序来处理数据,简化编写这类程序所需的技能要求,将提高计算机科学以外专业领域的研究人员部署新方法、做出新发现的能力。

然而,NLC所需的人工智能的开发和部署资源相当昂贵,小公司根本无法支撑这种应用的开发和运行,所以最终很可能被微软、谷歌或IBM等主流巨头公司垄断。该服务可以收费提供,或者像大多数社交媒体服务一样免费提供。

并且我们有理由相信,由于机器学习需要大数据的支持,这些技术将由平台公司主导。从理论上讲,像Copilot这样的程序在引入新数据时会变得更好,也就是说使用的用户越多,效果越好,这种特性也使得新的竞争对手更难入场,即使他们有更强大或更良心的产品。

除非有强力的反垄断措施,否则大型资本主义企业集团似乎将成为下一次编码革命的把关人。

参考资料:

https://thenextweb.com/news/programming-natural-language-syndication

-End-

最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!

17fdbe5189b9045582444df0e67c0609.png

点击👆卡片,关注后回复【面试题】即可获取

在看点这里e70df76007773afd73fdba2fab09d279.gif好文分享给更多人↓↓


推荐阅读
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 本文介绍了自动化测试专家Elfriede Dustin在2008年的文章中讨论了自动化测试项目失败的原因。同时,引用了IDT在2007年进行的一次软件自动化测试的研究调查结果,调查显示很多公司认为自动化测试很有用,但很少有公司成功实施。调查结果表明,缺乏资源是导致自动化测试失败的主要原因,其中37%的人认为缺乏时间。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
  • SpringBoot整合SpringSecurity+JWT实现单点登录
    SpringBoot整合SpringSecurity+JWT实现单点登录,Go语言社区,Golang程序员人脉社 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 本文介绍了H5游戏性能优化和调试技巧,包括从问题表象出发进行优化、排除外部问题导致的卡顿、帧率设定、减少drawcall的方法、UI优化和图集渲染等八个理念。对于游戏程序员来说,解决游戏性能问题是一个关键的任务,本文提供了一些有用的参考价值。摘要长度为183字。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 本文介绍了sqlserver云存储和本地存储的区别,云存储是将数据存储在网络上,方便查看和调用;本地存储是将数据存储在电脑磁盘上,只能在存储的电脑上查看。同时提供了几种启动sqlserver的方法。此外,还介绍了如何导出数据库的步骤和工具。 ... [详细]
  • 本文介绍了一个React Native新手在尝试将数据发布到服务器时遇到的问题,以及他的React Native代码和服务器端代码。他使用fetch方法将数据发送到服务器,但无法在服务器端读取/获取发布的数据。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • svnWebUI:一款现代化的svn服务端管理软件
    svnWebUI是一款图形化管理服务端Subversion的配置工具,适用于非程序员使用。它解决了svn用户和权限配置繁琐且不便的问题,提供了现代化的web界面,让svn服务端管理变得轻松。演示地址:http://svn.nginxwebui.cn:6060。 ... [详细]
author-avatar
林伯勋玉萍竣梅
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有