移动ML:口袋里的机器学习 第1部分-铁


由DataArt

Today的高级iOS开发人员Andrey Batutin发布,每个人都在进行机器学习,包括我们的手机。是的,很快您的手机将变得真正智能。好吧,或者至少比你和我聪明。为什么?现在让我们弄清楚。让我们从移动设备上已经安装的硬件开始。

TL; DR


移动芯片上系统(SoC)的所有主要制造商已经在3-4年中积极为其解决方案添加ML专用硬件。如果您拥有高端Android或iPhone,那么几乎可以肯定,在GPU旁边,您有专门为ML任务量身定制的芯片。

ML芯片通常设计用于计算机视觉,音频,相机/照片/视频。主要任务:减少照片中的噪点,变焦,面部和动物识别,语音识别和文本合成的最佳质量。

此外,主要供应商提供了一个SDK,可让第三方开发人员访问此ML芯片。因此,无论您何时坐在家里,都可以很好地制作Snapchat或Siri(什么时候结束?!我想要在KFC中使用!)。


主要的移动芯片供应商正在通过神经处理单元(NPU),数字信号处理器(DSP)和专用AI内核积极扩展其SoC架构。这些组件针对ML模型的运行特别经过了优化。

高通公司


ML硬件: DSP + GPU
SDK: Qualcomm神经处理SDK,

由Qualcomm神经处理SDK提供,可为Snapdragon芯片的一堆DSP + GPU + CPU提供ML模型的硬件加速。DSP已针对音频/视频进行了调整:智能相机,清除噪声的图像,具有缩放功能的最佳质量以及可改善声音质量的类似工具。

海思/华为


ML硬件: NPU
SDK: HiAI SDK

达芬奇NPU由三个内核组成:两个高性能和一个节能内核,用于ML计算。

HiAI SDK可以访问地面以在NPU矩阵上进行操作。也就是说,NPU非常适合深度神经网络模型。这些好东西是Android Studio的插件。

HiAI的优势在于:

  • 计算机视觉
  • 自动语音识别;
  • 自然语言理解。


联发科


ML硬件: APU + GPU
SDK: NeuroPilot SDK

NeuroPilot SDK允许您使用AI处理单元(APU)+ GPU解决ML问题。APU在“深度神经网络”模型下得到了增强。为卷积,完全连接的层,激活功能等提供硬件加速

。NeuroPilot 2.0允许实时:

  • 多人姿势跟踪;
  • 3D姿势追踪;
  • 多对象识别;
  • 语义分割;
  • 图像增强。


三星


ML硬件: NPU
SDK: Samsung Neural SDK / EDEN SDK
三星已向Exynos SoC添加了专用的NPU。它由两个乘法-累加单元组成,针对矩阵操作进行了优化。

它还提供了Samsung Neural SDK,它结合使用CPU + GPU + NPU为ML模型提供硬件加速。

苹果


ML硬件: NPU
SDK: CoreML SDK

从Apple A11开始,Bionic使用NPU。A13 NPU已发展到八个核心。新型NPU的杀手级功能之一是Deep Fusion图像处理:我们拍摄9张照片并将其组合为一张。特别适用于夜间拍摄。

提供CoreML SDK。与其他SDK一样,它为ML模型提供硬件加速。从包子-创建ML-仅限UI的环境,用于训练ML模型。允许您训练:

  • 对象检测/分类器;
  • 声音分类器;
  • 运动分类器;
  • 文本分类器/单词标记;
  • 表格分类器
  • 推荐引擎。


有用的链接


适用于Android智能手机的ML基准
高通神经处理SDK ;
华为HiAI SDK ;
Apple CoreML

在本文的后续部分,我们将仔细研究 NPU的工作原理。让我们谈谈移动ML所需的软件以及如何使用它。

All Articles