E-book

Capítulo 6

Desarrollo de modelos de IA certificables


En los últimos años, han aparecido en el mercado los primeros dispositivos médicos basados en IA, todo un hito para innovadores del sector médico que utilizan algoritmos patentados de caja negra para diagnosticar o tratar una enfermedad.

Desarrollar modelos basados en IA que puedan certificarse a través de una autoridad reguladora es un desafío clave para desarrolladores de dispositivos médicos. Los dispositivos más recientes aprobados por organismos reguladores como la FDA de los Estados Unidos se han considerado de bajo riesgo para pacientes y han obtenido aprobación previa a la comercialización o clasificación De Novo como dispositivos de bajo riesgo.

Las autoridades reguladoras aún no han aprobado ningún dispositivo de posible alto riesgo para pacientes, tal como un algoritmo de diagnóstico, donde un falso positivo podría conducir a un procedimiento arriesgado. Se necesitarán controles adicionales para aprobar algoritmos de este tipo.

Con MATLAB y Simulink, no solo es posible desarrollar modelos de IA, sino también recopilar los datos necesarios para garantizar la calidad del software. Además:

  • MATLAB puede ayudar a crear un modelo de IA explicable e interpretable.
  • También se puede seguir un proceso formalizado para validar que el modelo cumpla con el estándar IEC 62304 durante la fase de desarrollo, que es un requisito para certificar el software basado en IA como dispositivo médico (SaMD).
partición

Interpretabilidad y explicabilidad

Interpretabilidad y explicabilidad están estrechamente relacionadas. La interpretabilidad se emplea más a menudo en el contexto de Machine Learning clásico, mientras que en el contexto de las redes neuronales profundas muchos hablan de la “explicabilidad de la IA”.

Rectángulo horizontal (negro a la izquierda, se desvanece a gris en el centro y blanco a la derecha) con la leyenda "modelos basados en datos" a la izquierda y la leyenda "modelos de principios básicos" a la derecha.

Los modelos se pueden englobar en un espectro de explicabilidad que abarca desde las cajas negras, que no proporcionan visibilidad sobre las decisiones de salida, y las cajas grises, que proporcionan cierta información, hasta la total transparencia de un modelo de principios básicos tradicional.

La interpretabilidad y la explicabilidad representan hasta qué punto las personas pueden comprender los algoritmos de Machine Learning. Los modelos de Machine Learning suelen denominarse “cajas negras” porque sus representaciones del conocimiento no son intuitivas y sus procesos de toma de decisiones no son transparentes. Por lo tanto, suele resultar difícil comprender cómo funcionan.

Las técnicas de interpretabilidad ayudan a revelar cómo los modelos de Machine Learning hacen predicciones, y cómo diversas características contribuyen (o no contribuyen) a las predicciones. Las técnicas de interpretabilidad pueden ayudar a:

  • Validar que el modelo está utilizando la evidencia adecuada para las predicciones.
  • Identificar sesgos en un modelo que no se hayan identificado durante el entrenamiento.

Algunos modelos de Machine Learning, tales como la regresión lineal, los árboles de decisión y los modelos aditivos generalizados, son interpretables de manera inherente. No obstante, la interpretabilidad a menudo se realiza a expensas de la capacidad y la precisión.

Gráfico que muestra la explicabilidad en el eje X, la capacidad predictiva en el eje Y, y los modelos comparados en el plano. Ejemplo: la regresión lineal es muy explicable y tiene baja capacidad predictiva. Las redes neuronales tienen una alta capacidad predictiva y baja explicabilidad.

Seleccionar un modelo a menudo implica un tradeoff entre explicabilidad y capacidad predictiva.

La interpretabilidad se ha destacado como principio rector estándar para el desarrollo de dispositivos médicos en el documento Good Machine Learning Practice publicado conjuntamente por la FDA de EE. UU., la Agencia de Salud de Canadá y la Agencia Reguladora de Medicamentos y Productos Sanitarios (MHRA) del Reino Unido [6]. Se pueden utilizar varias técnicas para generar un resultado de interpretación satisfactorio para los diversos modelos utilizando MATLAB para Machine Learning y Deep Learning. He aquí algunos ejemplos:

  • Explicaciones locales interpretables independientes del modelo (LIME)
  • Dependencia parcial (PDP)
  • Gráficas de expectativa condicional individual (ICE)
  • Valores de Shapely
  • Mapeo de activación de clase (CAM)
  • Mapeo de activación de clase ponderado por gradiente (Grad-CAM)
  • Sensibilidad a la oclusión
Árbol de decisión para seleccionar un enfoque de IA en función de la interpretabilidad del modelo.

Visión general de técnicas de Machine Learning explicables de manera inherente, diversos métodos de interpretabilidad independientes del modelo y orientación sobre cómo aplicarlos.

