苹果今天在夏季发布的“机器学习期刊”博客上发布了新帖子。最新的博客文章标题为“用于面部检测的设备上深度神经网络”,致力于 利用Apple定制CPU和GPU的功能来 详细描述识别照片中面部的资源密集型过程。
苹果公司承认,其对用户隐私的坚决承诺使其无法将云的功能用于计算机视觉计算。此外,发送到iCloud照片库的每张照片和视频在发送到iCloud之前都已在设备上加密,并且只能由在iCloud帐户中注册的设备解密。
他们让深度学习算法在iPhone上运行时面临的一些挑战:
深度学习模型需要作为操作系统的一部分提供,占用宝贵的NAND存储空间。它们还需要加载到RAM中,并在GPU和/或CPU上需要大量的计算时间。与基于云的服务(其资源只能专门用于视觉问题)不同,必须在与其他正在运行的应用程序共享这些系统资源的同时进行设备上计算。
最重要的是,计算必须足够有效,以在相当短的时间内处理大型照片库,而又不会显着降低功耗或增加热量。
为了克服这些挑战,Apple使用BNNS和Metal来解锁并充分利用其内置在iOS设备中的内部设计GPU和CPU的功能。升级到主要的新iOS版本后,您实际上可以在设备上进行这种面部面部检测。
这通常会提示iOS重新扫描整个照片库,并从头开始对所有照片运行面部检测算法,这可能会导致设备过热或变慢,直到照片完成对图库的扫描为止。
苹果开始在iOS 10中使用深度学习进行人脸检测。
随着iOS 11中新的视觉框架的发布,开发人员现在可以在其应用程序中使用该技术和许多其他计算机视觉算法。
苹果指出,在开发视觉框架以保护用户隐私并允许该框架在设备上高效运行时,它面临“重大挑战”。