Google推出Android ML平台,可减少机器学习App大小

为了让开发者在Android应用程序中,更方便地加入机器学习功能,Google构建了Android机器学习平台,不只提供最新的推理组件更新,同时也对所有设备优化推理性能,开发者可以跨Android版本使用一致的机器学习推理API。

设备上机器学习带来许多优点,不只可以获得更低的推理延迟,也能以更好的效率使用电力,设备能够在没有连上网络的情况下,继续使用机器学习功能,但是Google发现,要在设备上部署机器学习模型,开发团队通常会遇到数个常见的问题。

第一个问题是应用程序的大小,由于应用程序受容量限制,因此如果必需要捆绑仅用于机器学习功能的函数库,可能会产生庞大的管理成本,第二个问题则是技术的复杂性,因为设备上与服务器上的机器学习技术存在很大的差异,由于计算环境高度异构,导致性能、稳定性和准确性也都有很大的不同。第三则是设备的支持性,开发人员为了要最大程度覆盖设备,因此倾向使用较旧的API,而这限制最新机器学习技术的使用。

为了解决这些问题,Google推出Android机器学习平台,这是一个可更新且完全集成的机器学习推理堆栈,该平台提供开发者Android设备端最新的推理二元文件,而这将能够降低APK文件的大小。

Google也对所有设备进行性能优化,官方提到,他们会优化机器学习推理与Android的集成,能根据设备自动作出性能决策,包括在可用时启动硬件加速。同时Android机器学习平台也最大程度降低开发复杂性,其提供跨Android版本一致的API,并且通过Google Play服务提供定期更新,因此更新节奏与Android操作系统发布周期分离。

官方提到,Android机器学习平台在Android设备端内置TensorFlow Lite for Android,也就是说,TensorFlow Lite已经可以在所有配备Google Play服务的设备上使用。如此开发人员就不需要在应用程序中加入Runtime,进而减少应用程序的容量,此外,TensorFlow Lite for Android会使用模型中的元资料,来自动激活硬件加速,使应用程序可以在每台Android设备获得最佳性能。

自动加速是TensorFlowLite for Android的新功能,该功能供开发者考量性能、准确性和稳定性,创建模型许可名单,这份许可名单能在模型执行的时候,决定打开硬件加速与否,而为了要使用许可名单,开发者需要提供额外的元资料来验证正确性。这项功能会在今年稍晚推出。

除了定期更新TensorFlow Lite for Android之外,Google还会更新在操作系统外的Neural Networks API,并且保持各Android版本的API维持相同规范。另外,Google还正与芯片厂合作,在操作系统外,直接向设备提供最新的硬件驱动程序,这使得开发人员可以大幅减少需要测试的设备数量,目前高通是Google的第一个合作伙伴。