Mobile ML: aprendizaje automático en tu bolsillo. Parte 1 - Hierro


Publicado por Andrey Batutin, desarrollador sénior de iOS en DataArt

Today, todo el mundo está haciendo Machine Learning, incluidos nuestros teléfonos. Sí, pronto tu teléfono se volverá verdaderamente inteligente. Bueno, o al menos más inteligente que tú y yo. ¿Por qué? Ahora vamos a resolverlo. Comencemos con el hardware ya instalado en dispositivos móviles.

TL; DR


Todos los principales fabricantes de sistemas en chip (SoC) móviles han estado agregando activamente hardware específico de ML a sus soluciones durante 3-4 años. Si tiene un Android o iPhone de gama alta, al lado de la GPU tiene casi la garantía de tener un chip especialmente diseñado para tareas de ML.

La mayoría de los chips ML están diseñados para visión artificial, audio, cámara / foto / video. Las tareas principales: reducir el ruido en la foto, la mejor calidad con zoom, reconocimiento de rostros y animales, reconocimiento de voz y síntesis de texto.

Además, los principales proveedores proporcionan un SDK que brinda a los desarrolladores externos acceso a este chip ML. Por lo tanto, puedes hacer tu Snapchat o Siri, de todos modos probablemente estés sentado en casa (¿Cuándo terminará todo? ¡Cómo quiero en KFC!).

Hierro


Los principales proveedores de chips móviles están expandiendo activamente sus arquitecturas SoC con la ayuda de la Unidad de Procesamiento Neural (NPU), el Procesador de Señal Digital (DSP) y los núcleos especializados de IA. Estos componentes están especialmente afilados para el funcionamiento de los modelos ML.

Qualcomm


Hardware ML: SDP + GPU
SDK: Qualcomm Neural Processing SDK

Proporcionado por Qualcomm Neural Processing SDK, que proporciona aceleración de hardware de los modelos ML en un montón de DSP + GPU + CPU para chips Snapdragon. DSP está optimizado para trabajar con audio / video: una cámara inteligente, que limpia la imagen del ruido, la mejor calidad con zoom y herramientas similares para mejorar la calidad del sonido.

HiSilicon / Huawei


Hardware de ML: NPU
SDK: HiAI SDK

Da Vinci NPU consta de tres núcleos: dos de alto rendimiento y un núcleo de bajo consumo de energía para la computación ML.

HiAI SDK da acceso a tierra para operaciones en matrices NPU. Es decir, la NPU es ideal para los modelos de red neuronal profunda. Una de las ventajas es el complemento para Android Studio.

HiAI está afilado para:

  • Visión por computador
  • Reconocimiento de voz automático;
  • Comprensión del lenguaje natural.


MediaTek


Hardware de ML: APU + GPU
SDK: NeuroPilot SDK El

NeuroPilot SDK le permite resolver problemas de ML utilizando la Unidad de Procesamiento AI (APU) + GPU. APU está encarcelado bajo el modelo de Red Neural Profunda. Proporciona aceleración de hardware para convoluciones, capas completamente conectadas, funciones de activación, etc.

NeuroPilot 2.0 permite en tiempo real:

  • Seguimiento de pose de múltiples personas;
  • Seguimiento de pose 3D;
  • identificación de objetos múltiples;
  • segmentación semántica;
  • mejora de la imagen.


Samsung


ML Hardware: NPU
SDK: Samsung Neural SDK / EDEN SDK
Samsung ha agregado una NPU especializada a Exynos SoC. Consiste en dos unidades Multiplicar - acumular, afiladas para operaciones en matrices.

También proporciona el Samsung Neural SDK, que proporciona aceleración de hardware para los modelos ML utilizando una combinación de CPU + GPU + NPU.

manzana


ML Hardware: NPU
SDK: CoreML SDK

A partir de Apple A11, Bionic usa NPU. La NPU A13 ha crecido a ocho núcleos. Una de las características principales de la nueva NPU es el procesamiento de imágenes Deep Fusion: tomamos 9 fotos y las combinamos en una sola. Especialmente relevante para el rodaje nocturno.

Proporciona CoreML SDK. Como en otros SDK, proporciona aceleración de hardware para los modelos ML. De los bollos - Crear ML - Entorno solo para UI para entrenar modelos ML. Te permite entrenar:

  • Detección de objetos / clasificador;
  • Clasificador de sonido;
  • Clasificador de movimiento;
  • Clasificador de texto / etiquetado de palabras;
  • Clasificador tabular;
  • Motor de recomendación.


Enlaces útiles


ML-benchmark para teléfonos inteligentes Android ;
Qualcomm Neural Processing SDK ;
HUAWEI HiAI SDK ;
Apple CoreML

En la continuación del material, veremos más de cerca cómo funciona NPU. Hablemos sobre el software necesario para ML móvil y cómo usarlo.

All Articles