Logotipo de Zephyrnet

Implemente cargas de trabajo de IA con confianza usando OpenVINO

Fecha:

Patrocinado Las técnicas de inteligencia artificial se han abierto camino en las aplicaciones comerciales desde hace algún tiempo. Desde chatbots que forman la primera línea de participación en servicios al cliente, hasta sistemas de reconocimiento de imágenes que pueden identificar defectos en los productos antes de que lleguen al final de la línea de producción en una fábrica.

Pero muchas organizaciones todavía están estancadas por dónde empezar a construir modelos de aprendizaje automático y aprendizaje profundo y llevarlos desde el desarrollo hasta la implementación. Otra complicación es cómo implementar un modelo en un sistema diferente al que se usó para entrenarlo. Especialmente para situaciones como implementaciones de borde, donde hay menos potencia de cómputo disponible que en un centro de datos.

Una solución a estos problemas es emplear OpenVINO ™ (Open Visual Inference & Neural Network Optimization), un conjunto de herramientas desarrollado por Intel para acelerar el desarrollo de aplicaciones que involucran visión por computadora de alto rendimiento e inferencias de aprendizaje profundo, entre otros casos de uso. OpenVINO toma un modelo entrenado y lo optimiza para operar en una variedad de hardware Intel, incluidas CPU, GPU, Unidad de procesamiento de visión Intel® Movidius ™ (VPU), FPGA o Intel® Gaussian & Neural Accelerator (Intel® GNA).

Esto significa que actúa como una capa de abstracción entre el código de la aplicación y el hardware. También puede ajustar el modelo para la plataforma que el cliente desea usar, afirma Zoë Cayetano, Gerente de Producto de Inteligencia Artificial y Aprendizaje Profundo en Intel. “Eso es realmente útil cuando estás llevando una aplicación de inteligencia artificial a producción. Hay una variedad de desafíos de nicho diferentes en la inferencia que hemos abordado con OpenVINO, que son diferentes de cuando los modelos y aplicaciones están en la fase de capacitación ”, dice ella.

Por ejemplo, Intel ha descubierto que a menudo hay una fuerte disminución en la precisión y el rendimiento cuando los modelos que se entrenaron en la nube o en un centro de datos se implementan en un entorno de producción, especialmente en un escenario de borde. Esto se debe a que los modelos entrenados están integrados en un despliegue sin tener en cuenta el sistema en el que se ejecutan. Además, el modelo puede haber sido entrenado en circunstancias ideales que difieren del entorno de implementación real. Como ejemplo, Cayetano cita un escenario de detección de defectos en el que se puede haber asumido una vista de cámara cercana a la línea de producción durante el entrenamiento. La cámara puede colocarse más lejos para que las imágenes tengan que ajustarse, lo que OpenVINO puede hacer.

La interoperabilidad es otro problema, según Cayetano, “Vimos esta tendencia de muchas empresas que adoptan la IA y quieren llevar la IA a la producción. Pero había una brecha en la eficiencia del desarrollador donde los desarrolladores tenían que usar una variedad de herramientas diferentes y asegurarse de que fueran interoperables y pudieran operar entre sí de la misma manera ”, dice ella. “Entonces necesitaban un conjunto de herramientas que tuviera todo lo que desea de una biblioteca de visión por computadora que le permita cambiar el tamaño de esa imagen, o que le permita cuantificar su modelo en un tipo de datos diferente como INT8 para un mejor rendimiento ".

Y aunque OpenVINO comenzó con un enfoque en la visión por computadora, los comentarios que Intel recibió de los desarrolladores fue que querían una solución de propósito más general para IA, ya sea para aplicaciones que involucran procesamiento de imágenes, procesamiento de audio o voz e incluso sistemas de recomendación.

"Entonces, el cambio que hicimos el año pasado fue hacer que OpenVINO sea más accesible y que los desarrolladores puedan enfocarse únicamente en el problema que están tratando de resolver y no tener que elegir diferentes kits de herramientas para diferentes cargas de trabajo", Cayetano dice.

Plug-in de la arquitectura

Los dos componentes principales de OpenVINO son su Model Optimizer y el Inference Engine. Model Optimizer convierte una red neuronal entrenada de un marco de código fuente a un código abierto, nGráfico-representación intermedia compatible lista para usar en operaciones de inferencia.

Además de la caja de herramientas, existe la Zoológico modelo abierto repositorio en GitHub, que comprende un conjunto de modelos de aprendizaje profundo previamente entrenados que las organizaciones pueden usar libremente, además de un conjunto de demostraciones para ayudar con el desarrollo de otros nuevos.

