Faebook开源智能代码查错工具Infer

标签: 大公司 | 发表时间:2015-06-12 09:14 | 作者:boxi
分享到:
出处:http://36kr.com

Image title

开源已是大势所趋。不仅Google 公开了自己最重要的秘密之一,社交巨头Facebook对开放也一直都是保持开放的态度。比方说它有推进数据中心基础设施建设标准化的Open Compute项目,在软件开源方面更是活跃份子,去它 网站看看就知道,大大小小的开源项目已经有30多个,涵盖了Android、iOS、Web、后端、硬件等方方面面。这一次,它又给这一个清单增加了新的成员—移动应用的人工智能查错工具 Infer,无论是iOS还是Android开发者均可它用来调试自己的app了。

不要搞错,这种查错工具并不是简单纠正一下语法,而是一种 代码静态分析工具。它可以在不运行代码(一般开发者的调试方式都是编译、运行,查看结果,然后人工分析代码)的方式下,通过词法分析、语法分析、控制流、数据流分析等技术对程序代码进行扫描,来验证代码是否存在问题或满足技术指标。

静态分析工具可以像人一样对代码进行思考,分析代码存在的问题,所不同的是它的效率要高得多,数分钟之内即可扫描成千上万行代码。虽然市面上也有商业和开源的静态分析工具,但是Infer的联合开发者Peter O’Hearn称,能像Infer这样对如此规模的代码进行深度分析的工具是没有的。Infer可以将大型代码分而治之,切割成小段代码,然后再将分析结果整合起来。这属于符号化人工智能(有别于更接近人思维模式的神经网络AI)的一种,据称其代码修复率可达80%。

Infer源自O’Hearn和他的学生Cristiano Calcagno及助教Dino Distefano的研究成果。三人创办了一家初创企业Monoidics,原本打算做成商业化产品。但是后来Facebook收购了这家公司并作出了Infer。他们意识到在这里可以产生更大的影响,最终让Facebook把这种工具开源了。这意味着其他开发者也可以分析工具本身,然后针对自己的需求改进,做出更好的分析工具;对于Facebook来说,开源的意义也正在于此,让大家帮助Infer变得更好;对于O’Hearn等人来说,这件事的意义更大,因为静态分析领域还有很多悬而未决的问题亟待解决。利用群体的力量解决大问题并实现共赢,这才是开源最大的意义。

对研究Infer感兴趣的同学不妨移步 此处看个究竟,前提是你得备把梯子。

相关 [faebook 开源 智能] 推荐:

Faebook开源智能代码查错工具Infer

- - 36氪
不仅Google 公开了自己最重要的秘密之一,社交巨头Facebook对开放也一直都是保持开放的态度. 比方说它有推进数据中心基础设施建设标准化的Open Compute项目,在软件开源方面更是活跃份子,去它 网站看看就知道,大大小小的开源项目已经有30多个,涵盖了Android、iOS、Web、后端、硬件等方方面面.

Google 人工智能系统 TensorFlow 开源背后

- - TECH2IPO
Google 周一发布人工智能系统 TensorFlow 并宣布开源,TensorFlow 是 Google 耗费心血开发出了第二代人工智能系统,Google 此举并不像表面看来那么简单. 尽管 Google 宣布 TensorFlow 开源,人人皆可使用,但是 Google 掌握着使其成功的大部分因素:大数据、运行软件的高性能的计算机网络和强大的人工智能专家团队.

15个顶级的开源人工智能工具

- - 博客园_新闻
artificial intelligence(AI)是科技研究中最热门的方向之一. 像 IBM、谷歌、微软、Facebook 和亚马逊等公司都在研发上投入大量的资金、或者收购那些在机器学习、神经网络、自然语言和图像处理等领域取得了进展的初创公司. 考虑到人们对此感兴趣的程度,我们将不会惊讶于斯坦福的专家在 人工智能报告中得出的结论:“越来越强大的人工智能应用,可能会对我们的社会和经济产生深远的积极影响,这将出现在从现在到 2030 年的时间段里.

