Logotipo de Zephyrnet

Simulación de fallas para la seguridad de la IA. Innovación en Verificación – Semiwiki

Fecha:

Más contenido automotriz 😀

En los automóviles modernos, la seguridad se rige tanto por funciones basadas en IA como por la lógica y el software tradicionales. ¿Cómo se pueden clasificar fallas estas funciones para el análisis FMEDA? Paul Cunningham (GM, Verificación en Cadence), Raúl Camposano (Silicon Catalyst, emprendedor, ex CTO de Synopsys y ahora CTO de Silvaco) y yo continuamos nuestra serie sobre ideas de investigación. Como siempre, los comentarios son bienvenidos.

Simulación de fallas para la clasificación de seguridad de IA

La innovación

La elección de este mes es SiFI-AI: un marco de simulación de fallas RTL rápido y flexible diseñado para modelos y aceleradores de IA. Este artículo fue publicado en el Simposio de los Grandes Lagos de 2023 sobre VLSI. Los autores son del Instituto Tecnológico de Karlsruhe, Alemania.

ISO 26262 requiere un análisis de seguridad basado en métodos FMEDA que utilizan simulación de fallas para evaluar la sensibilidad de las funciones críticas a fallas transitorias y sistemáticas, y la efectividad de la lógica de mitigación para proteger contra errores. El análisis comienza con la comprensión de los expertos en diseño de qué comportamientos de alto nivel deben garantizarse junto con qué fallas realistas podrían propagar errores en esos comportamientos.

Este conocimiento experto ya se entiende para la lógica y el software convencionales, pero aún no para los modelos de IA (redes neuronales) y los aceleradores en los que funcionan. Los ingenieros de seguridad necesitan ayuda para explorar los modos y efectos de fallas en los componentes de IA para saber dónde y cómo fallar los modelos y el hardware. Además, ese análisis debe ejecutarse a velocidades prácticas en los grandes modelos comunes para las DNN. Los autores proponen una nueva técnica que, según dicen, funciona mucho más rápido que los métodos actuales.

Punto de vista de pablo

Un artículo intrigante y que invita a la reflexión: ¿cómo se evalúa el riesgo de fallos aleatorios de hardware en un acelerador de IA utilizado para asistencia al conductor o conducción autónoma? La inferencia de IA es en sí misma un método estadístico, por lo que determinar la relación entre un cambio de bit aleatorio en algún lugar del acelerador y una inferencia incorrecta no es trivial.

Este artículo propone construir un sistema que pueda "intercambiar" una simulación RTL real de una sola capa de una red neuronal, una inferencia puramente basada en software de esa red en PyTorch. Se puede inyectar una falla en la capa que se simula RTL para evaluar el impacto de esa falla en la operación de inferencia general.

Los autores demuestran su método en el acelerador de IA de código abierto Gemmini que ejecuta redes de clasificación de imágenes ResNet-18 y GoogLeNet. Observan que cada elemento del conjunto del acelerador Gemmini tiene 3 registros (activación de entrada, peso y suma parcial) y una señal de selección de peso, en conjunto 4 posibles tipos de falla a inyectar. Realizan 1.5 millones de experimentos de inferencia, cada uno con una inyección de falla aleatoria, verificando si la clasificación principal de la red es incorrecta. Su tiempo de ejecución es impresionantemente 1 veces más rápido que el trabajo anterior, y sus gráficos validan la expectativa intuitiva de que las fallas en las capas anteriores de la red tienen más impacto que las de las capas más profundas.

Además, de sus datos se desprende claramente que se justifica algún tipo de mecanismo de seguridad de hardware (por ejemplo, votación triple), ya que la probabilidad absoluta de un error de clasificación de primer nivel es del 1 al 2% para fallas en las primeras 8 capas de la red. ¡Eso es demasiado alto para una experiencia de conducción segura!

La mirada de Raúl

La principal contribución de SiFI-AI es la simulación de fallas transitorias en aceleradores DNN que combinan una rápida inferencia de IA con una simulación RTL con precisión de ciclo y una inyección de fallas basada en condiciones. Esto es 7 veces más rápido que el estado del arte (referencia 2, Condia et al, Combinando simulación arquitectónica e inyección de fallas de software para una evaluación rápida y precisa de la confiabilidad de CNN en GPU). El truco consiste en simular sólo lo necesario en RTL con ciclos lentos y precisos. Las fallas modeladas son perturbaciones de evento único (SEU), es decir, cambios de bits transitorios inducidos por efectos externos como radiación y partículas cargadas, que persisten hasta la siguiente operación de escritura. En este caso es especialmente difícil saber si un solo fallo provocará un error; el alto grado de reutilización de datos podría conducir a una propagación significativa de fallas, y la simulación de fallas debe tener en cuenta tanto la arquitectura del hardware como la topología del modelo DNN.

SiFI-AI integra la simulación de hardware en el marco de ML (PyTorch). Para la simulación de HW, utiliza Verilator, un simulador de Verilog gratuito y de código abierto, para generar modelos RTL con precisión de ciclo. Un controlador de fallos gestiona la inyección de fallos según las indicaciones del usuario, utilizando un enfoque basado en condiciones, es decir, una lista de condiciones que evitan que un fallo quede enmascarado. Para seleccionar qué parte se simula en RTL, descompone las capas en mosaicos más pequeños según "las propiedades de la capa, la estrategia de mosaico de bucles, el diseño del acelerador y la falla respectiva” y selecciona un mosaico.

El dispositivo probado en la parte experimental es Gemmini, un acelerador DNN de matriz sistólica creado en la UC Berkeley en el proyecto Chipyard, en una configuración de 16×16 elementos de procesamiento (PE). SiFI-AI realiza un estudio de resiliencia con experimentos de inyección de fallas de 1.5 M en dos cargas de trabajo DNN típicas, ResNet-18 y GoogLeNet. Las fallas se inyectan en tres registros de datos PE y una señal de control, según lo especificado por el usuario. Los resultados muestran una baja probabilidad de error, lo que confirma la resiliencia de las DNN. También muestran que las fallas de las señales de control tienen mucho más impacto que las fallas de las señales de datos, y que las capas anchas y poco profundas son más susceptibles que las capas estrechas y profundas.

Este es un buen artículo que avanza en el campo de la evaluación de la confiabilidad de DNN. El documento está bien escrito y es claro y proporciona suficientes detalles y referencias para respaldar las afirmaciones y los resultados. Aunque la idea central de combinar simulación en diferentes niveles es antigua, los autores la utilizan de forma muy eficaz. Marcos como SciFI-AI pueden ayudar a diseñadores e investigadores a optimizar sus arquitecturas y hacerlas más resistentes. También me gusta el análisis del impacto de las fallas en diferentes capas y señales, que revela algunas ideas interesantes. El documento podría mejorarse proporcionando más información sobre la estrategia de inyección de fallas y la selección de los mosaicos. A pesar de que el tema es bastante específico, en general, ¡un artículo muy agradable!

Comparte esta publicación a través de:

punto_img

Información más reciente

punto_img