MIT 推出 AI 编程语言 Gen:以自动化、灵活性和速

时间:2019-07-13 13:25:11点击量:158 作者:杨超月

AI的好处在于,它将统计分析、计算机视觉和深度学习等诸多领域结合起来,使开发人员能够共同从中受益。市场日益需要基于AI的应用软件,这也为用于开发这类软件的平台提高了门槛。

具体来说,对于像AI这样的广阔领域而言,平台或编程语言需要灵活敏捷。但在试图构建这类平台时可能会遇到几个挑战:

让结合黑盒子模拟器、深度神经网络和递归的异构概率模型获得良好的性能;

为用户提供简化推理算法实现的抽象,同时做到限制性极小。

现有系统缺乏实际应用所需的灵活性和高效率,计算机视觉和机器人等领域出现了更具挑战性的模型。

麻省理工学院(MIT)的一群研究人员在编程语言设计和实现大会上发表了一篇论文「点击“阅读原文”即可下载」,介绍了一种名为“Gen”的新型概率编程系统。

据MIT新闻网报道,研究人员试图让Gen集自动化、灵活性和速度等优点于一体。开发Gen的团队成员Vikash K. Mansinghka说:“如果我们这么做,也许可以帮助普及多得多的建模和推理算法,正如TensorFlow帮助普及深度学习那样。”

Gen适合的地方

几位开发者声称,Gen可用于诸多AI应用领域,比如计算机视觉、机器人和统计分析,无需处理方程式或手动编写高性能代码。

简短的Gen代码可以使用户能够推断3D身体姿势之类的计算机视觉任务,这种任务在自主系统、人机交互和增强现实中司空见惯。

不仅如此,Gen还含有执行图形渲染、深度学习和概率模拟的组件。

Gen可用于简化数据分析,只需使用自动生成复杂统计模型以便从数据集提取特征的另一个Gen程序。

至于使用场合,Gen已在以下方面找到了用武之地:

英特尔和MIT合作开发了用于增强现实系统的使用Gen的深感摄像头。

MIT实验室正将Gen用于面向人道主义救援和灾难响应的空中机器人。

Gen是MIT-IBM Watson AI Lab项目的核心,也是美国国防高级研究计划局(DARPA)在开展的机器常识(Machine Common Sense)项目的核心,后一个项目旨在模拟18个月大孩子的人类常识。

什么让Gen不一样?

与TensorFlow、PyTorch和Theano等深度学习平台不同,Gen程序明确对建模和推理分解因子。

通过使计算众多先进蒙特卡罗技术所需的建议密度这个过程实现自动化,Gen提供了一个结合Julia代码和TensorFlow代码的平台。

开发者声称,Gen在以下几方面比现有的概率编程语言更胜一筹:解决推理问题(包括从单单一个深度图像估计3D身体姿势)、稳健回归(robust regression)、推断遍历环境的人员或机器人的可能目的地,以及面向实际时间序列数据的结构学习。Gen拥有更灵活的推理编程功能,有助于带来这些性能上的提升。