昨天,Uber AI实验室与斯坦福研究团队共同开源了概率编程语言Pyro。Pyro是一个深度概率建模工具,它基于Python和PyTorch库,帮助开发人员为AI研究创建概率模型。
据公司代表透露,Pyro也是Uber AI实验室发布的首个公开项目。
诶等等,Uber还有AI实验室?这还得从一年前的神秘收购说起。
蛰居一年的AI实验室
Uber是有自己的神秘AI实验室,而且已经快满岁了。
去年年底,Uber收购了Geometric Intelligence,这是一家号称要超越谷歌、Facebook等巨头的AI初创公司。创始人是纽约大学心理学家Gary Marcus和剑桥大学信息工程教授Zoubin Ghahramani,团队总共15人。
被收购后,14名成员前往旧金山Uber总部,成立了Uber AI实验室,负责AI基础研究和自动驾驶相关研究。
有意思的是,自被收购后,除了今年3月创始人之一Marcus离职的消息,Uber AI实验室没有任何研究进展新闻,逐渐淡出公众视野。
直到——昨天,当Uber在官方博客宣布,Uber实验室发布开源的Pyro概率编程语言。
设计原则
Pyro满足了四个设计原则,分别是:
通用性:Pyro是个通用的PPL,可以表示任何可计算的概率分布。它通过通用性语言(任意Python代码)开始迭代和递归,之后可以添加随机抽样、观察和推理。
可扩展性:只需在原代码上添加一些手写代码,Pyro就能扩展到大型数据集。这是怎样实现的呢?Pyro通过建立现代黑箱优化技术,使用小批量数据,来做近似推理。
最小性:Pyro灵活可维护。因为它由一个强大可组合的抽象小核心实现的。在可能的情况下,繁重的任务会分分配给PyTorch和其他库完成。
灵活性:Pyro想在用户需要的时候实现自动化操作。这不是无稽之谈,Pyro用高级抽象概念表达生成和推理模型,同时支持专家轻松自定义推理。
下一步
未来几个月里,Pyro将会持续更新迭代。研究人员表示,扩展和改进Pyro有多种方向,其中最重要的技术方向包括:
- 优化抽象概念进行快速建模(如提供自动默认引导)和高级用法(如改进Poutine对象的组合契约)。
- 添加额外目标(如alpha散度、infoVAE和基于GAN的损失等),并且额外添加估计梯度的期望值。
- 添加马尔可夫链蒙特卡洛(MCMC)和序列蒙特卡洛(SMC)推理,特别是哈密顿蒙特卡洛(HMC),并将它们应用于变分推断目标。
- 探索高斯过程的模式和应用,如贝叶斯优化等。
从长远来看,研究人员希望Pyro发展的主要方向将由应用程序和新型的Pyro社区来驱动。
相关资料
Pyro官方介绍地址:
https://eng.uber.com/pyro/
Uber AI实验室地址:
http://uber.ai/
Pyro项目地址:
http://pyro.ai/
Pyro代码地址:
https://github.com/uber/pyro
祝你玩得愉快~
— 完 —