Google推出ML Kit:简化移动设备上的机器学习开发
Google最近推出了ML Kit,这是一个完全集成在其Firebase移动开发平台中的机器学习模块,适用于iOS和Android。通过这一新模块,Google简化了在手机上创建机器学习驱动的应用程序的过程,并解决了在移动设备上实现计算密集型功能的一些挑战。
ML Kit的主要功能
ML Kit允许移动开发者基于其深度学习Vision API中的多个模型创建机器学习功能,如图像标签、OCR(光学字符识别)和面部检测。ML Kit直接在Firebase平台中提供,适用于Android和iOS应用程序,与Google Cloud的其他模块(如身份验证和存储)并列。
解决移动设备上的挑战
ML Kit旨在解决移动设备上由人工智能所需的计算密集型操作带来的特定挑战。目标是在提供足够模型精度的同时,减少模型大小,保护电池寿命,并在计算资源有限的环境中通过本地数据更新模型。
优化机器学习的多层次方法
- 硬件层面:通过Android Neural Net API,Google设计了一个Android C API,用于在设备上分布计算负载,运行计算密集型操作。
- 模型层面:通过减少模型的复杂性和大小进行优化。Google推出了Tensorflow Lite,而Apple和Facebook也分别推出了Core ML和Caffe2Go。这些轻量级格式便于在设备上下载预训练模型以进行本地数据推断,但从Tensorflow到Tensorflow Lite的转换仍然复杂。
ML Kit的第三层作用
Google的ML Kit产品经理Brahim Elbouchikhi强调,ML Kit是第三层,通过将深度学习模型直接放在Firebase移动应用开发平台中,将机器学习带入手机。
设备端与云端推断
ML Kit支持设备端和云端推断:
- 设备端推断:使用较小的模型,精度较低,但免费。
- 云端推断:前1000次API调用免费,精度更高。例如,设备端图像标签功能使用400多个标签,而云端模型可以访问超过10,000个标签。设备端推断提供了更好的用户体验,支持实时交互,并解决了隐私问题,因为用户数据保留在手机上。
动态模型下载与灵活部署
ML Kit通过Firebase Remote Config支持动态模型下载。模型上传到Firebase平台后动态提供给用户,无需将模型捆绑到Android开发工具包中。这种灵活的模型部署支持简单的A/B测试和针对用户分段的模型部署。
预训练模型与自定义模型集成
ML Kit提供了预训练模型,并允许集成基于专有数据集训练的自定义模型。目前,基础API中的功能包括文本识别(OCR)、图像标签、条形码扫描、面部检测和地标识别。面部轮廓和智能回复功能预计将在未来发布。基于Learn2Compress的Tensorflow到Tensorflow Lite转换服务也即将推出,开发者可以注册参与测试版发布。
开发者反馈与问题
尽管ML Kit才推出几周,但开发者在一些论坛中提出的问题主要集中在未检测到的条形码和文本识别困难上,较少涉及图像分类问题。
总结
ML Kit通过简化机器学习模型的部署和优化,为移动开发者提供了强大的工具,帮助他们在资源有限的移动设备上实现高效的人工智能功能。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。