脸书4,000个AI模型全使用PyTorch框架

脸书在自家博客,披露使用深度学习函数库PyTorch的情况,脸书已经进行了一年的模型搬迁工作,现在内外部总共有4,000个使用PyTorch的人工智能模型,而生产环境则有1,700个PyTorch模型运行中,总共有超过93%的新模型训练,包括识别和分析脸书内容等任务的模型,都是运行在PyTorch之上。

脸书的模型每天都要执行高达数万亿次的推理操作,来服务数十亿的用户,因此脸书需要不断发展改进人工智能框架,而这也是他们要将所有人工智能系统,都搬迁到PyTorch的原因。脸书认为,采用PyTorch作为预测的人工智能框架,能够确保所有技术都能在脸书规模的工作负载量运行良好,并且还能以更快的速度和灵活性进行创新。

人工智能从研究到生产的工作管线复杂且繁琐,脸书提到,过去整个人工智能产业的步骤、工具、程序破碎,几乎不可能管理端到端工作流程,而脸书也面临同样的困境。为了解决这个问题,脸书从2016年开始寻找解决办法,与人工智能社群合作,研究并且发展出了PyTorch函数库,在2018年的时候,PyTorch发布1.0版本。

脸书中的PyTorch工程师,替每个开发阶段都加入了一系列工具、函数库、预训练模型和资料集,使得开发人员能够快速创建,并且大规模部署新的人工智能应用。脸书希望通过使用单一平台,来加速人工智能研究到生产的流程,而搬迁所有脸书人工智能模型使用PyTorch,可以让工程师和开发人员,有更顺畅的端到端开发体验。

脱离旧框架转换采用标准PyTorch,脸书减少了维护两个基础设施的工程负担,脸书表示,搬迁是一个持续的历程,规模跨整个脸书产品团队,而团队处理搬迁的方法没有万用解决方案,各团队模型的功能相异,包括排名、计算机视觉、自然语言和翻译等,大小和复杂性也都不同,而且在搬迁的同时,还要确保模型的性能,也不能对下游产品流量造成影响。

现在经过了一年的搬迁历程,脸书每天平均有4,000个PyTorch模型在运行,脸书分享,在搬迁的过程,模型要历经脱机和线上测试、训练、推理和发布,同时还必需要经过多项测试,来确保旧框架Caffe2和PyTorch之间的性能和正确性差异,工程师通常需要数周的时间,才能完成这个过程。

脸书工程师开发了一个内部工作流程和自定义工具,来帮助各团队决定搬迁的最佳方式,甚至决定系统不搬迁直接更换。脸书举例,像是延迟是许多团队关注的重点,会想了解模型转移到PyTorch,是否有性能降低的可能性,因此脸书工程团队便创建了内部基准测试工具,来比较原始模型和PyTorch模型的性能,以简化评估工作。

现在PyTorch已经成为支持脸书所有人工智能负载的底层平台,工程师可以在数分钟内,就完成新模型的部署工作,而且模型也更容易构建、编写、测试和调试。脸书提到,PyTorch在各方面强化了人工智能模型,包括能耗降低,而且能够缩小机器学习研究和生产的差距,工程师还能以模型构建器的方法,方便地开发人工智能应用。

脸书工程师不再使用现成的解决方案,而是开发自己的机器学习解决方案,针对特定任务量身定做模型,从研究到测试都能无缝实例。这项将模型搬迁到PyTorch的计划,让工程师不需要每次更新模型,都要重复经历一次实例模型的繁琐过程,更快地让模型从研究环境进到生产环境。