您的位置: 首页 >互联网 >

优步新的Neuropod界面抽象了多框架AI开发

2020-06-10 15:11:31 编辑: 来源:
导读 优步科技公司(Uber Technologies Inc )的自动驾驶团队今天推出了开源的Neuropod,该技术旨在减少企业开发人员在构建和部署人工智能模型时必须进行的编码工作。 Neuropod试图解决的问题是Uber在内部遇到的一个问题。拥有大型内部人工智能开发操作的企业经常在其项目中使用多个人工智能开发框架,如TensorFlow和PyTorch。使用不同框架创建的模型具有截然不同的技术属

优步科技公司(Uber Technologies Inc.)的自动驾驶团队今天推出了开源的Neuropod,该技术旨在减少企业开发人员在构建和部署人工智能模型时必须进行的编码工作。

Neuropod试图解决的问题是Uber在内部遇到的一个问题。拥有大型内部人工智能开发操作的企业经常在其项目中使用多个人工智能开发框架,如TensorFlow和PyTorch。使用不同框架创建的模型具有截然不同的技术属性,这使得使用它们非常困难。

这个问题主要归结为应用程序编程接口。例如,将一个TensorFlow计算机视觉模型合并到一个服务中需要添加对该服务的TensorFlow api的支持,以及对创建它所涉及的许多开发工具的支持。如果一家公司希望在混合中添加一个PyTorch模型,它的开发人员将不得不重新执行相同的工作。如果需要灵活地使用多个AI框架,那么这个任务必须在组织的所有AI应用程序中重复执行。

Uber创建Neuropod的目的就是为其工程师消除这种重复工作。该工具作为TensorFlow等框架的api和使用它们的应用程序之间的抽象接口。应用程序与Neuropod交互,而不是与TensorFlow api交互。因此,开发人员只需添加对Neuropod的支持,他们的工作负载就会自动兼容多个AI框架。

Uber自动驾驶业务高级工程师Vivek Panyam在一篇博客文章中解释道:“Neuropod从问题定义的概念开始——对模型需要解决的“问题”的正式描述。”“通过正式定义一个问题,我们可以把它当作一个接口,然后抽象出具体的实现。每个Neuropod模型都实现了一个问题定义。因此,任何解决相同问题的模型都是可以互换的,即使它们使用不同的框架。”

该工具提供的互换性有几个好处。如果软件团队在一个框架中为应用程序构建了一个人工智能模型,然后使用另一个框架创建一个更新、更好的模型,那么新版本可以简单地放到旧版本的位置上。或者,如果一家企业希望将其AI开发工作流从TensorFlow切换到PyTorch,这个任务会变得相当简单。

Neuropod的第三个用途是将部署模型从生产简化。Neuropod将模型捆绑在一个统一的“Neuropod”或包中,这比AI框架的api更容易使用。优步使用这些包来优化在显卡集群上部署内部模型的模型服务平台。

Panyam写道:“如果没有Neuropod,模型服务平台就需要擅长远程运行Keras、远程运行TensorFlow、远程运行PyTorch、远程运行TorchScript等等。”开发人员将不得不为每一个添加单独的优化。“然而,通过使用Neuropod,模型服务可以非常擅长远程运行Neuropod,而Neuropod也可以非常擅长从多个框架运行模型。”

优步表示,到目前为止,该公司的工程师已经使用Neuropod部署了数百种模型,涵盖了自动驾驶和餐厅菜单转录等领域。因为它是开源的,所以其他组织理论上可以根据自己的具体需求定制该工具。优步已经在GitHub上提供了Neuropod的代码。



免责声明:本文由用户上传,如有侵权请联系删除!

2016-2022 All Rights Reserved.平安财经网.复制必究 联系QQ280 715 8082   备案号:闽ICP备19027007号-6

本站除标明“本站原创”外所有信息均转载自互联网 版权归原作者所有。