OpenVINO admite modelos entrenados de una amplia gama de marcos de software comunes como TensorFlow, MXNet y Caffe. El proceso de optimización elimina capas en el modelo que solo se requerían durante el entrenamiento y también puede reconocer cuándo un grupo de capas podría unificarse en una sola capa, lo que disminuye el tiempo de inferencia.

El motor de inferencia en realidad ejecuta las operaciones de inferencia en los datos de entrada y genera los resultados, además de administrar la carga y compilación del modelo, y es capaz de admitir la ejecución en diferentes tipos de hardware mediante el uso de una arquitectura de complemento de software.

Un complemento FPGA permite la orientación de la ejecución Dispositivos Intel® Arria®, por ejemplo, mientras que otro admite CPU como las familias Intel® Core ™ o Xeon®. Un complemento OpenCL admite la ejecución de gráficos de procesador Intel® (GPU). Una API de Movidius ™ admite VPU, y hay una API para el coprocesador GNA de bajo consumo integrado en algunos procesadores Intel que permite que las cargas de trabajo de inferencia continua, como el reconocimiento de voz, se descarguen de la propia CPU.

“Entonces, lo que hace OpenVINO es en realidad abstrae al desarrollador de tener que codificar para cada tipo de procesador de silicio. Tenemos este enfoque de implementación en cualquier lugar de escritura única en el que puede tomar el mismo código y luego implementar esa aplicación en un procesador Core o Xeon, sin tener que volver a escribir su código. Entonces, hay mucha eficiencia allí ”, dice Cayetano.

Esto reduce radicalmente el tiempo de comercialización de los proyectos y significa que las empresas no se ven obstaculizadas por tener que seleccionar primero el hardware correcto o calzar su aplicación en un sistema que no se ajusta a sus necesidades finales.

OpenVINO incluso permite la inferencia simultánea de la misma red en varios dispositivos de hardware Intel, o la división automática del procesamiento de inferencia entre múltiples dispositivos Intel (si, por ejemplo, un dispositivo no admite ciertas operaciones).

Escalabilidad en la vida real

Esta flexibilidad significa que OpenVINO ahora ha sido implementado por muchos clientes de Intel, incluidos Philips y GE Healthcare, que utilizan el kit de herramientas con fines de obtención de imágenes médicas.

“Ser capaz de analizar imágenes de rayos X o tomografías computarizadas y poder detectar tumores con mayor precisión, por ejemplo, es un caso de uso. La red neuronal aquí es esencialmente similar al ejemplo de la detección de defectos, está detectando si hay un tumor o no en la imagen de rayos X / conjuntos de datos y está usando OpenVINO para inferir eso ”, dice Cayetano.

Con GE Healthcare, la empresa utilizó las capacidades de OpenVINO para escalar su aplicación a varios clientes finales diferentes, desde clínicas privadas hasta hospitales públicos.

“Para un cliente, necesitaban un procesador Xeon, porque estaban optimizando la precisión y el rendimiento, mientras que otro cliente estaba optimizando el costo y el tamaño, porque era un sitio de implementación más pequeño”, explica Cayetano. "Así que no solo GE Healthcare pudo aprovechar la optimización que puede hacer OpenVINO, sino también la escalabilidad de poder escribir una vez, implementar en cualquier lugar".

Esto muestra que OpenVINO brinda a las organizaciones la capacidad de tomar un modelo de red neuronal capacitado y construir una aplicación práctica a su alrededor, que de otra manera podría haber requerido mucho más esfuerzo para construir y no haber dado resultados satisfactorios. “Ahora puede obtener resultados más rápidos y precisos en el mundo real cuando realmente realiza implementaciones porque tenemos optimizaciones integradas en OpenVINO que le permiten hacer cosas matemáticas realmente interesantes que solo los científicos de datos solían usar, como la fusión de capas para su red neuronal, por ejemplo ”, dice Cayetano.

“Hemos puesto muchas de esas optimizaciones avanzadas de vanguardia en OpenVINO para que las utilicen las masas, no solo los científicos de datos de primer nivel. Y luego todo es interoperable en un solo juego de herramientas. Por lo tanto, ahora puede usar las mismas bibliotecas de visión por computadora con nuestras técnicas de optimización de modelos y cuantificación, todas estas otras herramientas que realmente agilizan su experiencia de desarrollo ".

Patrocinado por Intel®

Pagar PrimeXBT
Opere con los socios CFD oficiales del AC Milan
Fuente: https://go.theregister.com/feed/www.theregister.com/2021/03/09/write_once_deploy_anywhere/

punto_img

Información más reciente

punto_img