英特尔全新机器编程有望实现代码推荐、bug自动修复

近日,英特尔发布与麻省理工学院、佐治亚理工学院共同研发的全新机器编程系统。该系统称为机器推理代码相似度系统(MISIM),是一款检测软件意图的自动化引擎,通过识别代码结构、分析与其它功能相似代码的句法差异实现。

英特尔机器编程研究院创始人、首席科学家及总监Justin Gottschlich 表示:“英特尔机器编程的最终目标是让每个人都能创建软件。当这一目标完全实现时,每个人都可以通过自己最擅长的方式,如代码、自然语言或其他方式向机器表达自己的设计意图,从而创建软件。这是一个大胆的目标,需要付出许多努力,MISIM是我们迈出的坚实一步。”

随着异构计算崛起,硬件、软件系统变得越来越复杂,以及跨架构专业编程人员的稀缺,导致业界对新开发方法的需求愈加凸显。“机器编程”一词在英特尔研究院和麻省理工学院联合发布的《机器编程的三大支柱》论文中首次提出,旨在通过自动化工具提升开发效率。在多种新兴机器编程工具中,代码相似度是一项关键技术,它具备精准、高效实现软件开发流程自动化的潜力,从而满足跨架构编程需求。

然而,建立精准的代码相似度系统本身是一个较为棘手的问题。这些系统需要识别两个代码段是否具有相似特征、是否需要实现相似目标。在只提供源代码的情况下,这是非常难以实现的。但英特尔与麻省理工学院及佐治亚理工学院联合开发的MISIM可以精准识别两段代码是否运行相似的计算过程,即使这两段代码使用不同的数据结构和算法。正如Gottschlich所阐述的,“这是实现机器编程伟大愿景的重要一步。”

MISIM与现有代码相似度系统最关键的不同点在于,它拥有创新的上下文感知语义结构(CASS),可以提取出代码真正的用途。与其它现有方法不同的是,CASS可以配置到特定上下文环境,在更高层次抓取描述代码的信息。因此,CASS可以提供更精准的洞察如“代码能实现什么”,而不是“如何实现”的问题。此外,MISIM无需使用编译器(将人类可读源代码转换为计算机可执行机器代码的程序)即可完成所有这些工作。所以与现有系统相比,MISIM就有了更多优势,包括能够在开发人员尚在编写的不完整代码段上执行,对于推荐系统和自动bug修复等应用情景来说,具有重要实际意义。

一旦代码结构整合到CASS以后,根据设计目标,多个神经网络系统会对代码段给出相似度评分。换言之,如果两段代码结构看起来很不一样,但执行的都是同一个功能,这些神经网络系统将给出“高度相似”的评分。

通过将这些原则整合到统一系统中,英特尔、麻省理工学院和佐治亚理工学院的研究员发现,MISIM识别相似代码段的精确度是此前最先进系统的40倍。

英特尔将继续拓展MISIM的功能,目前已经从研究阶段进入演示阶段,目标是打造一款代码推荐引擎,协助软件开发人员在英特尔多种异构架构上进行编程开发。此类系统可以识别开发人员简单算法输入背后的意图,并推荐语义相近但性能更好的候选代码。

英特尔机器编程研究院同时也与英特尔软件部门进行合作,研究如何将MISIM整合到日常开发工作当中。Gottschlich同时也兼任宾夕法尼亚大学兼职助理教授,他希望帮助软件部门以及整个英特尔公司提升生产效率,并消除编程中修复bug等单调的工作。Gottschlich表示:“如果机器能做到自动检查和修复bug,我想大多数开发人员一定非常愿意让它来承担这项工作,至少我会。”

(免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。 )

赞助商
2020-07-31
英特尔全新机器编程有望实现代码推荐、bug自动修复
近日,英特尔发布与麻省理工学院、佐治亚理工学院共同研发的全新机器编程系统。

长按扫码 阅读全文