La interpretabilidad y la explicabilidad son el primer paso para comprender los modelos de IA. No obstante, a medida que se llega a las etapas posteriores del flujo de trabajo, querrá asegurarse de que el modelo se haya desarrollado de manera sólida. Las redes neuronales pueden ser propensas al fenómeno conocido como ejemplos contradictorios, donde cambios muy pequeños en una entrada (a menudo imperceptibles para el ser humano) pueden hacer que la entrada se clasifique incorrectamente. Puede usar Deep Learning Toolbox Verification Library para verificar si una red de Deep Learning es sólida ante ejemplos contradictorios y para calcular los límites de salida de un conjunto de límites de entrada.

partición

Validación y despliegue de modelos

Los fabricantes de dispositivos médicos se encargan de validar modelos basados en IA en colaboración con profesionales de investigación clínica. El documento Good Machine Learning Practice también destaca la importancia de validar modelos basados en IA realizando estudios clínicos que incluyan la población de pacientes prevista [6].

Con MATLAB, puede compartir una aplicación basada en IA con profesionales clínicos u hospitales para su validación. MATLAB proporciona opciones para crear una aplicación independiente que podría distribuirse, instalarse individualmente para el usuario final o alojarse en un servidor web para el acceso de múltiples usuarios a través de un navegador web.

MATLAB también dispone de prestaciones para desplegar aplicaciones de IA en servidores de producción y procesar rápidamente solicitudes simultáneas, junto con servidores paralelos para procesar mayores volúmenes de datos de pacientes por lotes. Existen opciones para generar código C/C++ autónomo desplegable de los algoritmos que podría implementarse fácilmente de manera independiente o integrarse con una aplicación clínica existente para realizar estudios de validación.

partición

Flujos de trabajo de certificación (IEC 62304)

MathWorks facilita el cumplimiento del estándar IEC 62304 para el desarrollo de software como dispositivo médico. Los flujos de trabajo de MATLAB incorporan la verificación y validación en el flujo de trabajo de desarrollo de software. Como resultado, el software se prueba y verifica exhaustivamente antes de integrarlo en un dispositivo médico.

MATLAB también posibilita los procesos de desarrollo de software proporcionando prestaciones para implementar planificación detallada de desarrollo de software, análisis de requisitos de software, diseño de arquitectura de software, diseño detallado de software, implementación y pruebas de unidades de software, integración y pruebas de software, y pruebas de sistemas de software como parte del flujo de trabajo de desarrollo de dispositivos médicos. Además, MATLAB y Simulink ayudan a evaluar el impacto de un cambio de software propuesto, ya que permiten simular los elementos de software afectados.

MATLAB genera la mayor parte de la documentación de conformidad con el estándar IEC 62304 para el desarrollo y mantenimiento de software. Puede obtener más información sobre los flujos de trabajo de IEC 62304 con MATLAB y Simulink en el white paper Developing IEC 62304–Compliant Embedded Software for Medical Devices (Desarrollo de software integrado conforme con IEC 62304 para dispositivos médicos).

partición

Khawaja obtiene la certificación IEC 62304

Desafío

El análisis de datos de electrocardiogramas (ECG) resulta esencial para detectar y tratar enfermedades cardiacas.

Solución

El equipo de ingeniería de Khawaja Medical Technology ha desarrollado algoritmos novedosos y avanzados basados en IA que automatizan completamente el análisis de señales de ECG. Estos algoritmos permiten la supervisión y el análisis en tiempo real de las señales de ECG de pacientes en descanso, haciendo ejercicio o usando un monitor Holter que realiza un seguimiento del ritmo cardiaco durante varios días. El grupo de ingeniería de Khawaja Medical Technology necesitaba desarrollar sofisticados algoritmos de procesamiento y análisis de señales de ECG. También necesitaban garantizar la conformidad con numerosos estándares internacionales que regulan el software de dispositivos médicos, tales como IEC 62304.

Esquema de procesamiento de señales de ECG con señales de ECG como entrada y resultados del análisis como salida.

Algoritmos de análisis de señales de ECG modelados en Simulink.

Resultados

Utilizando Simulink, el equipo redujo el plazo de desarrollo en un 40% en comparación con enfoques tradicionales siguiendo los flujos de trabajo de referencia de IEC Certification Kit para verificar y validar los modelos y el código generado automáticamente. Además, aceleraron la certificación y auditoría con TÜV SÜD para ISO® 13485 e IEC 62304.

Referencias

[6] “Good Machine Learning Practice for Medical Device Development: Guiding Principles”. Administración de Alimentos y Medicamentos de los Estados Unidos, Agencia de Salud de Canadá, Agencia Reguladora de Medicamentos y Productos Sanitarios del Reino Unido, octubre de 2021. https://www.fda.gov/media/153486/download