Rápidos y Furiosos: detección de anomalías en aceleradores de Machine Learning
Los algoritmos de Machine Learning (ML) requieren de hardware especializado para funcionar. ¿Sabías que, paradójicamente, existe una técnica de ML para predecir cuándo hay que darles mantenimiento?
Rápidos y Furiosos: detección de anomalías en aceleradores de Machine Learning
Por: Rocío B. Ayala Meza
El Machine Learning (ML) se ha expandido exitosamente a diversos sectores debido a la disponibilidad de datos y al avance en el hardware (HW). Pero, los algoritmos son cada vez más sofisticados y por lo tanto necesitan de mayor poder computacional. Como consecuencia, han aparecido procesadores específicos para acelerar y reducir su consumo energético.
Para mantener el correcto funcionamiento y prolongar la vida útil de este HW es conveniente saber cuándo van a fallar. Para ello existe la técnica de detección de anomalías. En este artículo se muestra como los datos de temperatura de estos aceleradores pueden emplearse para su mantenimiento predictivo.
Mantenimiento predictivo
A nivel industrial es imperativo mantener la disponibilidad de operaciones y por lo tanto de la maquinaria. Puesto que una parada inesperada en actividades resulta en baja productividad y pérdida monetaria.
Con el mantenimiento predictivo se busca empoderar a los fabricantes para prolongar la vida útil de sus máquinas y, a la vez evitar y disminuir el tiempo de inactividad no planificado y planificado respectivamente. Haciendo uso de la detección de anomalías se puede encontrar irregularidades en el equipo de trabajo durante las primeras etapas y alertar para que se lleve a cabo la actividad de manutención correspondiente.
Aceleradores de ML
Los aceleradores son coprocesadores especializados en aplicaciones de ML que complementan a la Unidad central de procesamiento (CPU, siglas para Central Processing Unit). Existen varias clases:
Unidad de procesamiento de gráficos (GPU, siglas para Graphics Processing Unit): HW especializado para la manipulación de imágenes. Estas, al igual que las redes neuronales involucran el uso de matrices; lo que ha hecho que estos coprocesadores sean populares en aplicaciones de inteligencia artificial. Pueden encontrarse en la nube (Nvidia Tesla [2]), así como embebidos (Nvidia Jetson [3]).
Matriz de puertas lógicas programable en campo (FPGA, siglas para Field Programmable Gate Arrays): Este HW puede configurarse según como se necesite. Por lo tanto puede reprogramarse como un acelerador específico para cada tipo de modelo ML. Están disponibles en la nube, y en formato embebido (Intel Arria [4]).
Circuito Integrado de Aplicación Específica (ASIC, siglas para Application-Specific Integrated Circuits): HW optimizado para un uso específico. Ej. la unidad de procesamiento tensorial (TPU, siglas para Tensor Processing Unit) solamente funciona con Tensorflow. Se los encuentra en la nube [5], y embebidos (Google Coral [6]).
Estos aceleradores poseen un rango de temperatura en el que van a desempeñarse adecuadamente; y para ello tienen un sensor térmico [7][8]. Entonces, al detectar las anomalías en este se puede predecir cuándo es tiempo de darles mantenimiento o cambiarlos.
Detección de anomalías
Método para identificar eventos u observaciones muy diferentes de la mayoría como para despertar la sospecha de que fueron generados por un mecanismo distinto [10]. Existen varios tipos [11]:
Puntuales: Cuando un punto se desvía significativamente del resto de datos. Ej. si la temperatura del coprocesador produce abruptamente un pico de 85°C.
Colectivas: Cuando una secuencia de puntos se desvía de un patrón regular. Ej. cuando lo normal es que la temperatura del coprocesador cambie de 60°C a 65°C cada 20 segundos; pero de repente cambia cada 5 segundos.
Contextuales: Cuando algunos puntos son normales según el contexto. Ej. la temperatura normal del coprocesador en funcionamiento es de 65°C, pero en estado de reposo esto sería una anomalía.
Para la detección de anomalías puede emplearse técnicas en:
Estadística: Modelo autorregresivo integrado de media móvil (ARIMA, siglas para Autoregressive Integrated Moving Average).
ML: Agrupamiento espacial basado en densidad de aplicaciones con ruido (DBSCAN, siglas para Density-Based Spatial Clustering of Applications with Noise).
Deep Learning (DL): Memoria larga a corto plazo (LSTM, siglas para Long Short-Term Memory).
Ideas de aplicaciones en Perú
Cualquier tipo de industria que cuente con aparatos electrónicos y eléctricos puede beneficiarse del mantenimiento predictivo por detección de anomalías. En el primer caso, cuentan con un procesador (no necesariamente tiene que ser un acelerador) que posee un sensor de temperatura embebido. En el segundo caso, pueden emplearse sensores externos para: vibración, gas, humedad o presión.
Conclusión
El creciente interés en llevar el ML a diversos sectores, no sólo ha aumentado la creación de nuevos algoritmos, sino también el de HW especializado. Como todo circuito electrónico, estos aceleradores tienen un rango de temperatura para un desempeño óptimo. Haciendo su lectura y utilizando métodos de detección de anomalías, es posible predecir cuándo es tiempo de darles mantenimiento.
Para contemplar un caso de estudio de detección de anomalías en aceleradores embebidos, referirse a [12], [13].
Referencias
[1] R. Ayala Meza, “Portafolio Fotográfico.” 2021, [Online]. Available: https://photos.app.goo.gl/9EPSEUyCGwKaNccD8.
[2] Nvidia, “Tesla P100 Data Center Accelerator | NVIDIA.” https://www.nvidia.com/en-us/data-center/tesla-p100/ (accessed Oct. 12, 2021).
[3] Nvidia, “Buy the Latest Jetson Products | NVIDIA Developer.” https://www.nvidia.com/en-us/autonomous-machines/jetson-store/ (accessed Oct. 12, 2021).
[4] Intel, “Intel® FPGAs - Intel® Arria® 10 FPGAs.” https://www.intel.com/content/www/us/en/products/details/fpga/arria/10.html (accessed Oct. 12, 2021).
[5] Google, “Cloud Tensor Processing Units (TPUs) | Google Cloud.” https://cloud.google.com/tpu/docs/tpus (accessed Oct. 12, 2021).
[6] Google, “Coral dev board,” 2020. https://coral.ai/products/dev-board (accessed Feb. 21, 2020).
[7] Nvidia, “Power Management for Jetson TX2 series devices.” https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%2520Linux%2520Driver%2520Package%2520Development%2520Guide%2Fpower_management_tx2_32.html%23 (accessed Sep. 23, 2020).
[8] G. Coral, “Dev Board datasheet - thermal| Coral.” https://coral.ai/docs/dev-board/datasheet/#thermal-solution (accessed Oct. 12, 2021).
[9] Nvidia, “Jetson TX2 module,” 2020. https://developer.nvidia.com/embedded/jetson-tx2 (accessed Feb. 21, 2020).
[10] D. M. Hawkins, Identification of Outliers. Monographs on Applied Probability and Statistics. Chapman and Hall, London, 1980.
[11] A. Blázquez-García, A. Conde, U. Mori, and J. A. Lozano, “A review on outlier/anomaly detection in time series data,” CoRR, vol. abs/2002.0, 2020, [Online]. Available: https://arxiv.org/abs/2002.04236.
[12] R. Ayala Meza and J. Farret, “Profiling the Performance and Energy Efficiency of Edge Accelerators in the Context of Computer Vision,” in 2nd International Conference on Advances in Signal Processing and Artificial Intelligence (ASPAI’ 2020), 2020, vol. 2, no. November, pp. 18–20.
[13] R. Ayala Meza, “The Git repository.” https://github.com/aizzaac/Caceria_de_anomalias (accessed Oct. 12, 2021).