10个关于人工智能和机器学习的有趣开源项目

- - 极客521 | 极客521
本文简要介绍了10款    Quora上网友推荐的 人工智能和机器学习领域方面的开源项目. GraphLab是一种新的面向机器学习的并行框架. GraphLab提供了一个完整的平台,让机构可以使用可扩展的机器学习系统建立大数据以分析产品,该公司客户包括Zillow、Adobe、Zynga、Pandora、Bosch、ExxonMobil等,它们从别的应用程序或者服务中抓取数据,通过推荐系统、欺诈监测系统、情感及社交网络分析系统等系统模式将大数据理念转换为生产环境下可以使用的预测应用程序.

10款人工智能和机器学习领域方面的开源项目

- - 灯火阑珊
GraphLab是一种新的面向机器学习的并行框架. GraphLab提供了一个完整的平台,让机构可以使用可扩展的机器学习系统建立大数据以分析产品,该公司客户包括Zillow、Adobe、Zynga、Pandora、Bosch、ExxonMobil等,它们从别的应用程序或者服务中抓取数据,通过推荐系统、欺诈监测系统、情感及社交网络分析系统等系统模式将大数据理念转换为生产环境下可以使用的预测应用程序.

智能拼音

- jerry - Joyloft-Zenzen的酒楼
有人装纯洁的,就有人装更纯洁的、. 看到公司论坛有人问,TJJTDS是什么意思. 就有人回复,我也不知道,不过我的拼音输入法打出来的是:“他晋级他得胜”. 然后有人纠正:是“他拒绝她的说”;. 然后又有人纠正:“太极集团董事”;. 接着有人反驳:“天津交通堵塞”;. 最后最邪恶的人出来了,他的拼音打出来是:“舔鸡鸡舔到射”….

Google开源LevelDB

- 酿泉 - Solidot
Google宣布在BSD许可证下开源其键值存储引擎LevelDB. LevelDB C++库可用于多种不同环境,如被浏览器用于存储最近访问的网页缓存,或者被操作系统使用去储存安装的软件包和依赖包清单,或被应用程序用于存储用户设置. Google称,即将发布的新版Chrome浏览器,就包含了基于LevelDB的IndexedDB HTML5 API实现.

再论开源

- - 谢益辉
几年前我写过一些关于开源的 想法,如今再来看开源,我觉得问题已经不在说教上,而是在趋势上. 倒退十年或更久,那时候程序员相对还比较稀缺,软件闭源开发出来之后别人模仿的成本高,而这些年计算机教育的普及让码农数量变得越来越多,更多人懂编程了,模仿的成本大幅下降. 写软件作为谋生的目的已经在弱化,更多的是为了自己的实际需求,或社区名声:你不开源.

SoftEther VPN开源

- - Solidot
日本筑波大学的全球分布式公共VPN中继服务器软件SoftEther VPN正式在GPLv2许可证下开源,源代码托管在Github、SourceForge和Google Code上. SoftEther VPN是VPN Gate的底层VPN引擎,在开源之后用户将可以编译出自己定制的二进制包. SoftEther VPN提供了一种分布式的免费公共VPN中继服务,服务器由志愿者托管,因此很少能提供长时间的VPN连接,但代理服务器的不断变化也增加了封杀难度.

Azul开源Zing Jvm

- - InfoQ cn
4月末,继Zing 5.2 之后,. Azul Systems宣布他们将无停顿(pauseless )的 Zing JVM提供给开源软件开发者和项目,以供开发和测试. Azul Systems 工程部副总裁和合作创始人Shyam Pillalamarri向InfoQ说明道:. 我们的部署很大一部分基于开源组件,所以我们认为:“假设我们不能将一些有价值的东西免费提供给开源项目贡献者,他们将一直受限于从Java虚拟机(JVM)视角所看到的内容”,他们将不会考虑额外的用例,或者选择其他能解决了所有内存或扩展性问题、类似Zing的系统.