Hiperespectral IntelliHSI: Aprendizaje Automático para la Optimización de Plataformas de Supercomputación y soporte de Aplicaciones de Imagen Hiperespectral
![Versión para impresión Versión para impresión](https://www.cenits.es/sites/all/modules/print/icons/print_icon.png)
![Versión en PDF Versión en PDF](https://www.cenits.es/sites/all/modules/print/print_pdf/icons/pdf_icon.png)
- Juan Antonio Rico Gallego, Antonio Plaza Miguel, Javier Plaza Miguel, Juan Carlos Díaz Martín, Juan Luis García Zapata y Carmen Jurado Calvo. Universidad de Extremadura.
- Javier Corral Gacía. CénitS-COMPUTAEX.
Las prácticas actuales en computación de altas prestaciones (HPC) están impulsadas por la optimización del rendimiento y el consumo energético, encontrado una solución ampliamente aceptada en la arquitectura de tipo clúster. Además, las aplicaciones científicas tienden a ser ejecutadas en plataformas heterogéneas, como demuestra el hecho de que 13 de los 25 supercomputadores más rápidos del mundo (atendiendo a la lista TOP500 de junio de 2020) se basan en CPUs con múltiples cores y aceleradores gráficos (GPUs). También los sistemas Cloud ofrecen plataformas innovadoras y rentables para ejecutar aplicaciones paralelas con requerimientos adicionales, como tolerancia a fallos y procesamiento masivo de datos, incluyendo aplicaciones de negocios, big data y aprendizaje automático. En general, los sistemas paralelos formados por procesadores multi-core y aceleradores, comunicándose a través de redes de diferentes capacidades, son ahora los sistemas más extendidos.
Esta heterogeneidad ejerce presión en las infraestructuras software para maximizar la explotación de las aplicaciones en esas máquinas. Como consecuencia, han surgido gran cantidad de técnicas de optimización en la literatura, siendo un campo de investigación activo. Entre ellas se incluyen determinar el perfil computacional de los procesos, encontrar el particionamiento de datos que garantice un equilibrio de la carga de trabajo, diseñar modelos analíticos de las comunicaciones o determinar la ubicación óptima de los procesos en los recursos. Todo con el objetivo de la optimización de rendimiento y del uso de recursos de estas plataformas, y por tanto, con la consecuente reducción de los costes.
Las técnicas clásicas para abordar los problemas de optimización del paralelismo aparecen en los campos de gestión de recursos, particionamiento de grafos, programación dinámica, heurísticas en problemas combinatorios, etc. A este respecto, nuevas técnicas del campo de la inteligencia artificial son prometedoras y justo ahora están produciendo sus primeros resultados en áreas como la planificación y despliegue de procesos y la creación de modelos analíticos de comunicaciones.
El objetivo del proyecto es aplicar técnicas de aprendizaje automático (aprendizaje máquina, aprendizaje profundo y aprendizaje con refuerzo) para abordar los problemas clásicos de optimización HPC clúster/cloud planteados tanto en el software del sistema como en las aplicaciones. En nuestra opinión, este enfoque es altamente innovador y supone un cambio de perspectiva, desde el uso habitual de plataformas HPC para la ejecución de aplicaciones paralelas, incluido el entrenamiento de enormes estructuras de computación neuronal, hacia la consideración de técnicas de aprendizaje automático emergentes (redes profundas, aprendizaje por refuerzo, redes generativas antagónicas, autoencoders, etc) para abordar los problemas típicos de optimización en la computación HPC clúster/cloud.
El proyecto se centra en el análisis y procesado de imágenes hiperespectrales obtenidas por sensorización remota. Este campo de aplicación resulta idóneo por dos motivos. Primero, sus aplicaciones demandan un gran rendimiento computacional y precisan plataformas paralelas HPC con un diseño apropiado de gestión de recursos y optimización de rendimiento, lo que permite evaluar las optimizaciones realizadas. Segundo, es un campo de desarrollo con gran proyección. Las nuevas técnicas de adquisición de imágenes y las mejoras en el hardware de sensorización han puesto a disposición de las aplicaciones una gran cantidad de imágenes con una elevada resolución espacial, espectral y radiométrica. El tratamiento de este enorme volumen de datos es un desafío que requiere de métodos, técnicas y herramientas que sean capaces de almacenar, procesar, analizar y extraer información a partir de las imágenes de forma más eficiente. Los desarrollos propuestos, dirigidos por los avances de la inteligencia artificial en el campo del aprendizaje automático, son aplicables a un amplio espectro de escenarios de gran impacto social, como la agricultura de precisión, crecimiento y ordenación urbana, detección y gestión, monitorización y control de incendios forestales y desastres naturales y cambio climático, por citar unos pocos.
El proyecto, por tanto, explora y desarrolla métodos, algoritmos y herramientas innovadores basados en el campo del aprendizaje automático como fundamento para la optimización de aplicaciones científicas en plataformas heterogéneas HPC clúster/cloud. Aplicaremos y evaluaremos los resultados en el campo del análisis e interpretación de imágenes hiperespectrales obtenidas por sensorización remota.
El objetivo general del proyecto es explorar y desarrollar métodos, algoritmos y herramientas basados en el aprendizaje automático como fundamento para la optimización de aplicaciones científicas en el campo del análisis e interpretación de imágenes hiperespectrales obtenidas por sensorización remota, desde el punto de vista de la eficiencia de procesamiento de datos y comunicaciones en plataformas heterogéneas HPC Cluster y Cloud.
El equipo investigador desarrollará nuevas técnicas para mejorar el rendimiento y la resiliencia de aplicaciones HPC con un alto nivel de innovación, derivado del uso de aproximaciones basadas en el aprendizaje automático (machine learning, deep learning y reinforcement learning) para afrontar problemas clásicos en entornos paralelos heterogéneos, como el particionamiento de datos, despliegue de procesos, equilibrado de carga o paralelización de modelos. Además, en el proyecto consideramos entornos dedicados y no dedicados, normalmente representados como Cluster y Cloud respectivamente. Mientras los entornos tipo clúster heterogéneos derivan del uso de CPUs y GPUs en su construcción, los entornos Cloud son inherentemente heterogéneos. Ambos se utilizan en aplicaciones científicas, asociados a aplicaciones de alta carga computacional y comunicaciones, y a aplicaciones de proceso masivo de datos, respectivamente. El procesamiento de imágenes hiperespectrales es un campo que cubre ambas aproximaciones y lo consideramos el idóneo para el desarrollo de métodos y aplicaciones innovadoras, así como para la evaluación de los desarrollos realizados en la plataforma. El equipo investigador desarrollará nuevas técnicas para mejorar el rendimiento y la resiliencia de aplicaciones HPC con un alto nivel de innovación, derivado del uso de aproximaciones basadas en el aprendizaje automático (machine learning, deep learning y reinforcement learning) para afrontar problemas clásicos en entornos paralelos heterogéneos, como el particionamiento de datos, despliegue de procesos, equilibrado de carga o paralelización de modelos. Además, en el proyecto consideramos entornos dedicados y no dedicados, normalmente representados como Cluster y Cloud respectivamente. Mientras los entornos tipo clúster heterogéneos derivan del uso de CPUs y GPUs en su construcción, los entornos Cloud son inherentemente heterogéneos. Ambos se utilizan en aplicaciones científicas, asociados a aplicaciones de alta carga computacional y comunicaciones, y a aplicaciones de proceso masivo de datos, respectivamente. El procesamiento de imágenes hiperespectrales es un campo que cubre ambas aproximaciones y lo consideramos el idóneo para el desarrollo de métodos y aplicaciones innovadoras, así como para la evaluación de los desarrollos realizados en la plataforma.
Los tres aspectos fundamentales que dirigirán el desarrollo del proyecto son:
- La experiencia previa del equipo investigador en el desarrollo de soluciones para plataformas de computación heterogéneas y particularmente en aplicaciones de análisis de imágenes hiperespectrales obtenidas por sensores remotos.
- Las contribuciones de investigación del equipo investigador y los colaboradores internacionales en los campos anteriores.
- La posibilidad de explotar los desarrollos del proyecto en forma de transferencia de tecnología.
Nuestra aproximación metodológica se basa en dos aspectos principales: desarrollos analíticos y desarrollos computacionales. Específicamente, se plantean nuevos desarrollos analíticos para plataformas HPC Cluster/Cloud en el contexto del dominio de aplicaciones HSI. El conocimiento adquirido derivado de los desarrollos realizados se tomará como base para explorar e implementar nuevos entornos de paralelización. La transferencia de nuevos desarrollos analíticos a la implementación y viceversa se considera de vital importancia y con alto impacto en innovación, y requiere de especial atención a posibles sinergias entre las dos vertientes de desarrollo.
Para asegurar la validez de los desarrollos, contamos con la experiencia de prestigiosos investigadores internacionales que actuarán como evaluadores externos de nuestros métodos, a la vez que colaboradores en los mismos. Entre ellos, los investigadores relacionados en la propuesta colaboran con el Prof. Alexey L. Lastovetsky y Dr. Ravi Manumachu (Heterogeneous Computing Laboratory, University College Dublin, Irlanda), Dr. José Gracia (Department of Scalable Programming Models and Tools, of the High Performance Computing Center Stuttgart HLRS, Alemania), Prof. Emmanuel Jeannot (INRIA, French National Institute for Digital Sciences), Prof. Jun Li (Director del Hyperspectral Calibration Laboratory, Sun Yat-Sen University, Guangzhou, China), Prof. Zebin Wu (Director del Supercomputing Group, Nanjing University of Science and Technology, China).
Con respecto a la implementación y desarrollos computacionales, nuestra metodología incluye tres aspectos principales: simulación, prototipado y evaluación, y desarrollo final. Usaremos entornos de simulación para obtener resultados preliminares en varias plataformas, de las cuales la más completa es SIMGRID. En esta fase de simulación, realizaremos desarrollos iniciales que serán analizados y evaluados posteriormente en plataformas con recursos limitados disponibles localmente a los grupos de investigación involucrados en el proyecto, como pequeñas plataformas heterogéneas HPC. Finalmente, llevaremos a cabo una evaluación detallada de los desarrollos y determinaremos su escalabilidad en sistemas HPC reales, como los disponibles en CenitS-COMPUTAEX, que ya han sido utilizados por los investigadores del equipo con anterioridad y que suponen nuestra principal plataforma objetivo, y también en otros recursos disponibles a través de la RES (Red Española de Supercomputación) y plataformas comerciales que proporcionan recursos computacionales de tipo Cloud, como Amazon EC2, Microsoft Azure, etc.
Resolución de 9 de abril de 2020, (DOE núm. 87, de 7 de mayo) de la Secretaría General, por la que se aprueba la convocatoria de las ayudas destinadas a la realización de proyectos de investigación en los Centros Públicos de I+D+i de la Comunidad Autónoma de Extremadura, para la anualidad 2020. Secretaría General de Ciencia, Tecnología, Innovación y Universidad. Consejería de Economía, Ciencia y Agenda Digital.