如何破ag真人百家--Home

全国销售热线:0756-88138792

您的位置: 主页 > 产品中心 >

如何破ag真人百家MIT等推出新的机器编程系统:机

发布日期 :2020-10-11 15:13

  7 月 29 日,英特尔官网消息,英特尔和麻省理工学院(MIT)、乔治亚理工学院(Georgia Tech)共同推出了一种新的机器编程(MP)系统机器推断代码相似性系统(MISIM)。

  通过识别相似代码段,分析代码目的、作用的相似性,MISIM 可以完成一些编程任务,提供编程方法建议或选项,即用 AI 代替程序员做部分工作,如自动化错误检测等。

  “英特尔机器编程的最终目的是使软件创建民主化”,英特尔首席科学家兼机器编程研究总监 / 创始人 Justin Gottschlich 说。英特尔目前计划在内部使用 MISIM,以协助开发人员完成调试等日常工作。

  IT领域中,AI 的许多应用场景都是机器编程。最近引起热议的 1750 亿参数的 AI 模型 GPT-3,也是可以直接写代码。

  如有人用 GPT-3 将日常语言转换成 Python 代码来创建资产负债表;还有开发者调用 GPT-3 API 做了一个网页 App 快速生成器,在输入框里用自然语言进行描述,它就可以快速输出相应的用户界面,比如输入 “生成一个像西瓜一样的按钮”:

  也有人早就开源了同样是机器编程的 AI 项目。如 2018 年,使用 keras 深度学习框架的项目 Sketchcode 开源,Sketchcode 可以直接将手绘的手稿图生成 HTML 代码。

  AI 在IT领域的应用还有 AI 自动测试,无码 / 低代码探讨等话题,本篇先从 MISIM 说起,看看机器编码的一些项目。

  围绕 MISIM 的技术论文已经公开。该论文首先阐述了机器编程和代码相似系统的关系:机器编程领域涉及软件开发的自动化,近年来出现许多 MP 系统,部分原因是机器学习、形式方法、数据可用性和计算效率的进步。而在 MP 系统中,一大挑战就是精确构建代码相似性系统。代码相似性系统往往包含许多复杂的组件,其中即使是最基本的组件的选择,如代码的结构表示都仍不明确。代码相似性的研究还处在早期阶段,但相关探索已越来越多,MISIM 也是其中之一。

  一是一种新的上下文感知语义结构 CASS,用来从代码语法中提升语义意义。目的是捕捉输入代码的语义的显著特性。CASS 的上下文感知功能,可以用来捕获描述代码的上下文信息,例如,“这段代码是函数调用”、“这段是操作”等等。

  其二,MISIM 提供了一种基于神经的学习代码相似性评分算法,可以用各种具有学习参数的神经网络体系结构来实现。该算法分两个阶段,第一阶段涉及一个神经网络模型,可将一个特征化的 CASS 映射到一个实值代码向量。第二个阶段使用相似性度量在一对代码向量之间生成相似性评分。

  针对该系统的性能,其研究团队筛选出三个代码相似性系统做比较:code2vec、神经代码理解 NCC、代码推荐系统 Aroma。比较实验使用 POJ-104 数据集,由学生编写的 C/C++ 程序组成。评估的精度指标是 R(MAP@R)、平均精度 (AP)和精度 - Recall-Gain 曲线 (AUPRG)下的面积 (Aup@R),它们衡量模型在给定查询的数据库中检索类似(或相关)项的准确性。最终的实验交过表明,MISIM 比其他三个最先进的代码相似系统的性能高出 40.6 倍。

  一级负面影响,给定的研究想法可以直接用于伤害性行为,如 DeepFake、DeepNude 等等。

  二级负面影响,指研究想法可能会使它的使用方式产生直接的负面或积极影响,例如将面部识别用于压迫少数群体、产生恶意假新闻等等。

  三级负面影响,研究思想被用来构建第二个应用程序,并根据新程序的使用产生的负面影响。

  如果代码使用相似性工具发展足够成熟,可以自动生成正确的可编译代码,那么它可能被用来自动将代码从一种语言替换为另一种语言,或者用快速代码替代慢代码。

  恶意使用者可以利用代码相似性工具爬取网络,在网络上窃取代码,并从可用代码中,找到常见的模式和安全缺陷,然后找到大规模黑客攻击的方法。从同一代码生成器生成的代码可能更容易受到此类攻击。

  如果系统允许基于代码相似性的自动代码修补 / 修复,而不进行适当的测试,那么如果被黑客攻击,它可能会产生安全缺陷。

  如果程序员习惯从编程工具获得帮助,可能会降低程序员的学习能力,除非该工具提供可解释性,解释性将需要了解工具正在学习的代码相似性,并教育程序员。

  “总之,代码相似性是一个抽象的概念,很可能有许多积极的应用。为了减轻负面影响,我们需要确保制定适当的政策和安全措施,防止负面使用。特别是,这种安全系统可能需要人工介入,以便被用来提高程序员的能力和生产力。”论文最后指出。

  “MP 将使每个人都能以最适合自己的方式表达意图,无论是代码,自然语言还是其他方式,来创建软件。” Justin Gottschlich 给 MISIM 提出的这个目标,实际上也是许多 AI 项目在IT领域的共同目标。

  被 MISIM 拿来作比较的机器学习代码推荐系统 Aroma,是 Facebook 2019 年推出的一个项目,可以自动完成小程序,帮助程序员找到可以 “参考使用”的代码等等。

  如安卓程序员想要了解如何解码手机中的 bitmap,可以使用代码直接搜索:

  前不久 DeepMind 也发布了 AI 算法开发框架Acme,提供比人类设计更有效的简单算法版本。Acme 是一个分布式强化学习框架,通过促使 AI 驱动的智能体在不同规模的环境中运行。该框架可以简化、强化学习算法开发进程。

  此外微软也正在其软件开发工具中,加入基本的代码生成功能。OpenAI 的 GPT-3 语言模型也已经被多位开发者调用,从自然语言中生成简单代码段。

  这些机器编程项目或是功能,什么时候能发挥出多大的作用,目前似乎还没有一个准确的答案。除了 GPT-3 刚上线就直接开放给开发者调用,像 MISIM 还主要是在英特尔内部使用。不过 GPT-3 偏向强调是一个可以更广泛使用的 AI 模型,可以处理所有的语言任务,还能写诗。MISIM 则是专注于代码任务的一个系统。

  现在已经有了一些开源的 MP 工具,这里介绍两个,感兴趣的开发者可以去试试。

  一种深度学习模型,采用手绘的 Web 原型并将其转换为有效的 HTML 代码,使用图像字幕体系结构从手绘网站线框生成 HTML 标记。

  2018年,Rice University 的研究员开发了一个名为 Bayou 的系统,从 GitHub 上采集数据,通过深度学习算法和训练,将 Java 代码编写部分自动化。

  Bayou 根据程序员提供的由 API 方法名称和变量类型组成的查询,通过生成 API 模式或习惯用法来完善 Java 程序的框架。

如何破ag真人百家--Home

  • 地址:Address 广东省乐昌市金湾区珠海大道6898号2栋1楼
  • 邮箱:E-Mail 456345674@qq.com
  • 电话:Phone 0756-88138792
友情链接: 无法在这个位置找到: ../link.txt