Optimizing deep neural network deployment for intelligent security video analytics

  1. ELORDI HIDALGO, UNAI
Dirigida por:
  1. Ignacio Arganda-Carreras Director/a
  2. Luis Unzueta Irurtia Director/a

Universidad de defensa: Universidad del País Vasco - Euskal Herriko Unibertsitatea

Fecha de defensa: 08 de septiembre de 2023

Departamento:
  1. Ciencia de la Computación e Inteligencia Artificial

Tipo: Tesis

Teseo: 822286 DIALNET lock_openADDI editor

Resumen

La vídeo analítica inteligente para la seguridad actualmente aplica algoritmos de Inteligencia Artificial (IA) que permiten dar solución a las limitaciones de la vídeo vigilancia tradicional, que hasta ahora se basa meramente en la monitorización manual y con una capacidad muy limitada para detectar amenazas de seguridad en tiempo real.Las redes neuronales profundas (Deep Neural Networks, DNNs, en inglés) han demostrado ser altamente efectivas para el análisis de vídeo, pero su implementación en las infraestructuras actuales de sistemas inteligentes implican un reto importante debido a sus altos requisitos computacionales. Estas redes son grafos complejos de neuronas interconectadas con un gran número de parámetros y operaciones aritméticas, lo que resulta en cuellos de botella en el procesamiento. Además, las aplicaciones de visión basadas en DNNs involucran múltiples operaciones de inferencia de DNN y de pre- y post-procesamiento de datos, lo que lleva a una mayor sobrecarga de procesamiento. Aunque se han propuesto numerosas técnicas de optimización de DNNs, se necesitan nuevas estrategias de optimización en aplicaciones de extremo-a-extremo (end-to-end) basados en sistemas inteligentes de visión basados en DNNs.Con objetivo de dar respuesta a los requisitos computacionales de los DNNs, los nuevos aceleradores deIA han ido apareciendo en el mercado como (Las TPUs de Google, VPUs de Intel, etc., que se pueden denominar de manera generica como genérica "xPU", así como arquitecturas mejoradas de CPU, GPU y FPGA), diseñados para ser energéticamente eficientes y con un incremento de rendimiento muy considerable para la inferencia DNN. Sin embargo, desplegar de forma eficiente las aplicaciones basadas en DNNs dentro de estos dispositivos requiere de un expertise y know-how significativos. Además, el coste económico de estos dispositivos puede no estar justificado a menos que se utilicen eficientemente. Los sistemas de ISVA pueden estar integrados en plataformas de computación heterogéneas, descentralizadas y distribuidas como entornos en la nube (cloud), la niebla (fog) y dispositivos en extremo (edge) sin conexión o en el contexto de Internet de las Cosas (Internet of Things, IoT, en inglés). Estas plataformas requieren de un análisis exhaustivo en decidir la estrategia óptima de despliegue debido a su diversidad, incluyendo múltiples dispositivos, arquitecturas de aplicaciones y entornos virtualizados de ejecución. Desafortunadamente, estos entornos virtualizados y sus dispositivos hardware asociados no están diseñados para la inferencia DNN, y por lo tanto, no existe un soporte para desplegar estos sistemas entre la diversas opciones de los aceleradores de IA.Esta tesis tiene como objetivo optimizar el despliegue de aplicaciones de visión basadas en DNN dentro de las infraestructuras de sistemas inteligentes teniendo en cuenta los últimos avances en técnicas de optimización y estrategias de despliegue personalizadas de DNNs para visión por computador (Computer Vision, CV, en inglés). La investigación de este trabajo tiene como objetivo mejorar la eficiencia y la eficacia de los sistemas de vídeo analítica, habilitando un proceso de despliegue optimo para los sistemas inteligentes y entornos IoT. Basandose en estas técnicas y estrategias de despliegue de DNNs para CV, esta tesis pretende dar solucion a los desafíos asociados a los requisitos computacionales de las aplicaciones de visión artificial basadas en DNNs.Para lograr estos objetivos, este estudio propone diferentes estrategias de despliegue de DNN para análisis de videoen diferentes entornos de ejecución. Estos entornos incluyen (1) entornos en la nube serverless para delegar procesos a gran escala con una gran variabildad, (2) plataformas IoT heterogéneas y (3) dispositivos edge con recursos computacionales limitados con procesos computacionales exigentes.La primera estrategia proporciona una evaluación integral del rendimiento de la inferencia de DNN en entornos en la nube serverless y estrategias de despliegue de múltiples DNN en el contexto de la video analítica. La segunda estrategia analiza el despliegue óptimo de algoritmos de reconocimiento facial basados en múltiples DNN en entornos de IoT heterogéneos, que incluyen evaluación de calidad facial, anti-suplantación de identidad, verificación facial y gestión de datos biométricos seguros. Finalmente, la tercera estrategia optimiza un flujo proceso constante de vídeo analítica desplegado con múltiples DNNs ejecutándose en dispositivos de bajos recursos para solventar la problemática de la correcta posición del equipaje de mano en la cabina del aviónLos resultados de esta tesis revelan que el despliegue de soluciones basadas en DNN para ISVA pueden beneficiarse de evaluaciones comparativas in-situ y de procedimientos basados en el conocimiento para aprovechar las capacidades computacionales de las plataformas en cada caso de uso.Objetivos y contribucionesEl objetivo principal de esta tesis es aportar ideas y contribuciones al despliegue óptimo de aplicaciones de visión basadas en DNN para sistemas ISVA. Más concretamente, las aportaciones de esta tesis se centran en la generación y despliegue de un pipeline de procesamiento modular en las actuales infraestructuras de sistemas inteligentes. El diseño modular de este pipeline pretende aprovechar la fortaleza de los despliegues personalizados y los factores clave para maximizar el rendimiento. Esta tesis no sólo se centra en la investigación de cómo mejorar los factores clave para el rendimiento, sino que también tiene como objetivo ampliarlos para mejorar el rendimiento de las aplicaciones ISVA como el reconocimiento y seguimiento de personas y objetos.Más concretamente, los objetivos de esta Tesis son los siguientes:Desarrollar un pipeline modular para generar y desplegar modelos DNN de forma óptima:- Adaptado a las necesidades de las infraestructuras de sistemas inteligentes (es decir, centralizado,descentralizado, distribuido con edge/cloud Computing).- Adaptado a las especificaciones de software/hardware de los dispositivos de bajos recursos a los que va dirigido (RAM, CPU, tamaño de almacenamiento, sistema operativo, etc.).- Ajustado a los motores de inferencia DNN disponibles y a las herramientas de despliegueanalizando las estructuras DNN y cómo mejorar sus índices de rendimiento.- Extraer los factores clave para mejorar la eficiencia de los procesos de reconocimiento visual de ISVA como la detección, reconocimiento y seguimiento de objetos y sujetos.Las contribuciones de esta tesis son:- Una metodología para analizar los factores clave en el diseño de las DNNs para mejorar las métricas de rendimiento considerando las arquitecturas DNN propuestas y los diferentes tipos de técnicas de optimización. Este método se presenta en el capítulo 2.- Un método para evaluar el rendimiento de procesamiento de los modelos DNN en entornos serverless. Concretamente, este trabajo propone una técnica de desacoplamiento sobre el actual benchmark de MLPerf para poder ser aplicado al modelo de ejecución de funciones sin servidor. Esta contribución se presenta en la primera parte del capítulo 3.- Una técnica de generación óptima y el despliegue de modelos DNN para arquitecturas sin servidor en la nube para sistemas inteligentes de videovigilancia. Esta contribución también se presenta en el capítulo 3.- Una metodología de despliegue automático de DNNs basado en técnicas de knowledge-driven para soluciones de reconocimiento facial en un entorno IoT heterogéneo. Todo ello, teniendo en cuenta las especificidades de la interacción del usuario, la seguridad del sistema y cuestiones de privacidad. Esta contribución se presenta en el capítulo 4.- Una metodología de despliegue de un sistema de vídeo analítica multi-DNN para entornos de ejecución de bajos recursos ejecutados en el edge. El escenario de despliegue se basa en aplicar algoritmos de reconocimiento de patrones donde el sistema analiza el correcto posicionamiento del equipaje dentro de la cabina de un avión para preservar la seguridad de las personas en el proceso de vuelo como el despegue, aterrizaje y taxi (TTL).-ConclusionesNuestras observaciones finales y las estrategias correspondientes propuestas en este trabajo de investigación son las siguientes:Observación 1: El modelo de computación en la nube serverless es una alternativa adecuada para desplegar aplicaciones de visión basadas en DNN a gran escala.\textit{Estrategia 1}: La gestión óptima de la memoria asignada a las instancias de funciones sin servidor es un factor crucial para maximizar el rendimiento del procesamiento DNN al mínimo costo. Además, el cuello de botella reside en la tarea de procesamiento DNN de cada instancia de función sin servidor. Mientras que los modelos DNN ligeros se pueden implementar eficazmente en entornos serverless, la implementación de modelos DNN grandes no es factible actualmente debido a las restricciones de estos entornos virtualizados.A través de diferentes estudios experimentales realizados en el capítulo 3, concluimos que definir la asignación óptima de memoria para cada función influye en la latencia y el costo económico. En particular, la cantidad asignada funciona mejor entre 768MB y 1536MB en nuestro conjunto de experimentos. Finalmente, los resultados indican que la latencia del procesamiento DNN tiene una influencia insignificante en los resultados del rendimiento proporcionando 51-83 consultas por segundo en Amazon LambdaObservación 2: Desplegar aplicaciones de visión basadas en DNN en plataformas IoT requiere lidiar con la heterogeneidad del dispositivo hardware y la optimización de la inferencia de DNN. Además de ello, este despliegue también requiere centrarse en el procesamiento óptimo de otros componentes, como el pre procesamiento y la interacción con el usuario, mientras se preserva la privacidad y se mejora laseguridad.Estrategia 2: Crear estrategias de implementación adaptadas a las especificidades del hardware y software objetivo (sistema operativo (SO), RAM, aceleradores de IA), enfocadas en el entorno DNN (número de modelos DNN, configuraciones de modelos DNN, estrategias de delegación de tareas) y diseñadas para los requisitos de la aplicación ISVA (algoritmo de cifrado, equilibrio de red y flujo de trabajo de interacción con el usuario).La heterogeneidad del dispositivo se lleva a cabo mediante un optimizador de implementación inteligente, capaz de seleccionar el enfoque adecuado para la inferencia DNN para las especificaciones del hardware del dispositivo objetivo. La seguridad de los datos se refuerza mediante un esquema que evita la transmisión y almacenamiento de datos biométricos en la nube y emplea un cifrado homomórfico completo para realizar todas las operaciones de similitud facial directamente en el dominio cifrado. Una comparación cualitativa y experimentos preliminares) revelan su potencial para lograr el objetivo final deseado.Observación 3: Desplegar de manera óptima aplicaciones de visión basadas en múltiples DNNs para sistemas de vídeo analítica inteligente integradas en dispositivos de bajos requiere la optimización de los pipelines procesamiento. Esto implica maximizar el uso constante del hardware en ejecución y la minimización del consumo de energía. Para esto, es necesario realizar un análisis profundo de las optimizaciones del modelo DNN, los algoritmos de procesamiento de imágenes previas y posteriores, la programación de recursos y las estrategias de paralelización.Estrategia 3: Para abordar eficazmente esta observación, se deben tener en cuenta los siguientes factores clave: (1) Identificar los requisitos y métricas de rendimiento de la aplicación de visión ISVA de extremo a extremo para diseñar la tubería de procesamiento, (2) Crear un método óptimo de programación para la tubería analítica de vídeo que maximice las capacidades heterogéneas del hardware para la inferencia DNN, reduzca la complejidad de los modelos DNN, minimice la latencia del procesamiento y mantenga la precisión de la predicción.En el Capítulo 5 se propone una metodología utiliza redes prototípicas adversarias multi-tarea guiadas por métricas (MMDAPN) y un pipeline de proceso de paralelización. Esto aprovecha las capacidades de computación heterogéneas de los procesadores del sistema. El algoritmo de procesamiento del pipeline encuentra automáticamente el equilibrio óptimo entre latencia y consumo energético. Basándonos en los experimentos, concluimos que tamaños mayores y más hilos DNN para trabajadores son más eficientes para el procesamiento óptimo del pipeline.Trabajo futuroLa computación serverless y su alta capacidad de escalado ofrecen un futuro prometedor para las aplicaciones y servicios de visión ISVA. Sin embargo, para superar las limitaciones de la computación sin servidor, se necesita más investigación para reducir la complejidad del modelo y el cálculo de DNN. Una solución potencial es distribuir el procesamiento de DNN en sistemas multi-tenant. El objetivo es expandir nuestras evaluaciones de benchmarking a plataformas populares de funciones serverless y explorar el benchmarking de sistemas ML más complejos.A medida que avancen las arquitecturas y optimizaciones de DNN, la naturaleza diversa de la infraestructura del sistema inteligente abordará más desafíos y problemas. Por ejemplo, hay un creciente interés en la investigación sobre sistemas de IA explicables, lo que requiere la integración de procesos adicionales para interpretar los resultados de las cajas negras DNN. Esto puede representar un desafío para los sistemas en tiempo real. Por lo tanto, es esencial realizar más experimentos con una gama más amplia de usuarios y equipos y estudiar en profundidad los problemas de interacción con estas técnicas.La comunidad de investigadores y desarrolladores está sugiriendo buenas prácticas para el ciclo de vida del despliegue del ML, desde el entrenamiento hasta el procesamiento de inferencias en el contexto del MLOps. A medida que continúen desarrollándose el hardware AI, las herramientas y arquitecturas de implementación DNN, la comunidad investigadora propondrá nuevos enfoques para estandarizar lasestrategias de implementación para la comunidad MLOps.