Full text
Inteligencia Artificial Explicable para el reconocimiento de fracturas de cadera eXplainable Artificial Intelligence for hip fracture recognition Trabajo de Fin de Grado Curso 2023–2024 Autores Marius Ciurcau Alejandro Paz Olalla Enrique Queipo de Llano Burgos Directores Belén Díaz Agudo Juan A. Recio García Doble Grado en Ingeniería Informática y Matemáticas Facultad de Informática Universidad Complutense de Madrid
Inteligencia Artificial Explicable para el reconocimiento de fracturas de cadera eXplainable Artificial Intelligence for hip fracture recognition Trabajo de Fin de Grado en Ingeniería Informática Autores Marius Ciurcau Alejandro Paz Olalla Enrique Queipo de Llano Burgos Directores Belén Díaz Agudo Juan A. Recio García Convocatoria: Junio 2024 Doble Grado en Ingeniería Informática y Matemáticas Facultad de Informática Universidad Complutense de Madrid 27 de mayo de 2024
Dedicatoria A nuestros padres, por confiar en nosotros y acompañarnos estos cincos años. v
Agradecimientos A nuestros tutores, Belén y Juanan, por la paciencia y cercanía que han demostrado durante la realización del trabajo. A la fundación Müller España y al Servicio de Cirugía Ortopédica y Traumatología del Hospital Universitario Virgen de la Victoria de Málaga, por cedernos las imágenes y orientarnos en la clasificación de fracturas de cadera. A todos los que se han tomado el tiempo de responder a nuestros largos cuestionarios y evaluar nuestro sistema. En especial, al Dr. Alfonso Queipo de Llano, padre de Enrique, por la original idea del trabajo, la valiosa ayuda en la búsqueda de los fondos de imágenes y por todo el tiempo que ha dedicado al proyecto. vii
Resumen Con el rápido crecimiento de la Inteligencia Artificial (IA) a nivel mundial, se ha puesto de manifiesto la necesidad de que los modelos de IA sean confiables y transparentes, condición esencial para que sean adoptados de forma generalizada en ámbitos como el sanitario, financiero o legislativo, que involucran la toma de decisiones críticas que pueden afectar a la vida de las personas. Los profesionales necesitan estar seguros de que las decisiones automatizadas son correctas, justas y libres de sesgos. Además, la interpretabilidad de los modelos de IA es fundamental para la identificación y mitigación de errores, especialmente aquellos basados en redes neuronales profundas, que a menudo funcionan como una “caja negra”, donde los procesos internos que llevan a una decisión son opacos y difíciles de interpretar. Esta necesidad ha dado lugar al desarrollo de la Inteligencia Artificial eXplicable (o XAI, por sus siglas en inglés), que se enfoca en la precisión de los modelos, pero también en su interpretabilidad y en la capacidad de los usuarios para comprender y confiar en las decisiones tomadas por estos sistemas. Este trabajo se centra en la aplicación de la IA para resolver el problema de la clasificación automática de fracturas de cadera en radiografías, que representa un desafío relevante, puesto que ciertos tipos de fracturas pueden pasar desapercibidos en una primera evaluación clínica. En él, presentamos un modelo basado en redes neuronales convolucionales (CNN) para la clasificación de fracturas de cadera. Además, exploramos diversos métodos de explicación dentro del marco de la XAI, que tienen el potencial de ser de gran utilidad en una aplicación clínica, tanto para los médicos especialistas como para los propios pacientes. Palabras clave Fracturas de cadera, Inteligencia Artificial (IA), Redes Neuronales Convolucionales (CNN), Diagnóstico médico, IA Explicable (XAI), Razonamiento basado en casos (CBR). ix
Índice de figuras 2.1. Funciones de activación comunmente empleadas. . . . . . . . . . . . . 11 2.2. Estructura del perceptrón simple. . . . . . . . . . . . . . . . . . . . . 11 2.3. Arquitectura del modelo ResNet18. Fuente: Misra et al. (2020) . . . . 12 3.1. Clasificación AO/OTA. Las fracutras de tipos A, B y C se dividen en subgupos. Las fracturas de tipo A se denominan de la “región trocantérea”, por ocurrir en la región del trocánter. Las de tipo B se denominan de “cuello femoral” y las de tipo C de “cabeza femoral”, puesto que ocurren en las zonas del cuello y la cabeza del fémur, respectivamente. Tomada de Tanzi et al. (2022). . . . . . . . . . . . . 19 3.2. Esquema del proceso de recolección y procesado de imágenes del dataset 20 3.3. A la izquierda, radiografía con huesos en negro sobre fondo blanco. En el centro, radiografía que presenta implantes y a la derecha, radiografía bilateral con los recortes de fémures realizados por YOLOv5. 21 3.4. Se muestra secuencialmente el proceso aplicado a una imagen (a): (b) recorte de un fémur (en este caso el izquierdo), (c) imagen volteada y (d) ajuste de escala de grises y resize.................. 23 3.5. Imágenes del dataset final con las aumentaciones incluidas . . . . . . 25 4.1. Ejemplo de predicciones para gatos. . . . . . . . . . . . . . . . . . . . 29 4.2. Gráfico precisión YOLOv5. . . . . . . . . . . . . . . . . . . . . . . . . 30 4.3. Gráfico recall YOLOv5. ......................... 31 4.4. Curva precisión-recall YOLOv5 ..................... 32 4.5. Curva de confianza YOLOv5 . . . . . . . . . . . . . . . . . . . . . . . 33 4.6. Matriz de Confusión YOLOv5 . . . . . . . . . . . . . . . . . . . . . . 34 4.7. Métricas durante el entrenamiento en YOLOv5 . . . . . . . . . . . . 35 4.8. Métricas durante el entrenamiento en YOLOv8 . . . . . . . . . . . . 36 4.9. A la izquierda ejecución de YOLOv8, a la derecha ejecución de YOLOv5. 36 4.10. Matriz de confusion del modelo MLP. . . . . . . . . . . . . . . . . . . 38 4.11. Resultados del modelo MLP. . . . . . . . . . . . . . . . . . . . . . . . 38 4.12. Matriz de confusión para el clasificador SVM. . . . . . . . . . . . . . 39 4.13. Matriz de confusión para el clasificador RBF-SVM. . . . . . . . . . . 39 4.14. Matriz de confusión para el árbol de decisión. . . . . . . . . . . . . . 39 xvii
4.15. Report del modelo MLP tras implementar mejoras. . . . . . . . . . . 40 4.16. Matriz Confusión sobre test SimpleCassifier PyTorch. . . . . . . . . . 41 4.17. Matriz de confusión del modelo con ResNet 18 entrenado con ROB y AO. .................................... 43 4.18. Precisión del modelo en el conjunto de test en cada uno de los fold de la validación cruzada durante un entrenamiento de 10 etapas. . . . 48 4.19. Valor de la función de coste en el conjunto de test en cada uno de los fold de la validación cruzada durante un entrenamiento de 10 etapas. 48 5.1. Intuición sobre el funcionamiento de Grad-CAM. Fuente: Lin et al. (2014).................................... 53 5.2. En la primera fila, Grad-CAM aplicado a 5 imágenes de AO, en la segunda fila, Grad-CAM aplicado a 5 imágenes de ROB, en la tercera fila, Grad-CAM aplicado a 5 imágenes de HVV. En los tres casos se muestran dos visualizaciones distintas de la misma explicación, a la izquierda se ocultan las zonas no influyentes en la predicción, a la derecha, se muestra un mapa de calor usual. Se utiliza el modelo ResNet18 de dos clases. . . . . . . . . . . . . . . . . . . . . . . . . . . 54 5.3. En la primera fila, CAM aplicado a 5 imágenes de AO. En la segunda fila, Grad-CAM aplicado a 5 imágenes de ROB. En la tercera fila, Grad-CAM aplicado a 5 imágenes de HVV. En los tres casos se muestran dos visualizaciones distintas de la misma explicación, a la izquierda se ocultan las zonas no influyentes en la predicción, a la derecha, se muestra un mapa de calor usual. Se utiliza el modelo ResNet18de3clases............................ 55 5.4. Ejemplos de malas explicaciones, según el Dr. Queipo. . . . . . . . . . 56 5.5. Ejemplos de buenas explicaciones, según el Dr. Queipo. . . . . . . . . 56 5.6. Modelo entrenado para detectar osos. A la izquierda, Grad-CAM aplicado a una imagen. A continuación, resultado de perturbar con Deletion el 10 % de los píxeles más inflyentes, resultado de eliminar el 25 % de los píxeles más importantes y resultado de aplicar ROAD al 25% de los píxeles más importantes, respectivamente. Tomada del repositorio de GitHub1con el que hemos implementado Grad-CAM. . 60 5.7. Score de ROAD para distintos métodos de CAM. . . . . . . . . . . . 62 5.8. Score promedio de ROAD por clase y tipo de modelo obtenido por Grad-CAM ................................ 63 5.9. Saliency .................................. 65 5.10. GradientInput ............................... 65 5.11. IntegratedGradients ............................ 65 5.12. SmoothGrad ................................ 65 5.13. SquareGrad ................................ 65 5.14. VarGrad .................................. 65 5.15. Occlusion ................................. 65 5.16.RISE.................................... 65 5.17. SobolAttributionMethod .......................... 65
5.18.LIME ................................... 65 5.19. Kernel Shap ................................ 65 5.20. Explicaciones de Xplique sobre algunas de las fracturas presentadas enlasecciónanterior............................ 65 5.21. Deletion enXplique. ........................... 66 5.22. Insertion enXplique............................ 66 5.23. Comparativa de imagénes de un barco con diferentes tipos de distorsiones, todas con MSE = 210. (a) Imagen original (8 bits/píxel). (b) Realce de constraste (Contrast-Stretch), MSSIM = 0.9168. (c) Desplazamiento de media (Mean-Shift), MSSIM = 0.9900. (d) Compresión JPEG, MSSIM = 0.6949. (e) Imagen emborronada (blur), MSSIM = 0.7052. (f) Imagen contaminada por ruido, MSSIM = 0.7748. Figura tomada de Zhou Wang et al. (2004). . . . . . . . . . . . . . . . . . . 67 5.24. Explicaciones de “No Fractura” mediante factuals ........... 67 6.1. Arquitectura Twin-surrogate. . . . . . . . . . . . . . . . . . . . . . . 70 6.2. Interfaz gráfica de usuario que incluye las modalidades de explicación. 71 6.3. Ciclo CBR (Aamodt y Plaza, 1994). . . . . . . . . . . . . . . . . . . . 72 6.4. Caso prototípico y explicación textual . . . . . . . . . . . . . . . . . . 73 6.5. Representación de los clústeres. . . . . . . . . . . . . . . . . . . . . . 75 6.6. SSIM medio de los clústeres resultantes. . . . . . . . . . . . . . . . . 76 6.7. Imagen más similar encontrada dada una radiografía . . . . . . . . . 76 7.1. Fase inicial del experimento . . . . . . . . . . . . . . . . . . . . . . . 83 7.2. Experimento1. .............................. 84 7.3. Experimento2. .............................. 84 7.4. Experimento3. .............................. 85 7.5. Proporción de métodos de explicación visual preferidos para cada subconjuntodedatos............................ 86 7.6. Proporción de métodos de explicación visual preferidos según cada rol. 86 8.1. YOLOv8 sobre una fractura. . . . . . . . . . . . . . . . . . . . . . . . 94 A.1. Ejemplos de malas explicaciones, según el Dr. Queipo. . . . . . . . . . 117 A.2. Ejemplos de buenas explicaciones, según el Dr. Queipo. . . . . . . . . 118 A.3. Algoritmo de detección de desplazamiento. . . . . . . . . . . . . . . . 118 A.4. Fractura finalmente bien predicha y explicada. . . . . . . . . . . . . . 119 A.5. Nuestro primer ejemplo de Grad-CAM para el modelo de tres clases, entrenado solo con ROB. . . . . . . . . . . . . . . . . . . . . . . . . . 119 A.6. Mosaico de Grad-CAM para el modelo original de dos clases entrenado con ROB. Un ejemplo claro es la primera imagen de la última fila......................................121 A.7. Mosaico de Grad-CAM para el modelo de dos clases entrenado con todos los datos. Ver, por ejemplo, ROB_1027, AO_0079 o HVV_0101.122
A.8. Mosaico de Grad-CAM para el modelo de tres clases entrenado con todos los datos. Ver, por ejemplo, ROB_1008, AO_0121 o HVV_0013.123
Cap´ ıtulo 1 Introducción 1.1. Motivación En la actualidad, la Inteligencia Artificial (IA) ha avanzado considerablemente, logrando resultados sobresalientes en diversos campos, lo que ha mejorado significativamente la vida de muchas personas. Sin embargo, la IA se enfrenta ahora a un desafío aún mayor: dejar de ser percibida como una “caja negra” que genera resultados excelentes de manera mágica y poco comprensible. Tanto es así que, organismos como la Unión Europea comienzan legislar sobre la IA y a dar pautas sobre cómo hacer IA de excelencia y “de confianza”. Ejemplos de ellos son el Reglamento General de Protección de Datos (RGPD)1, que regula el tratamiento de datos personales relacionados con personas de la Unión Europea, o la Ley de Inteligencia Artificial2, recientemente aprobada en el Parlamento Europeo. Este nuevo reto se centra en comprender y explicar cómo la IA toma decisiones y genera sus resultados, algo cada vez más necesario a medida que los modelos de IA se vuelven más complejos y se aplican en áreas como la medicina, las finanzas o la conducción autónoma, donde se toman decisiones críticas y, por tanto, es crucial que podamos entender el proceso interno que conduce a sus conclusiones. En definitiva, dado que la IA ha irrumpido en nuestras vidas y también debido a la legislación actual, la transparencia y la interpretabilidad de los modelos de IA son fundamentales para su adopción generalizada y su aplicación ética: tanto los usuarios como los profesionales y el público en general necesitan comprender cómo funciona la IA, qué información utiliza para tomar decisiones y cómo se pueden interpretar sus resultados. En este trabajo, pretendemos abordar el problema del reconocimiento de las fracturas de cadera, que consisten en las roturas del fémur en la articulación de la cadera. Pondremos un enfoque especial en la obtención de los datos, el entrenamiento de los modelos pero, sobre todo, en la generación de explicaciones en distintas modalidades, intentando combatir así el problema de la “caja negra” (Wadden, 2022). Las fracturas de cadera, principalmente las fracturas del cuello femoral, repre1https://gdpr-info.eu/ 2https://artificialintelligenceact.eu/es/ 1
2Capítulo 1. Introducción sentan un desafío de diagnóstico significativo debido a su naturaleza evasiva en las radiografías convencionales (Deleanu et al., 2015). Las líneas de este tipo de fracturas no siempre son fácilmente visibles y pueden ser obviadas por médicos no especializados, lo cual destaca la necesidad de sistemas de diagnósticos refinados. Además, en medio del rápido crecimiento de la IA, ya no priman los modelos altamente precisos, sino los modelos transparentes capaces de explicar los motivos por los que toman decisiones, cualidad que los hace aplicables en el mundo real. Esto es de especial importancia en el ámbito médico, donde una explicación no solo puede ayudar al médico a dar un diagnóstico, sino que también ofrece transparencia al paciente cuya salud está siendo evaluada, en parte, por un algoritmo. 1.2. Objetivos El objetivo principal de este trabajo es el desarollo de un modelo de clasificación basado en redes neuronales capaz de clasificar con precisión las fracturas de cadera en radiografías y centrado en la necesidad de generar explicaciones para aumentar la confianza y la interpretabilidad. Para ello, abordamos los siguientes subobjetivos: O1. Buscar y elaborar un conjunto de datos compuesto de radiografías apropiado para la tarea. O2. Comprender las técnicas de IA empleadas habitualmente en el procesamiento de imágenes médicas, centrándonos en las Redes Neuronales Convolucionales (CNN) y, particularmente, en las redes You Only Look Once (YOLO). O3. Evaluar el uso de los distintos modelos de IA en las tareas de reconocimiento y clasificación de fracturas de cadera. O4. Comprender los métodos de Inteligencia Artificial Explicable (XAI) basados en gradientes habitualmente usados en la clasificación de imágenes. O5. Aplicar diversas explicaciones al modelo y seleccionar las más idóneas. O6. Aprovechar conocimiento experto para evaluar la utilidad de las explicaciones generadas. O7. Extender la interpretabilidad del modelo, incluyendo explicaciones textuales mediante Razonamiento Basado en Casos (CBR), integrado con Large Language Models (LLMs). O8. Elaborar un sistema de XAI multimodal para el diagnóstico y explicación de fracturas de cadera. O9. Llevar a cabo una evaluación del sistema con usuarios donde se valore tanto la capacidad predictiva del sistema como su explicabilidad.
1.3. Plan de trabajo 3 1.3. Plan de trabajo Con el fin de completar los objetivos anteriores, describimos el plan de trabajo que hemos seguido durante el curso. En primer lugar, estudiamos el estado del arte para este problema, explorando artículos sobre modelos previamente empleados para la clasificación de fracturas de cadera. Examinando sus técnicas observamos que nuestra mayor dificultad tendría que ver con la escasez de datos fácilmente obtenibles, por lo que desde un primer momento centramos nuestro trabajo en la elaboración de un conjunto de datos suficientemente grande y de calidad considerable. Para ello, consultamos numerosas fuentes y nos pusimos en contacto con diversos investigadores. Además, con idea de unificar las imágenes que obtuviéramos y cuya procedencia no fuera la misma, estudiamos los modelos YOLO para recortar la zona de la cadera de las radiografías obtenidas. Dedicamos los primeros meses del curso a estas tareas, hasta el comienzo del mes de diciembre. Tras conseguir una cantidad de datos razonable, de buena calidad y preprocesarlos para que estos fueran homogéneos, el siguiente paso fue desarrollar los primeros modelos a modo de prueba con Scikit-learn, para después elaborar modelos más complejos basados en PyTorch con vistas a añadir la explicabilidad. Una vez conseguimos desarrollar un modelo en Pytorch que proporcionara resultados satisfactorios, llegó el momento de aplicar diversas técnicas de explicaciones visuales para entender cómo clasificaba el modelo y si era capaz de reconocer fracturas de forma análoga a un experto. Puesto que ninguno de los integrantes del grupo tiene los conocimientos necesarios para identificar fracturas de cadera en radiografías, acudimos en reuniones al Dr. D. Alfonso Queipo de Llano, especialista en cirugía ortopédica y traumatología, con muestras de las explicaciones generadas para nuestro modelo y con el fin de que este nos expusiera su opinión sobre las mismas. Para la implementación de estos primeros modelos, sus explicaciones visuales y la correspondiente evaluación de las mismas, dedicamos los meses de enero y febrero. Posteriomente, consideramos añadir explicaciones basadas en textos mediante el uso del ciclo CBR. Para ello, necesitaríamos una pequeña muestra de ejemplos de diagnósticos textuales de fracturas. La recolección de los casos y la implementación del razonamiento basado en casos para las explicaciones junto con la integración de LLMs se llevó a cabo durante el mes de marzo. Por último, centramos nuestros esfuerzos en aprovechar el conocimiento experto para evaluar el modelo y sus explicaciones, así como para obtener feedback que nos capacite para mejorarlo. El mes de abril se dedicó a la formulación de hipótesis sobre el funcionamiento del sistema elaborado y a la creación de cuestionarios que nos permitieron estudiar la veracidad de las mismas. En cuanto a la organización, hemos utilizado plataformas adecuadas para el trabajo colaborativo, como GitHub para gestionar el código, Overleaf para redactar este documento, y Google Drive para almacenar los archivos que usamos como referencias. Finalmente, hemos redactado esta memoria a medida que avanzábamos en el proyecto. También hemos mantenido reuniones periódicas con los tutores, inicialmente cada dos semanas y posteriormente, durante el segundo cuatrimestre, de forma se-
4Capítulo 1. Introducción manal, para comentar nuestros avances y los próximos pasos a seguir. 1.4. Estructura de la memoria En primer lugar, el Capítulo 2 describe el “estado del arte” del problema. En él se expone el trabajo de numerosos autores que están relacionados con el desarrollo del nuestro, principalmente sobre la aplicación de algoritmos de IA a fracturas de cadera, pero también sobre los propios modelos, métodos de explicación y arquitecturas que hemos utilizado. Los siguientes capítulos se dedican a la explicación detallada de todo el proceso seguido. No es posible entrenar ningún modelo de IA sin un conjunto de datos sustancial y correctamente etiquetado, por lo que el Capítulo 3 describe esta primera tarea de obtención y preprocesado del dataset, así como las dificultades derivadas de tratarse de un campo médico especializado. El proceso de implementación de los modelos, así como su correspondiente evaluación, se presenta en el Capítulo 4. Una vez que desarrollamos un modelo que proporcionase resultados satisfactorios, centramos nuestra atención en buscar explicaciones multimodales e identificar las más útiles, lo que se detalla en el Capítulo 5 con explicaciones de tipo visual y en el Capítulo 6, que expone el uso de CBR para la generación de explicaciones de tipo textual a partir de casos “prototípicos”. El Capítulo 7 describe la elaboración de experimentos a distribuir a expertos en el área y la exposición de sus resultados. Por último, el Capítulo 8 expone las conclusiones del trabajo y las posibles líneas de trabajo futuro. 1.5. Repositorio Todo el código desarrollado, los modelos y los conjuntos de datos se pueden encontrar en un repositorio de Github de uno de los autores, que es accesible a través de https://github.com/MariusCiurcau/TFG-XAI-for-Hip-Fracture-Recognition.
Introduction 1.1. Motivation Artificial Intelligence (AI) has advanced considerably, achieving outstanding results in various fields and significantly improving the lives of many people. However, AI now faces an even greater challenge: it must stop being perceived as a “black box” that produces excellent results in a magical and incomprehensible way. So much so that organizations like the European Union are starting to legislate AI and provide guidelines on how to create excellent and “trustworthy” AI. Examples include the General Data Protection Regulation (GDPR)3, which regulates the processing of personal data related to individuals in the European Union, and the Artificial Intelligence Act4recently approved by the European Parliament. This new challenge focuses on understanding and explaining how AI makes decisions and generates its results, something increasingly necessary as AI models become more complex and are applied in areas such as medicine, finance, or autonomous driving, where critical decisions are made. Therefore, it is crucial to understand the internal process that leads to its conclusions. Ultimately, given that AI has permeated our lives and due to current legislation, the transparency and interpretability of AI models are fundamental for their widespread adoption and ethical application: users, professionals, and the general public need to understand how AI works, what information it uses to make decisions, and how its results can be interpreted. In this work, we aim to address the problem of recognizing hip fractures, which are breaks in the femur bone at the hip joint. We will place a special focus on data acquisition, model training, but above all, on generating explanations in various modalities, thereby attempting to combat the “black box” problem (Wadden, 2022). Hip fractures, particularly femoral neck fractures, pose a significant diagnostic challenge due to their elusive nature on conventional X-rays (Deleanu et al., 2015). The lines of these types of fractures are not always easily visible and can be overlooked by non-specialist doctors, highlighting the need for refined diagnostic systems. Moreover, amid the rapid growth of AI, it is no longer just about highly accurate models but also about transparent models capable of explaining the rea3https://gdpr-info.eu/ 4https://artificialintelligenceact.eu/ 5
12 Capítulo 2. Estado de la Cuestión Figura 2.3: Arquitectura del modelo ResNet18. Fuente: Misra et al. (2020) filtros y las conexiones. Sin embargo, debido a su arquitectura especializada, las CNNs son particularmente eficaces para tareas de visión por computador, como la clasificación de imágenes, la detección de objetos y la segmentación de imágenes. Como caso particular de red neuronal convolucional, en el este proyecto se ha utilizado ResNet18 (Misra et al., 2020), que es una arquitectura de red neuronal convolucional basada en bloques residuales. Los bloques residuales están diseñados para abordar el problema de los gradientes excesivamente pequeños que aparecen durante el proceso de entrenamiento de redes neuronales muy profundas. Como ya sabemos, en una red neuronal, cada capa aprende una representación de la entrada y la pasa a la siguiente capa y, una vez que se ha llegado a la capa final, mediante el algoritmo de backpropagation, el error se propaga desde esta última capa hasta la primera. Evidentemente, a medida que la red se vuelve más profunda, entrenarla puede convertirse en un problema, pues si el error se propaga a través de muchas capas, los gradientes utilizados para seguir la dirección de mejora de los pesos de la red pueden ser tan pequeños que pueden producirse fenómenos como el estancamiento del entrenamiento o la degradación del rendimiento, de modo que agregar más capas no necesariamente mejora el rendimiento del modelo. Los bloques residuales resuelven este problema introduciendo conexiones de salto oskip connections, que permiten que la información fluya directamente a través de la red sin atravesar cada capa de manera lineal. En lugar de intentar aprender la representación exacta de la entrada, el bloque residual aprende una función de cambio que se aplica a la entrada original, y que representa la diferencia entre la entrada y la salida esperada del bloque. ResNet18 consta de un total de 18 capas y utiliza capas de convoluciones 3x3 y de pooling máximo para reducir progresivamente el tamaño espacial de la representación (y por tanto el número de parámetros del modelo), permitiendo que la red aprenda características a diferentes escalas. Cada bloque residual en ResNet18 consta de dos capas de convolución seguidas de una capa de identidad que suma la entrada original al resultado de las convoluciones. En la Figura 2.3 se muestra la arquitectura de este modelo.
2.2. Aplicación de las CNN a las fracturas de cadera 13 2.1.3. Redes YOLO YOLO (Redmon et al., 2016) es un modelo de detección de objetos que opera en tiempo real mediante un enfoque unificado. El modelo divide la imagen de entrada en una cuadrícula y, para cada celda, predice varias cajas delimitadoras con sus correspondientes puntuaciones de confianza y etiquetas de clase. Las coordenadas de las cajas, las puntuaciones de confianza y las probabilidades de clase se predicen simultáneamente en una sola pasada a través de la red neuronal. Posteriormente, se aplican técnicas de supresión de no-máximos para eliminar las cajas redundantes y mantener solo las predicciones más precisas. Este método permite a YOLO ser extremadamente rápido y eficiente, ideal para aplicaciones que requieren detección de objetos en tiempo real. Las recientes redes YOLO han avanzado significativamente desde su primera introducción. Las versiones más recientes, como YOLOv5 y la última YOLOv8 (Jocher et al., 2023), han mejorado continuamente en términos de velocidad, precisión y eficiencia. Estas versiones incorporan técnicas avanzadas de aprendizaje profundo, como mosaico de datos, entrenamientos con imágenes de diferentes resoluciones, y nuevos módulos de red que optimizan el rendimiento. En particular, YOLOv5 ha demostrado ser muy eficaz en la detección precisa y rápida de objetos, utilizando menos recursos computacionales en comparación con sus predecesores. Además, el desarrollo de las redes YOLO sigue activo, con constantes mejoras y adaptaciones que amplían su aplicabilidad a diversos campos, desde la vigilancia y la conducción autónoma hasta la medicina y la agricultura, consolidándose como una herramienta esencial en el panorama de la IA y la visión por computador. En la Sección 4.1 se explica cómo se han utilizado YOLOv5 y YOLOv8 para generar recortes del fémur en radiografías completas de cadera. Además, en dichas secciones, se analiza meticulosamente el rendimiento de estos dos modelos. 2.2. Aplicación de las CNN a las fracturas de cadera En esta sección, revisamos la literatura relevante, incluido el trabajo pionero de Krogue et al. (2020), Tanzi et al. (2022) y Twinprai et al. (2022), junto con otras contribuciones significativas en el campo. Krogue et al. (2020) llevaron a cabo una investigación innovadora con el objetivo de automatizar la identificación y clasificación de fracturas de cadera utilizando técnicas de aprendizaje profundo. Su estudio involucró el análisis de radiografías de cadera y pelvis de un conjunto de datos sustancial que comprendía 1118 estudios y 3026 caderas recopiladas a lo largo de 20 años. A través de una etiquetación y clasificación meticulosas, entrenaron un modelo de detección de objetos basado en aprendizaje profundo (DenseNet169) para identificar y clasificar automáticamente fracturas de cadera en varias categorías, incluidas las fracturas del cuello femoral desplazadas y no desplazadas, las fracturas intertrocantéreas, así como intervenciones quirúrgicas previas, como la reducción abierta y fijación interna o la artroplastia. Los resultados de la investigación de Krogue et al. (2020) fueron muy prometedores, con el modelo desarrollado alcanzando tasas de precisión notables. La precisión binaria para detectar una fractura alcanzó el 93.7%, con una sensibilidad del 93.2%
14 Capítulo 2. Estado de la Cuestión y una especificidad del 94.2%. Además, la precisión de la clasificación multiclase alcanzó un 90.8 %. Notablemente, el rendimiento del modelo fue comparable o incluso superó al de expertos humanos, incluidos radiólogos y ortopedistas entrenados, bajo diversas condiciones. En cuanto a la explicabilidad, se aplicaron explicaciones por gradientes basados en puntos al modelo. Se observa que el modelo parece prestar atención a los contornos corticales del hueso para realizar su clasificación, mientras que la línea de fractura lúcida parece recibir muy poca atención. Además, Krogue y su equipo demostraron que el uso del modelo de aprendizaje profundo mejoró significativamente el rendimiento humano en la clasificación de fracturas de cadera. Cuando se ayudaron con las predicciones del modelo, los médicos residentes alcanzaron una precisión asemejable a la de los médicos expertos sin ayuda. El trabajo de Tanzi et al. (2022) representa un avance significativo en la clasificación de fracturas de fémur, particularmente en la clasificación de subfracturas. El estudio utilizó una arquitectura basada en Vision Transformers (ViT) para clasificar fracturas de fémur con una precisión notable, mejorando sustancialmente los métodos base como InceptionV3 o las redes jerárquicas. A través de experimentación y evaluación extensivas, Tanzi et al. demostraron que ViT superó otros enfoques existentes y proporcionó información valiosa sobre la localización de las fracturas y la extracción de features. Los mapas de atención generados por ViT revelaron el enfoque de la red en regiones anatómicas específicas, mejorando la interpretabilidad y la relevancia clínica. Además, el estudio destacó el efecto sinérgico de combinar las predicciones de ViT con la experiencia de los profesionales mediante un sistema de diagnóstico asistido por computador (CAD), lo que resultó en una precisión significativamente mejorada, en comparación con cada enfoque por separado. Es importante destacar que el trabajo de Tanzi et al. es pionero en la clasificación precisa de subfracturas, abordando una necesidad crítica en el diagnóstico médico y obteniendo resultados satisfactorios sobre el tema. Este uso de ViT en la clasificación de fracturas de fémur establece un nuevo estándar para la investigación futura en este ámbito, con aplicaciones potenciales que se extienden a niveles más complejos de subfracturas en el sistema de clasificación AO/OTA3(Meinberg et al., 2018). Twinprai et al. (2022) muestran el rendimiento de un modelo YOLO-v4-Tiny entrenado con un conjunto de datos cuidadosamente elaborado de 900 imágenes de entrenamiento. Para entrenarlo, debieron dibujar una cuadro delimitador (bounding box) señalando las fracturas en las imágenes con una herramienta de etiquetado de datos. Mientras que los dos trabajos anteriores estudian la mejora de precisión de los expertos al apoyarse en el modelo, este artículo muestra la comparación de rendimiento entre el modelo y varios médicos humanos de diferentes niveles de experiencia. Otros estudios previos exitosos incluyen los modelos de Gao et al. (2023), que utilizó DenseNet-121 para una exhaustividad del 98 % y una precisión del 91% e implementó explicaciones Grad-CAM. Lee et al. (2020) utilizó con éxito la red neuronal profunda de metaaprendizaje GoogLeNet (Inception v3) para clasificar fracturas 3Clasificación de fracturas y dislocaciones propuesta por la AO Foundation y la Orthopedic Trauma Association. Se verá con mayor detalle en el Capítulo 3. https://www.aofoundation. org/trauma/clinical-library-and-tools/journals-and-publications/classification.
2.3. Inteligencia Artificial Explicable 15 femorales en radiografías. Adams et al. (2019) comparó AlexNet y GoogLeNet para la detección de fracturas de cuello femoral con una precisión del 88.1 % y 89.4%, respectivamente. 2.3. Inteligencia Artificial Explicable La importancia de la XAI radica en su capacidad para mejorar la aceptación de los modelos de IA, pues esta ofrece herramientas que nos permiten garantizar la ética y la legalidad de un modelo y, además, hace el proceso de toma de decisiones del mismo más transparente, favoreciendo así su comprensión y permitiendo posibles mejoras en su rendimiento. En un entorno en el que la inversión en tecnologías de IA está en constante aumento, enfrentamos desafíos significativos debido a diversos factores socio-organizacionales y a la falta de transparencia en los modelos tradicionales de IA (Gamoura, 2023). La XAI aborda estas preocupaciones proporcionando explicaciones comprensibles y justificables sobre cómo los modelos de IA toman decisiones, lo que promueve la confianza y mitiga la resistencia a la adopción de IA. Además, la XAI suministra a los modelos de IA los requisitos necesarios para cumplir con las normas legales y éticas, como el RGPD de la UE, que defiende el derecho a conocer el tratamiento de los datos personales. Al facilitar una comprensión más profunda y detallada de los resultados generados por los sistemas de IA, la XAI no solo mejora la transparencia y la confianza, sino que también optimiza la colaboración entre humanos y máquinas, asegurando que las decisiones automatizadas se alineen con los valores y expectativas humanas. Es por esto que, la XAI está siendo un campo de investigación muy activo, aunque reciente (Xu et al., 2019). Un ejemplo de esto se presenta en Zhang et al. (2022), donde vemos la importancia que la XAI puede llegar a tener en el ámbito médico-quirúrgico. Una de las herramientas que ofrece la XAI para lograr esto son las explicaciones visuales, que ofrecen una ventana única para comprender cómo los modelos de IA interpretan y procesan datos visuales, como imágenes médicas, en nuestro caso. Los métodos como Grad-CAM (Selvaraju et al., 2019), Saliency (Simonyan et al., 2014), Integrated Gradients (Sundararajan et al., 2017), SmoothGrad,VarGrad (Seo et al., 2018) y RISE (Petsiuk et al., 2018) nos muestran qué características de una imagen son más relevantes para las decisiones del modelo, lo que permite a los usuarios validar y entender mejor los resultados. Además de esto, la evaluación de las explicaciones visuales en los sistemas de IA es también fundamental para lograr que la XAI alcance los objetivos mencionados. Las métricas proporcionan una medida objetiva del rendimiento de estos métodos, lo que permite comparar diferentes enfoques y determinar cuál es más adecuado para una tarea específica. Además, las métricas ayudan a identificar posibles sesgos o limitaciones en las explicaciones, lo que permite realizar mejoras iterativas en los modelos. Algunas de estas métricas son Deletion eInsertion (Petsiuk et al., 2018), ROAR (Hooker et al., 2019) o ROAD (Rong et al., 2022). Reconocemos también la importancia de la medida SSIM (Zhou Wang et al., 2004) para medir la similitud entre imágenes, que nos ha sido de gran utilidad en las explicaciones por factuals (Charpiat et al., 2019; Guidotti et al., 2019). En el Capítulo 5 se verá cómo hemos incluido estas técnicas a nuestro trabajo.
16 Capítulo 2. Estado de la Cuestión Por otro lado, las explicaciones textuales también desempeñan un papel crucial en la aceptación de los modelos de IA, especialmente en contextos donde la interpretación y la comunicación son esenciales. Métodos como la generación de texto explicativo basado en modelos bayesianos o el uso de representaciones prototípicas yclustering permiten a los usuarios comprender el razonamiento detrás de las decisiones de la IA de una manera más intuitiva y accesible. Esto es especialmente relevante en aplicaciones donde la transparencia y la justificación de las decisiones son requisitos fundamentales para la adopción y el cumplimiento de la normativa vigente. En cuanto a generación de explicaciones textuales, debemos citar a Kim et al. (2015), Schank y Leake (1989) y Li et al. (2017) por su uso de representaciones prototípicas y clustering para realizar inferencias, así como por introducir el uso de CBR para la generación de explicaciones nuevas mediante adaptación de otras existentes en memoria. Consideramos que su trabajo recalca la importancia del aprovechamiento del conocimiento experto para mejorar la interpretabilidad de los sistemas de IA en el ámbito médico, motivo que será relevante en este trabajo. También a Kenny y Keane (2021) por la arquitectura “Gemelos ANN-CBR” subrogados, donde un clasificador de aprendizaje profundo, de caja negra, se asocia con un CBR para generar explicaciones. En cuanto a otras aplicaciones del CBR a este ámbito, el trabajo de Viveros-Melo et al. (2019), expone un proyecto en el que se utiliza un sistema CBR junto a un clasificador multiclase para generalizar diagnósticos médicos. La aplicación de estos conceptos se verá en el Capítulo 6, donde se define el ciclo CBR y se expone cómo hemos utilizado este sistema para lograr generar explicaciones textuales para una radiografía dada a partir de lo que denominaremos “casos prototípicos” de fracturas.
Cap´ ıtulo 3 Recopilación de datos El dataset empleado para entrenar y evaluar un modelo de aprendizaje automático juega un papel fundamental en la calidad final del modelo implementado. No solo basta con tener una cantidad importante de datos, sino que además resulta crucial que estos presenten una calidad impecable: han de ser lo suficientemente representativos para que el algoritmo pueda capturar la variabilidad del problema que se está abordando, han de contar con archivos de etiquetado correctos y lo suficientemente claros, deben seguir un patrón homogéneo de presentación (en el caso de imágenes, niveles de brillo, escala de color, luminosidad, saturación, orientación...) e infinidad de características que definirán la calidad del dataset y, por tanto, la de los modelos de aprendizaje automático que se presentan en el Capítulo 4. El objetivo principal del trabajo es construir un clasificador de fracturas de cadera a partir de radiografías. Por tanto, el primer paso es construir un dataset con la suficiente calidad como para poder afrontar tal objetivo desde una posición optimista. Debido a que actualmente están vigentes políticas de protección de datos y de privacidad que hacen que resulte realmente difícil (y más para aquellos que, como en nuestro caso, no trabajan en centros médicos ni radiológicos) recopilar radiografías de cadera de carácter personal, aunque sean anónimas, por lo que este fue el primer gran problema al que nos enfrentamos. En este capítulo se presenta detalladamente todo el proceso seguido para poder contruir el conjunto de datos que cimienta el resto del proyecto. 3.1. Datos en bruto En primer lugar, debido a que no era claro cómo conseguir radiografías de cadera de cierta calidad que además estuvieran etiquetadas, decidimos realizar un trabajo previo de investigación en busca de experimentos realizados con anterioridad y que hayan requerido de la obtención de este tipo de imágenes. Afortunadamente, caímos en la cuenta de que existen varios trabajos que tratan de realizar avances significativos en ciertas ramas de la medicina usando la IA. En concreto, los proyectos que vienen presentados en Tanzi et al. (2022), Krogue et al. (2020) y Twinprai et al. (2022) trataban de resolver un problema similar al nuestro y para ello, construyeron su propio conjunto de datos con el que entrenar sus respectivos modelos. Al 17
18 Capítulo 3. Recopilación de datos comienzo del proyecto tratamos de contactar con los autores de estos trabajos con la esperanza de que pudieran facilitarnos parte de los datos, pero o no respondieron o simplemente nos comunicaron que les era imposible facilitarnos los datos por motivos de privacidad y protección, al tratarse de información médica sobre particulares. Tras ver que por la vía anteriormente mencionada resultaría prácticamente imposible conseguir imágenes, decidimos buscar conjuntos de datos en diversos repositorios científicos. De este modo, encontramos nuestro primer conjunto de imágenes en el siguiente repositorio de la página web dedicada a proyectos de visión por computador Roboflow: ThesisYolov8 (2023). A lo largo de esta redacción usaremos el acrónimo ROB para referirnos a este conjunto de radiografías. Las imágenes de ROB, era abundantes y de buena calidad, puesto que en el conjunto que descargamos en bruto había 640 imágenes y venían etiquetadas con distintos tipos de fractura, lo cual fue de gran utilidad. Sin embargo, dado que el proyecto se encontraba en una etapa prematura, acordamos centrarnos en una primera clasificación más sencilla que solo distinguiría entre “No Fractura” y “Fractura”. Conocedores de la demora en el trabajo final que podría ocasionar el proceso de obtención de datos, consideramos que contábamos con buen material para comenzar a implementar un primer modelo para clasificar tan solo en las dos clases previamente mencionadas: “Fractura”/“No fractura”, y por tanto comenzamos las etapas posteriores del trabajo mientras en paralelo seguíamos tratando de conseguir más datos. Tras un largo periodo de investigación y búsqueda de datos nos pusimos en contacto con la Fundación Maurice E. Müller Foundation1y su sucursal española, la Fundación Müller España. Gracias al Dr. D. Enrique Queipo de Llano Jiménez, antiguo presidente de la Fundación AO2España y miembro honorario de la Fundación AO a nivel internacional, fuimos conocedores de una base de datos de fracturas conjunta de las fundaciones AO y Müller a nivel internacional. Por otro lado, pudimos contactar con la Fundación Müller España. Dicha fundación contaba con una extensa base de casos que fue utilizada para el desarrollo del Atlas de Osteosíntesis (Sales et al., 2009) y gracias a esto pudieron facilitarnos 132 radiografías clasificadas que fueron usadas para el desarrollo dicho atlas, así como diversos documentos e información valiosa sobre la clasificación de fracturas de cadera. Decidimos tratar estas fracturas para incorporarlas rápidamente al modelo que habíamos desarrollado hasta el momento. Debido a que las imágenes que recibimos seguían la clasificación especificada por la Fundación AO, a lo largo de esta redaccion las denominaremos conjunto de imágenes AO y, gracias a estos nuevos datos, pudimos comenzar a realizar pruebas sobre un modelo de clasificación en 3 clases más sofisticado. Llegados a este punto, establecimos que la clasificación a seguir debía ser exactamente esta, la clasificación propuesta por la Fundación AO junto a la Fundación Müller en Meinberg et al. (2018) y que se presenta en la Figura 3.1. 1La Fundación Maurice E. Müller es una fundación en honor al cirujano suizo Maurice Edmond Müller, quien hizo grandes avances en el desarrollo de técnicas de fijación interna y prótesis de cadera. Müller fue co-fundador de la actual Fundación AO. 2Fundación para el estudio de la Osteosíntesis, dedicada a mejorar la atención de pacientes con lesiones o patologías musculoesqueléticas y en cuya clasificación se basa este trabajo. https: //www.aofoundation.org/
3.1. Datos en bruto 19 Figura 3.1: Clasificación AO/OTA. Las fracutras de tipos A, B y C se dividen en subgupos. Las fracturas de tipo A se denominan de la “región trocantérea”, por ocurrir en la región del trocánter. Las de tipo B se denominan de “cuello femoral” y las de tipo C de “cabeza femoral”, puesto que ocurren en las zonas del cuello y la cabeza del fémur, respectivamente. Tomada de Tanzi et al. (2022). Por último, nos pusimos en contacto con el Hospital Universitario Virgen de la Victoria (Málaga). Los expertos de este hospital mostratron también un gran interés por nuestro proyecto y se encargaron de realizar los trámites necesarios para poder facilitarnos el último conjunto de datos en bruto del que disponemos y que, en lo que sigue, denominaremos conjunto de imágenes HVV. Estas nuevas imágenes, en total 246, nos fueron de gran ayuda para terminar de ajustar nuestro modelo y para disponer de nuevos datos para ponerlo a prueba. En esta sección solo se ha comentado el proceso que seguimos para obtener los datos en bruto del que será nuestro dataset. Sin embargo, dado que obtuvimos radiografías de tres fuentes diferentes, las imágenes con las que contábamos en este punto eran demasiado heterogéneas y no podían usarse sin un previo trabajo de preprocesado. En las Secciones 3.2, 3.3 y 3.4 se expone el preprocesado de imágenes personalizado que se realizó para cada conjunto, el preprocesado general que todas las imágenes han pasado y el proceso de etiquetado, respectivamente. Tras dichos procedimientos, se dio por finalizada la generación de nuestro propio conjunto de imágenes a partir de estos datos en bruto, que se presenta en la Sección 3.5. A modo resumen, en la Figura 3.2 se muestran las tres fuentes de datos así como cuántas imágenes obtuvimos de cada una y a qué clase pertenecen. También se ilustra el tratamiento que se realizó a cada conjunto de datos, por tanto resultará clarificador volver a esta figura cuando sea referenciada en lo que resta de capítulo.
20 Capítulo 3. Recopilación de datos Fundación Müller n = 132 Roboflow Proximal Femurs n = 640 Hospital Universitario Virgen de la Victoria n = 246 Bilateral n = 538 Unilateral n = 102 YOLOv5 Detector huesos cadera Recortes del fémur n = 1397 Inversión de colores Recortes manuales n = 62 PREPROCESS Voltear fémures derechos Homogeneizar escala grises Resize a 224x224 Clase 0 No fractura n = 891 Clase 1 Fractura de cuello n = 213 Clase 2 Fractura trocantérea n = 295 Figura 3.2: Esquema del proceso de recolección y procesado de imágenes del dataset 3.2. Preprocesado personalizado de cada conjunto En esta sección se expone el tratamiento personalizado que hubo que hacer a cada uno de los conjuntos de imágenes ROB, AO y HVV con el fin de tener un dataset homogéneo al que posteriormente poder aplicar el preprocesado común que se explica en secciones posteriores. En la Figura 3.3 se muestran los tres tipos principales de imágenes presentes en los datos que nos suministraron. Para las imágenes de ROB, observamos que 538 de las 640 imágenes de este conjunto eran de caderas completas o bilaterales, es decir, se presentan los dos fémures, derecho e izquierdo, en la misma radiografía. Decidimos recortar estas imágenes para quedarnos únicamente con la zona de la cadera, que, como se ha dicho, es la articulación que une el fémur con la pelvis, y para ello, entrenamos un modelo hip-bone detector YOLOv5 que, tal y como se presenta en la Sección 4.1 del Capítulo 4, es capaz de reconocer con mucha precisión los huesos presentes en una radiografía de pelvis. Este modelo, dada una radiografía, “empaqueta” cada uno de los huesos que aparecen en la misma y además genera un fichero de texto con las etiquetas de cada detección que después permitirán obtener el recorte de la zona que nos interesa de cada imagen. En dicha sección se expone detalladamente el funcionamiento de este modelo de detección así como un análisis de su rendimiento. De este modo, a partir de 538 imágenes fuimos capaces de obtener 1076 radiografías de fémur distintas, más útiles para entrenar nuestro modelo al centrarse
3.2. Preprocesado personalizado de cada conjunto 21 Figura 3.3: A la izquierda, radiografía con huesos en negro sobre fondo blanco. En el centro, radiografía que presenta implantes y a la derecha, radiografía bilateral con los recortes de fémures realizados por YOLOv5. únicamente en la zona del fémur. Además, con el fin de eliminar todo el ruido que pueda generar el resto de la radiografía, también se aplicó el modelo YOLOv5 a las imágenes unilaterales (aquellas en las que solo aparece un único fémur). Al recibir las imágenes de la Fundación Müller y del Hospital Universitario Virgen de la Victoria, pudimos comprobar que se trataban de radiografías unilaterales de fémur y por tanto ratificamos nuestra decisión anterior de recortar los fémures de las imágenes de ROB (pues de otro modo, habría resultado imposible usar estas nuevas imágenes por ser sutancialmente distintas al resto). A pesar de esto, decidimos aplicar nuestro modelo de YOLOv5 para ajustar la imagen a la zona del fémur lo máximo posible y así eliminar el resto de la radiografía, pues no nos aporta información. Como también se muestra en la Figura 3.3, tuvimos que implementar mecansimos de preprocesamiento adicionales para solventar algunas deficiencias identificadas en las imágenes: 1. Algunas de las imágenes de AO venían con la paleta de color invertida, esto es, fondo blanco y hueso negro, en contraste con las imágenes de ROB. Para resolver este problema, se implementó en Python un script que compara los colores de las cuatro esquinas de la imagen, de modo que si determina que el fondo es blanco, aplica inversión de colores a la imagen. 2. Algunas de las imágenes del conjunto AO venían junto a la radiografía tomada posteriormente en la que se muestra el resultado tras colocar un implante en el fémur. Debido a que había pocas imágenes de este estilo y el modelo de YOLOv5 no había sido entrenado para distinguirlas, decidimos recortar manualmente la zona de la radiografía que no presentaba implantes. Hecho esto, pudimos emplear YOLOv5 para quedarnos con el crop del fémur lo más ajustado posible. Una vez realizado este primer tratamiento a las imágenes, contábamos con un dataset de 1399 radiografías (en total, juntando las imágenes de las tres fuentes) al que sí se podía aplicar un preprocesado común tras el cual obtendríamos la versión
28 Capítulo 4. Modelos propio sistema de clasificación. El modelo y los datos se extraen de Roboflow3y cabe destacar que, en este caso, y a diferencia del proyecto del que provienen las imágenes de ROB, este modelo es de segmentación de distintas regiones de los huesos de la cadera, por lo que sus datos no están etiquetados por fracturas, sino por el nombre de cada hueso detectado. 4.1.1. Análisis de YOLOv5 En esta sección se desarrolla un análisis de las métricas obtenidas para el modelo YOLOv5 entrenado para detectar los huesos fémur, ilíaco (iliak), pubis, obturador (obturator), techo acetabular (sourcil) y lágrima acetabular (teardrop) en radiografías de cadera. En lo que sigue denominaremos al techo acetabular simplemente por “techo”, y usaremos el término “lágrima” para referirnos a la lágrima acetabular. Nos centraremos en el comportamiento del modelo en la clase “fémur”, pues es la que nos concierne para nuestro clasificador. A continuación, se explican ciertos conceptos cuya comprensión es necesaria para poder extraer información de las gráficas de rendimiento generadas por YOLOv5: 1. Intersección sobre la unión (IOU): esta métrica evalúa el porcentaje de superposición entre dos bounding boxes, (región que marca el modelo como instancia de la clase detectada). El modelo cuenta con radiografías ya etiquetadas en las que cada hueso a detectar aparece encerrado en un marco delimitador. A la hora de validar el modelo resulta interesante ver hasta qué punto los bounding boxes marcados por el modelo entrenado coinciden con los suministrados mediante las etiquetas del conjunto de entrenamiento. Definimos entonces esta métrica así: IOU =area intersección area unión =(4.1) 2. Umbral de confianza: cada detección realizada por el modelo tiene asociado un valor que indica cómo de seguro está este de que la predicción realizada es correcta. Este valor se compara con un hiperparámetro llamado umbral de confianza y que toma valores entre 0 y 1 de modo que solo serán aceptadas como detecciones correctas aquellas para las que el modelo tenga una confianza mayor o igual que la que marca el umbral. 3. Verdadero positivo (TP): representa una detección correcta y se produce cuando se ha detectado un objeto y IOU ≥Umbral de confianza. 4. Falso positivo (FP): representa una detección incorrecta, esto es, se ha detectado un objeto pero IOU <Umbral de confianza. 5. Falso negativo (FN): ocurre cuando en la imagen existe un bounding box etiquetado que no ha sido detectado por el modelo (o que sí lo ha sido, pero con IOU <Umbral de confianza). 3https://universe.roboflow.com/ks-fsm9o/pelvis-ap-x-ray
4.1. Modelos YOLO 29 6. Verdadero negativo (TN): no se tienen en cuenta en modelos de detección de objetos debido a que se trataría de todos los posibles cuadros delimitadores que no contienen ningun objeto a detectar, y hay infinitos. La Figura 4.1 permite ilustrar fácilmente los conceptos que acabamos de explicar. En ella vemos dos imágenes en las que se ha utilizado un modelo de detección de gatos cuyo umbral de confianza está marcado en 0.6. En (a) observamos una detección correcta, pues la caja predicha por el modelo coincide aproximadamente en un 70 % con la caja real con la que fue etiquetada esa imagen (es decir, IOU = 0,7>0,5). En (b) se presenta un falso positivo: el modelo detecta un gato, pero el área entre la caja generada para la predicción y la caja real con la que fue etiquetada la imágen solo coinciden en un 30 % (IOU = 0,3<0,5). (a) (b) Figura 4.1: Ejemplo de predicciones para gatos. Se definen a continuación las métricas que procedemos a estudiar para evaluar nuestro modelo: 1. Precisión: esta métrica indica qué porcentaje de todas las bounding boxes que nos ha devuelto el modelo contiene realmente un hueso a identificar y, por tanto, su valor ideal es 1, que representa el 100 %. Se define así: Precision =TP numDetecciones (4.2) 2. recall o exhaustividad: esta métrica indica qué porcentaje de todos los huesos que se quieren detectar en la radiografía han sido capturados con éxito por el modelo y, por tanto, su valor ideal es 1 que representa el 100 %. Se define así: recall =TP TP +FN (4.3) 3. Puntuación F1: Esta métrica combina la precisión y la exhaustividad para dar una medida global de rendimiento conforme a la siguiente fórmula: F1 = 2 ×precision ×recall precision +recall (4.4)
30 Capítulo 4. Modelos Figura 4.2: Gráfico precisión YOLOv5. Al igual que las métricas anteriores, la puntuación F1 toma valores entre 0 y 1. El mínimo representa que o bien la precisión o el recall son cero y por tanto el funcionamiento del modelo deja mucho que desear. El valor ideal es uno, pues en este caso ambas métricas alcanzan el 100 %. Analizando la definición de precisión y recall resulta evidente que, en general, a mayor recall menor precisión y viceversa, pues cuantas más detecciones se realicen más fácil es para el modelo confundirse. Esto nos hace pensar que maximizar las dos métricas anteriores simultánemante es realmente difícil, por lo que se define la puntuación F1, donde ambos valores se combinan en uno solo. Pasamos a evaluar los gráficos con el valor de las métricas presentadas que se han generado para nuestro modelo de detección de huesos de la cadera en YOLOv5. Para entrenar y evaluar este modelo utilizamos un conjunto de 951 imágenes y realizamos el siguiente split estratificado: el 70 % de las imágenes (668) fueron al conjunto train, el 20 % (191) al conjunto de test y el 10% restante (94) al conjunto de validación. Todos los gráficos que se muestran, excepto si se indica lo contrario, se han obtenido probando el modelo en el conjunto de test y por tanto, en caso de que se concluya un buen funcionamiento del modelo, queda descartado el overfitting. 4.1.2. Análisis de la precisión En la Figura 4.2 se muestra la precisión obtenida para cada una de las clases en función del umbral de confianza fijado en el modelo. En general, se observa un buen comportamiento en umbrales de confianza superiores al 0,6en todas las clases a excepción del techo y la lágrima, que oscilan entre valores del umbral de 0,6y0,8, aunque se estabiliza para valores mayores. Esto puede deberse a que ambos huesos están realmente cerca y, por tanto, si no se es lo suficientemente preciso a la hora de delimitar, se pueden producir importantes confusiones. Para el fémur, se observa un comportamiento excepcional en todos los posibles valores del umbral de confianza, posiblemente porque es un hueso lo suficientemente separado del resto. Concluimos
4.1. Modelos YOLO 31 Figura 4.3: Gráfico recall YOLOv5. que en general, si marcamos el umbral en 0,9, la precisión del modelo es total, es decir, todas las detecciones que realiza son correctas, pero quizás, con el objeto de no obtener un recall demasiado bajo, sea buena idea fijar el umbral en 0,7, donde ya se aprecia un buen comportamiento y además se favorece que el modelo pueda realizar alguna detección más. Retomaremos esta discusión al analizar el recall y así se podrá determinar el valor óptimo del umbral, pues resulta evidente que a mayor umbral de confianza mayor precisión, pues la mayoría de las prediciones serán correctas, pero también menor recall, pues se descartarán muchas predicciones por no ser lo suficientemente finas y por lo que se pueden quedar huesos sin detectar. 4.1.3. Análisis del recall En la Figura 4.3 se muestra el recall obtenido en función del valor del umbral de confianza fijado en el modelo. Observamos en general valores del recall muy cercanos a0,9en umbrales en torno a 0,8en todas las clases salvo las clases techo y lágrima, que de nuevo dan problemas por ser huesos cercanos. Para el fémur en concreto se obtiene un recall de prácticamente el 100 % incluso para umbrales de confianza entre 0,8y0,85. Este hecho, unido al análisis de la precisión realizado en la Sección 4.1.2, nos dice que nuestro modelo funciona realmente bien con el fémur, de nuevo quizás porque el fémur esté lo suficientemente separado del resto de huesos, y es capaz de detectarlo en casi todos los casos de forma correcta. Concluimos entonces que es una buena decisión fijar el umbral de confianza en 0,8. 4.1.4. Curva Precisión-recall Como ya hemos comentado al introducir la puntuación F1, la precisión y el recall son valores íntimamente relacionados. Además, suelen ser inversamente “proporcionales”: si el modelo obtiene una precisión alta, este detectará menos objetos y por tanto el recall bajará y, si por el contrario, el modelo detecta muchos objetos, la
32 Capítulo 4. Modelos Figura 4.4: Curva precisión-recall YOLOv5 probabilidad de fallo en alguna detección será mayor, luego la precisión menor. Por este motivo, es interesante analizar ambas métricas de forma conjunta para así poder establecer un umbral de confianza óptimo que tenga en cuenta a ambas. En la Figura 4.4 aparecen representados para distintos umbrales de confianza los valores de precisión y recall en los ejes yyx, respectivamente. Se entiende que el valor del umbral varía linealmente en función de la longitud de cada curva. Vemos para cada clase el valor de la métrica AUC-PR, que se mide calculando el área bajo la curva precisión-recall (PR) y se utiliza para evaluar el equilibrio entre la precisión y el recall. La curva ideal para este gráfico es f(x)=1si x∈[0,1) y f(x)=0si x= 1 (intuitivamente acercarse a la esquina superior derecha), pues esto se corresponde con que para umbrales de confianza muy altos, se obtienen una precisión y un recall muy altos. Vemos que si se tienen en cuenta todas las clases, el umbral de confianza que recomienda YOLOv5 es 0,5, pues a partir de aquí el recall de varias clases comienza a caer en picado. Sin embargo, como ya habíamos observado, la curva de fémur es muy similar a la curva ideal y por tanto podemos marcar umbrales de confianza muy altos que nos aseguren detecciones correctas sin preocuparnos por el recall del sistema. 4.1.5. Análisis de la puntuación F1 Se aprecia que para todas las clases en general, el óptimo de F1 es 0,92 y se alcanza para el umbral de confianza 0,470. A partir de este umbral, la puntuación F1 cae bruscamente. Para la clase del fémur en concreto, que es la que nos concierne, observamos resultados mucho mejores: puntuación F1 muy cercana a 1 en umbrales de confianza sobre el 0,8. Esto nos dice que el modelo es capaz de detectar el fémur realmente bien y además con mucha seguridad. Estos resultados corroboran una vez más todo lo concluido en base a los análisis anteriores.
4.1. Modelos YOLO 33 Figura 4.5: Curva de confianza YOLOv5 4.1.6. Matriz de confusión Al analizar la matriz de confusión que se muestra en la Figura 4.6, observamos que lo que se había comentado sobre las clases para las que peores valores de las métricas se obtiene es cierto. Como se puede ver, el fémur, el ilíaco y el obturador se distinguen a la perfección tanto del resto de clases como del fondo de la radiografía, algo coherente con los valores de las métricas obtenidos para estas clases. El pubis y el techo también se distinguen muy bien aunque en ocasiones se confunden con el fondo y, por último, para la lágrima, igual que anteriormente, se obtienen los peores resultados: esta clase se confunde en bastantes ocasiones con el fondo de la radiografía y viceversa. Esto justifica una vez más todas las conclusiones obtenidas. 4.1.7. Métricas de pérdida en detección Pasamos a continuación a evaluar métricas que miden la pérdida durante el entrenamiento del modelo. La pérdida es una función que penaliza al modelo por hacer predicciones incorrectas o imprecisas durante el entrenamiento. El objetivo del entrenamiento es minimizar esta pérdida de modo que, tras un número fijo de iteracciones, el modelo sea capaz de realizar clasificaciones lo más precisas posibles. El entrenamiento se ha realizado durante tan solo 20 etapas (lo que llevó alrededor de una hora de entrenamiento) y ahora analizaremos como habría afectado a los resultados obtenidos la realización de un entreno con un número de etapas mayor con el fin de comprobar si al aumentar las etapas del entrenamiento se experimentaría mejora o se incidiría en overfiting. Se presentan a continuación las métricas a tener en cuenta: 1. Box loss: esta métrica mide la imprecisión del modelo a la hora de situar los vértices de los bounding boxes con el fin de buscar que durante el entrenamento se generen marcos delimitadores lo más precisos posibles. Esta métrica cuantifica cómo de bien el modelo detecta objetos.
34 Capítulo 4. Modelos Figura 4.6: Matriz de Confusión YOLOv5 2. Class loss: esta métrica mide la discrepancia entre las predicciones del modelo para cada clase detectada y las etiquetas reales, es decir, cuantifica cómo de bien el modelo clasifica los objetos. 3. Validation loss: esta métrica representa la pérdida total del modelo en el conjunto de validación y es una combinación entre box loss y class loss. En los gráficos que aparecen en la Figura 4.7 el eje horizontal representa la iteración del entrenamiento (cada iteración representa una pasada completa por el conjunto de entrenamiento o de validación en cada caso) y el eje vertical representa el valor de la pérdida correspondiente. Observamos que la tendencia general es, en todos los casos, la disminución del valor de la función de pérdida si se decide aumentar el número de iteraciones. Además, estas tendencias se dan tanto para el conjunto de entrenamiento como para el de validación, por tanto queda descartado el overfiting si se decide aumentar sensiblemente el número de iteraciones. Observamos también que la tendencia de la precisión y el recall son de ascenso en ambos conjuntos. Por tanto, podemos concluir que si aumentamos el número de iteraciones del entrenamiento en un 20-30% con respecto al número de iteraciones actual, se obtendrán resultados aun mejores, pero está mejora se notará para las clases lágrima y techo, y no para el fémur (para el que ya se ha obtenido un comportamiento
4.1. Modelos YOLO 35 Figura 4.7: Métricas durante el entrenamiento en YOLOv5 excelente), por lo que no será necesario volver a entrenar con más iteraciones. 4.1.8. Modelo YOLOv8 En paralelo al entrenamieto del modelo YOLOv5 y con el ánimo de tener otro sistema con el que poder comparar resultados, se entrenó también un modelo YOLOv8. YOLOv8 es la última versión de este modelo de detección de objetos y ha sido construido sobre el framework de YOLOv5, aunque cambiando ciertos aspectos de su arquitectura que hacen que, en general, sea más rápido y preciso, aunque también más complejo de utilizar al tener más componentes y ajustes específicos. Además, YOLOv8 en su versión estándar no permite utilizar como entrada una carpeta con imágenes directamente al modelo, sino que proporciona una API4en la que debes subir cada imagen una a una. Al igual que el modelo de la versión 5, este también generó resultados satisfactorios. Esto se puede apreciar en el gráfico de la Figura 4.8, cuya interpretación es análoga al gráfico de la Figura 4.7. Para entrenar y evaluar este modelo, utilizamos el mismo dataset con el mismo split estratificado: 951 imágenes de las cuales el 70% (668) fueron al conjunto train, el 20 % (191) al conjunto de test y el 10 % restante (94) al conjunto de validación. En este caso, obtuvimos una precisión del 87,8 % y un recall del 92,2 %, ambos medidos sobre el conjunto de test y teniendo en cuenta todas las clases. Finalmente, tras analizar ambos modelos y concluir que ambos generan muy buenos resultados, decidimos quedarnos con el modelo de YOLOv5 debido a que esta versión es más extrapolable y sencilla de usar, pues mientras que con la versión 8 solo tenemos acceso libre al fichero de pesos y a una API para realizar pruebas, en 4Mediante el siguiente enlace, se puede acceder al modelo entrenado en YOLOv8 y se presenta una API que permite subir una radiografía de cadera para generar la detección: https://app. roboflow.com/tfg-jf9sh/hip-bones-detection/visualize/1
36 Capítulo 4. Modelos Figura 4.8: Métricas durante el entrenamiento en YOLOv8 Figura 4.9: A la izquierda ejecución de YOLOv8, a la derecha ejecución de YOLOv5. la versión 5 se nos permite tener todo el código y emplearlo para obtener los recortes de los fémures de las imágenes de nuestro dataset. 4.2. Modelos de clasificación En esta sección se presentan distintas versiones del clasificador implementado para reconocer fracturas en radiografías de cadera. Como se ha comentado en el Capítulo 3, al principio se trabajó sobre un clasificador de tan solo dos clases y posteriormente, cuando disponíamos de los datos necesarios para hacerlo, se pasó a implementar un clasificador de 3 clases capaz de distinguir entre dos tipos de fractura.
4.2. Modelos de clasificación 37 4.2.1. Clasificador de dos clases En esta sección se presentan los diferentes clasificadores que se implementaron hasta que se consiguieron resultados satisfactorios para distinguir la clase “fractura” de la clase “no fractura”. Antes de abordar la implementación del clasificador, hay que destacar el coste que pueden tener los distintos fallos de clasificación del modelo tanto en términos económicos como sanitarios. Un falso positivo, donde se identifica incorrectamente una fractura, puede llevar a tratamientos innecesarios, pruebas de imagen adicionales y aumento de la ansiedad del paciente. Esto no solo pone al paciente en riesgo de complicaciones por procedimientos innecesarios, sino que también incrementa los costes de atención médica. Por otro lado, un falso negativo, donde no se detecta una fractura existente, es incluso más perjudicial. El paciente podría ser dado de alta sin el tratamiento necesario, lo que puede llevar a complicaciones adicionales como una sanación incorrecta, dolor crónico y un mayor riesgo de desarrollar condiciones secundarias. Este error puede resultar en tiempos de recuperación más largos, intervenciones médicas más complejas en el futuro y un impacto significativo en la calidad de vida del paciente. Se concluye entonces que ambos errores son graves, y por tanto, la precisión y el recall en la detección de fracturas de cadera son cruciales para asegurar una atención médica adecuada y oportuna, motivo por el cual utilizaremos la media armónica F1 para evaluar los modelos implementados. 4.2.1.1. MLPClassifier Para la primera aproximación del clasificador binario se utilizaron exclusivamente los datos del conjunto ROB y el modelo MLPClassifier (Multi-Layer Perceptron Classifer) de la biblioteca Scikit-learn, que consiste en una red neuronal de varias capas que emplea el algoritmo de backpropagation para minimizar una función de coste. Se procedió a generar las aumentaciones necesarias en el conjunto ROB para evitar el desequilibrio de clases y posteriormente se dividió el conjunto de datos en una proporción de 80-20 entre train ytest. Con esta primera aproximación, los resultados fueron desalentadores, con una precisión en el rango del 60-70 %, lo cual nos llevo a investigar causas que podrían provocar estos niveles bajos de precisión y posibles soluciones. Tras una etapa de investigación, caímos en la cuenta de que el split aleatorio generado no era óptimo, es decir, el ratio fractura/no fractura no se mantenía entre los conjuntos train ytest (no era un split estratificado). Decidimos entonces ajustar el split asegurándonos de que el ratio fractura/no fractura se mantenía entre ambos conjuntos y procedimos a reentrenar, obteniendo en este caso resultados considerablemente más satisfactorios: 89 % de precisión para la clase 0 (no fractura) y 87 % de precisión para la clase 1 (fractura). En las Figuras 4.10 y 4.11 se muestran los resultados obtenidos para este primer modelo. Una vez habíamos obtenido resultados un tanto satisfactorios, decidimos probar con distintos porcentajes de split, así como con otros clasificadores de Scikit-learn como LinearSVM oRBF-SVM (Support Vector Machines con kernel lineal en el primer caso y gaussiano en el segundo), que tratan de dar el mayor margen posible al hiperplano que separa ambas clases en busca de alguna mejora sustancial. Ninguna
44 Capítulo 4. Modelos ROB AO HVV 0 Precision 1.00 0.29 recall 0.99 0.38 F1-score 1.00 0.33 Support 833 0 56 1 Precision 0.95 0.00 0.75 recall 1.00 0.00 0.08 F1-score 0.98 0.00 0.14 Support 103 33 77 2 Precision 0.99 0.95 0.56 recall 1.00 0.60 0.82 F1-score 0.99 0.73 0.67 Support 93 89 113 Tabla 4.1: Resultados del modelo entrenado con subconjunto ROB conjuntos que conforman nuestro dataset. Para ello, en las Tablas 4.1, 4.2 y 4.3, se muestran la precisión, la exhaustividad y la puntuación F1 que obtuvo este modelo entrenado sobre cierta combinación de los conjuntos ROB, AO y HVV (que se especifica en cada figura) y evaluado sobre otra combinación de los mismos. En este caso no se utilizan aumentaciones en estos subconjuntos, pues el objetivo es analizar resultados sobre los datos reales preprocesados (cuyo esquema organizativo se muestra en 3.2). En cada tabla se muestran en color verde los resultados sobre aquellos conjuntos que fueron utilizados para entrenar el modelo y en color rojo los de los conjuntos con los que no se entrenó este. Dado que recibimos datos de tres fuentes distintas, las radiografías de cada subconjunto son, en principio, muy heterogéneas y es por tanto lógico que el modelo produzca resultados menos satisfactorios al ser evaluado sobre imágenes procedentes de distribuciones distintas a las que se han usado para el entrenamiento. En estas tablas, cada fila ise refiere a la puntuación obtenida por el modelo correspondiente en la clase i. Para cada clase, también se muestra el support de cada subconjunto, es decir, el número de instancias pertenecientes a esa clase dentro de ese subconjunto. Cabe destacar que el grueso de las radiografías sin fractura viene del conjunto ROB, que además también aporta una cantidad significativa de instancias al resto de las clases, pues es el más numeroso. Con respecto a AO y HVV, la mayoría de las imágenes presentan fractura. En AO observamos que no existen instancias de la clase 0, luego no tiene sentido presentar métricas para esta clase en este subconjunto. En la Tabla 4.1 se muestran los resultados producidos por el modelo entrenado con las imágenes de ROB y evaluado por separado sobre todas las imágenes de AO, todas las imágenes de HVV y todas las imágenes de ROB. De este primer análisis obtenemos las siguientes conclusiones: en primer lugar y como resulta esperable, se
4.2. Modelos de clasificación 45 ROB AO HVV 0 Precision 1.00 0.29 recall 0.99 0.04 F1-score 1.00 0.06 Support 833 0 56 1 Precision 0.95 1.00 0.53 recall 1.00 1.00 0.31 F1-score 0.98 1.00 0.39 Support 103 33 77 2 Precision 0.98 1.00 0.54 recall 0.99 1.00 0.93 F1-score 0.98 1.00 0.68 Support 93 89 113 Tabla 4.2: Resultados del modelo entrenado con subconjuntos ROB y AO observan resultados que rozan la clasificación sin error en ROB para las 3 clases, pues estas imágenes son exactamente las mismas que se han usado para el entrenamiento. Para la clase 1, observamos tanto en AO como en HVV resultados desalentadores: en AO nunca se predice clase 1 y en HVV se predice pocas veces (recall de 0,08), aunque cuando se realiza esta predicción se suele acertar (precisión de 0,75). Con respecto a la clase 2 en AO y HVV, los resultados no son del todo malos si tenemos en cuenta que se trata de imágenes que el modelo no ha visto anteriormente, pues tenemos una puntuación F1 de aproximadamente 0,7en ambos conjuntos. Visto esto, decidimos entrenar ahora el modelo también con el conjunto AO y ver si los resultados mejoran. De este modo, en la Tabla 4.2 se muestran los resultados obtenidos por el modelo entrenado con los conjuntos ROB y AO y evaluado sobre la totalidad de estos mismos conjuntos, además de sobre HVV. Los resultados, de nuevo, son coherentes con lo esperado: ahora tanto en ROB como en AO se roza la perfección en las tres clases. Con respecto a HVV, vemos que el recall empeora en la clase 0 con respecto a la Tabla 4.1, lo cual es lógico, pues las imágenes que se han añadido al entrenamiento son todas de las clases 1 y 2. Es este mismo hecho el que explica que los resultados del modelo sobre HVV en las clases 1 y 2 sean mejores que los resultados del modelo entrenado únicamente con ROB. Por último, en la Tabla 4.3 se muestra el resultado de entrenar el modelo con todas las imágenes y posteriormente evaluarlo sobre estas mismas imágenes. Como se puede apreciar en esta tabla, el resultado difícilmente puede ser mejor: en todas las clases de todos los subconjuntos se roza el máximo de 1 para la puntuación F1. Concluido este análisis observamos que, aunque nuestro modelo se comporta realmente bien sobre imágenes de la misma distribución que aquellas con las que ha
46 Capítulo 4. Modelos ROB AO HVV 0 Precision 1.00 1.00 recall 0.99 0.91 F1-score 0.99 0.95 Support 833 0 56 1 Precision 0.94 1.00 0.95 recall 0.99 1.00 1.00 F1-score 0.97 1.00 0.97 Support 103 33 77 2 Precision 0.94 1.00 0.99 recall 0.97 1.00 1.00 F1-score 0.95 1.00 1.00 Support 93 89 113 Tabla 4.3: Resultados del modelo entrenado con subconjuntos ROB, AO y HVV sido entrenado, los resultados no son tan satisfactorios sobre imágenes procedentes de otras distribuciones que no se han para el entrenamiento. Esto nos conduce de manera inevitable a la siguiente pregunta: ¿se da el fenómeno de overfitting durante el proceso de entrenamiento de nuestro modelo? 4.2.3. Análisis del overfitting Para terminar, consideramos importante poder afirmar que los buenos resultados proporcionados por el modelo ResNet18 no se deben a la existencia de overfitting, pues de este modo podremos garantizar un comportamiento similar al expuesto en la sección 4.2.2 en el caso de probar nuestro modelo con nuevos datos. Se muestran a continuación ciertas ideas que nos conducen a pensar que no se da overfitting durante el entrenamiento de nuestro modelo: 1. Tal y como argumentan autores de experimentos similares (Krogue et al., 2020; Twinprai et al., 2022) el hecho de utilizar redes neuronales que han sido preentrenadas con ImageNet mitiga el efecto del overfitting, pues realmente la red neuronal que se emplea ha “visto” millones de imágenes distintas a aquellas con las que se realiza el entrenamiento, en este caso distintas a radiografías de cadera. En Krizhevsky et al. (2012) se exponen los resultados de distintos experimentos que analizan la existencia de overfitting sobre redes preentrenadas con Imagenet que ratifican lo afirmado. 2. Al ver la Figura 4.17, que es la matriz de confusión del modelo final sobre el conjunto de test, observamos que si empleamos imágenes de todos los conjuntos en train los resultados en test son realmente satisfactorios, aun siendo
4.2. Modelos de clasificación 47 cierto que las imágenes de test son nuevas para el modelo. Esto nos hace extraer la siguiente conclusión: el modelo es altamente sensible a imágenes que proceden de fuentes distintas, incluso aunque estas hayan pasado por el mismo preprocesado. Esto resulta lógico, pues tal y como los mismos expertos nos han comentado, cada centro realiza las radiografías de forma diferente y esto trae consigo diferencias sustanciales entre imágenes de distintas fuentes. Evidentemente, estas diferencias pueden afectar, como es el caso, al aprendizaje del modelo. Dado que con tan solo introducir parte de cada uno de los conjuntos de ROB, AO y HVV en el conjunto de entrenamiento el modelo es capaz de generalizar realmente bien al conjunto de prueba, concluimos que podemos descartar la posibilidad de overfitting. 3. Otra razón que nos lleva a descartar este fenómeno tiene que ver con el análisis de los valores de precisión y función de coste sobre el conjunto de test en cada uno de los fold de la validación cruzada durante un entrenamiento de 10 etapas. Estos gráficos se presentan en las Figuras 4.18 y 4.19 respectivamente. En ambos casos observamos que los valores de la precisión y de la función de coste en cada uno de los fold experimentan ciertas variaciones a lo largo del entrenamiento. Sin embargo, observamos también la siguiente tendencia: todos los fold alcanzan el mayor valor de su precisión en la última etapa del entrenamiento y además, alcanzan también el menor valor de su función de pérdida en esta misma etapa. Dado que estos gráficos se refieren al conjunto de test, entendemos que hasta la décima etapa el entrenamiento resulta provechoso y ayuda al modelo a generalizar, lo que implica que no hay overfitting. Observamos además que los valores tanto de precisión como de error de la etapa 10 no distan demasiado de los de la etapa 8 para la mayoría de los folds. Esto nos indica que probablemente no resulte provechoso alargar el entrenamiento, o quizá incluso se traduzca en peores resultados sobre el conjunto de prueba, pues puede darse el fenómeno de overfitting, y por tanto estos gráficos nos ayudan a decidir que 10 es un buen número de etapas a realizar en la fase de entrenamiento. Es también importante mencionar que, dado que no contamos con demasiadas imágenes, se realizó el proceso de aumentación (explicado en la Sección 3.5 y esquematizado en la Figura 3.5) antes de realizar el split. Esto puede hacer que parte de las imágenes del test se correspondan con imágenes de train a las que se les han aplicado ligeras modificaciones, lo que en cierto modo puede influir en que se obtengan tan buenos resultados para el conjunto de test. Aunque quizá resulte más adecuado realizar aumentaciones solo en el conjunto de entrenamiento, tomamos la decisión de incluir aumentaciones en test debido a que de otro modo no tendríamos suficientes datos para elaborar un conjunto de prueba robusto. El Hospital Universitario Virgen de la Victoria nos pudo proporcionar un nuevo conjunto de 50 imágenes sobre las que probar nuestro modelo para contrastar esto. En la Tabla 4.4 se muestra el resultado de dicha evaluación. Como se puede observar, los resultados en la clase 0 son realmente buenos y los resultados en las clases 1 y 2 están bastante bien, aunque todavía hay margen de mejora. Concluimos con esto que nuestro modelo final es capaz de generalizar bastante bien y que podemos
48 Capítulo 4. Modelos 2 4 6 8 10 Epoch 0.4 0.6 0.8 Precisión Precisión en Test Fold 1 Fold 2 Fold 3 Fold 4 Fold 5 Figura 4.18: Precisión del modelo en el conjunto de test en cada uno de los fold de la validación cruzada durante un entrenamiento de 10 etapas. 2 4 6 8 10 Epoch 0.01 0.02 0.03 0.04 Error Error en Test Fold 1 Fold 2 Fold 3 Fold 4 Fold 5 Figura 4.19: Valor de la función de coste en el conjunto de test en cada uno de los fold de la validación cruzada durante un entrenamiento de 10 etapas. pasar a abordar otros objetivos del proyecto. Posteriormente, en el Capítulo 7, se realizará también una comparación con usuarios de este modelo sobre estas 50 nuevas imágenes. De este modo, veremos que la precisión del mismo en este conjunto de imágenes es similar a la de los expertos y, en algunos casos, incluso superior a la de los estudiantes de medicina, lo que nos permite concluir que el modelo implementado genera resultados realmente satisfactorios a la hora de clasificar fracturas de cadera en radiogrfías y puede llegar a tener cierta utilidad práctica. Como se verá en el Capítulo 5, el siguiente paso fue implementar en el modelo la generación de explicaciones visuales. Este tipo de explicaciones resultarán de gran utilidad para entender como funciona el modelo y en base a qué realiza ciertas predicciones. En la Sección 5.1 queda constancia de que este es capaz de detectar con bastante precisión la fractura presente en muchas radiografías, lo que es un indicio más de la no existencia de overfitting.
4.2. Modelos de clasificación 49 Precision Recall F1-score Support Clase 0 0.69 1 0.82 25 Clase 1 0.80 0.57 0.67 14 Clase 2 1.00 0.46 0.63 13 Accuracy 0.75 52 Macro avg 0.83 0.68 0.71 52 Weighted avg 0.80 0.75 0.73 52 Tabla 4.4: Modelo final evaluado sobre un conjunto de 50 imágenes nuevas.
Cap´ ıtulo 5 Explicaciones visuales En el capítulo anterior hemos visto la implementación de nuestros modelos, que consiguen buenos resultados de clasificación. Sin embargo, por muy buenos que sean los resultados que obtenga un modelo de clasificación, es necesario que sus usuariso finales puedan entender por qué el modelo toma determinadas decisiones antes de aplicarlo en el mundo real, más aun en ámbitos sensibles como la medicina. Por este motivo, para hacer que nuestro modelo sea lo más robusto posible, tal y como se presenta en este capítulo, hemos decidido añadir explicaciones visuales que indican qué zonas han sido claves para que el modelo tome su decisión. En las Secciones 5.1 y 5.2 se muestran dichos métodos y cómo se han evaluado las respectivas explicaciones. En concreto, en la Sección 5.1 se expone ampliamente la aplicación del método GradCAM al problema, y sus Subsecciones 5.1.1 y 5.1.2 se centran en la evaluación del método mediante el uso de conocimiento experto y de métricas, respectivamente. La métrica principal en la que nos centraremos será la métrica ROAD (RemOve And Debias). En la Sección 5.2 se demuestra el uso de otras muchas técnicas de explicación visual pertenecientes a la librería Xplique. Por último, se han utilizado otras explicaciones basadas en casos similares o factuals para los casos en los que no se predice fractura. En la sección 5.3 se exponen estas explicaciones y el uso de la medida Structural Similarity Index Metric (SSIM) para la similitud entre imágenes. 5.1. Explicaciones por Grad-CAM La técnica de Gradient-weighted Class Activation Mapping o Grad-CAM (Selvaraju et al., 2019) es una herramienta de explicación de algoritmos de inteligencia artificial que permite entender qué características atómicas de cada imagen resultan de más importancia para el modelo a la hora de realizar una predicción a través de una visualización de mapas de calor. En nuestro proyecto, el paquete instalado para Grad-CAM1incluye los últimos métodos de Class Activation Mapping (CAM). A lo largo de esta sección, se explica el fundamento de este método explicador y después se presentan y analizan los resultados obtenidos al aplicar Grad-CAM en nuestro conjunto de radiografías. 1https://github.com/jacobgil/pytorch-grad-cam 51
52 Capítulo 5. Explicaciones visuales Para generar los mapas de calor que presentaremos en esta sección, Grad-CAM se basa en la información proporcionada por los gradientes de la función de pérdida o coste en nuestra red neuronal convolucional. Tal y como se prueba en Bengio et al. (2014) y Mahendran y Vedaldi (2016), en este tipo de redes neuronales, las capas convolucionales aplican filtros a la imagen de entrada para detectar características simples como bordes y texturas en las primeras capas o patrones más complejos y estructuras de mas alto nivel en las últimas, mientras que en las capas cuyas neuronas se encuentran totalmente conectadas, este tipo de información se pierde, pues la función de estas capas lineales es realizar la clasificación final utilizando todas las características de la imagen. Dicho esto, resulta evidente que las capas convolucionales retienen de manera natural cierta información espacial que se pierde al pasar por las capas lineales. Además, es de esperar que la última capa convolucional guarde el mejor compromiso entre estructuras semánticas de alto nivel, es decir, “objetos” en la imagen e información espacial. Por tanto, podemos decir que las neuronas de la última capa convolucional buscan objetos específicos o estructuras semánticas concretas de una clase en la imagen. Durante el entrenamiento de la red se utiliza el algoritmo backpropagation y por tanto, es necesario calcular los gradientes de la función de coste con respecto a la activación de cada neurona en cada capa, con el fin de actualizar los parámetros del modelo. Estos gradientes se pueden entender como un indicador de cuánto cambia el coste si se modifica la activación de cada neurona: las neuronas que tienen gradientes más altos se consideran más influyentes en la elección de la clase predicha mientras que entendemos que las neuronas con gradientes bajos apenas aportan a la predicción final. Dado que, como hemos visto, las neuronas de la última capa convolucional son las que mejor “han aprendido” a diferenciar estructuras de más alto nivel, Grad-CAM aprovecha sus gradientes para generar mapas de importancia de características que permiten entender cómo de influyente es cada neurona de esta capa en una decisión generada por la red. Una vez obtenidos los gradientes de la última capa convolucional de la red, basta realizar dos operaciones. En primer lugar, una operación de pooling, pues hemos de recordar que estos gradientes se obtienen mediante el algoritmo de backpropagation, luego es necesario reducir la dimensionalidad (pues es la de la siguiente capa lineal y necesitamos que sea la de la capa convolucional). Por último, basta calcular la suma ponderada de los gradientes con sus respectivos pesos y aplicar la función de activación ReLu para quedarnos únicamente con las estructuras cuya influencia es positiva para la clase de interés y, de este modo, descartamos los píxeles con influencia negativa. La intuición del funcionamiento de Grad-CAM se muestra en la Figura 5.1. En esta imagen tenemos una red neuronal entrenada para detectar animales. Vemos cómo se suministra una imagen como entrada de la red neuronal convolucional y se genera el mapa de calor de Grad-CAM capaz de localizar al perro, que es de la raza Australian Terrier. Se aprecia cómo se toman los gradientes de la última capa convolucional de la red y se hace una suma ponderada de los pesos influyentes para la clase “Australian Terrier”. Finalmente, tras aplicar la función ReLu, nos quedamos con las estructuras semánticas relacionadas con los pesos w2ywn, que aportan positivamente a la clase objetivo puesto que representan al animal, y descartamos las estructuras relacionadas con el peso w1, que aporta negativamente, pues recoge la cara del humano.
5.1. Explicaciones por Grad-CAM 53 Figura 5.1: Intuición sobre el funcionamiento de Grad-CAM. Fuente: Lin et al. (2014). Tras haber entendido esta técnica de explicación, el siguiente paso fue aprovecharla para generar mapas de calor sobre nuestras imágenes. Es necesario tener en cuenta que con esta ténica, somos capaces de entender en qué partes de la imagen se fija el modelo para decidirse por una clase o por otra, por tanto, el resultado ideal sería que la zona más influyente de la radiografía se correspondiera con la región en la que se encuentra la fractura. Para las imágenes de la clase 0, que son las que no presentan fractura, sería razonable que la explicación visual fuera que en la región en la que la mayoría de imágenes suelen presentar la fractura no se ha detectado nada. Sin embargo, dado que contamos con un conjunto de imágenes sumamente diverso y en el mundo real pueden darse fracturas en zonas del fémur muy poco comunes, entendemos que no tiene sentido utilizar Grad-CAM para probar la ausencia de una fractura en una radiografía, sino únicamente para probar su presencia. Tal y como veremos en secciones posteriores, suministramos otro tipo de explicaciones visuales basadas en casos similares (factual explanations) para las radiografías que no presentan fractura. Con el objetivo de realizar una primera prueba de este explicador, decidimos entrenar el modelo basado en ResNet18 utilizando todo el conjunto de imágenes pero con los labels transformados para representar solo dos clases (fractura vs no fractura). En primera instancia, esto nos permitirá comprobar más fácilmente si el funcionamiento del modelo es el adecuado a la hora de distinguir entre estas dos clases, algo fundamental para después poder distinguir entre tipos de fracturas, donde la diferencia puede resultar mucho más sutil. En la Figura 5.2 se muestra el resultado de aplicar Grad-CAM a ciertas imágenes utilizando el modelo de dos clases. Como se puede ver, la zona más influyente coincide en todos los casos con regiones de la imagen en las que está presente el fémur, lo cual ya es un indicador del buen funcionamiento del modelo. Podría darse el caso de que el modelo obtuviera una gran precisión e incluso un gran recall pero, al generar este tipo de explicaciones, marcara como zona más influyente algún margen de la imagen o otro tipo de “señales” que nada tienen que ver con el fémur. Esto indicaría que probablemente, las imágenes utilizadas para entrenar no han sido adecuadamente preprocesadas o seleccionadas, pues contienen cierto patrón extrínseco
60 Capítulo 5. Explicaciones visuales vecinos de un píxel habrá sido también modificado, terminamos obteniendo un sustema de ecuaciones lineal que se puede resolver fácilmente para encontrar el valor de cada píxel a perturbar. Figura 5.6: Modelo entrenado para detectar osos. A la izquierda, Grad-CAM aplicado a una imagen. A continuación, resultado de perturbar con Deletion el 10 % de los píxeles más inflyentes, resultado de eliminar el 25% de los píxeles más importantes y resultado de aplicar ROAD al 25% de los píxeles más importantes, respectivamente. Tomada del repositorio de GitHub2con el que hemos implementado Grad-CAM. Por último, la manera de obtener valores numéricos utilizando estas métricas pasa por promediar la disminución de la precisión en el modelo tras realizar predicciones sobre las imágenes perturbadas. Obtenemos entonces el valor numérico de la siguiente manera: score =x−x1+x−x2+· · · +x−xn N donde x se corresponde con la precisión del modelo original, xicon la precisión tras eliminar los píxeles influyentes de la característica idel modelo y Nes el número total de características eliminadas. De este modo, obtener scores altos implicará que las explicaciones son buenas pues las zonas marcadas como influyentes realmente lo son, y obtener scores bajos implicará todo lo contrario. Es necesario tener en cuenta que no existe una escala concreta entre la que se encuentren estos valores, pues en cada modelo se pueden eliminar un número distinto de características. Por otro lado, los cambios en la precisión del modelo experimentados con métricas como Deletion oInsertion serán a priori mucho mayores que con ROAD o ROAR, pues tal y como hemos visto antes, en las segundas intentamos que la perturbación de píxeles no implique una pérdida de información o incluso reentranamos el modelo con las imágenes perturbadas. Dicho esto, conviene analizar las puntuaciones obtenidas en cada métrica de forma individual y teniendo en cuenta la escala relativa obtenida con los métodos que se están comparando. En la Figura 5.6 se muestra el resultado de aplicar a una imagen el método Deletion frente al resultado de aplicar ROAD. Como se puede apreciar, el uso de la última métrica resulta en una imagen en la que no se aprecia esa parte del oso, pero se disimula de tal manera que el modelo no es capaz de reconocer esos píxeles como perturbados. 2https://github.com/jacobgil/pytorch-grad-cam/blob/master/tutorials/CAM% 20Metrics%20And%20Tuning%20Tutorial.ipynb
5.1. Explicaciones por Grad-CAM 61 Tras revisar todas estas métricas de evaluación y debido a que no existe ningún framework que implemente Deletion eInsertion compatible con la librería utilizada para obtener nuestras explicaciones mediante Grad-CAM, decimos comparar diferentes explicadores utilizando ROAD. Nótese que esta es otra forma de evaluar las explicaciones: una explicación será “mejor” cuanto mejor sea su valor ROAD. Hay que recordar que las explicaciones muestran qué partes de la imagen son más relevantes para que el modelo tome una decisión. La diferencia sustancial con el criterio del experto es el propio ámbito del problema. Uno es el problema que queremos resolver y otro es cómo el modelo lo está resolviendo, la idea es conseguir que coincidan. Por tanto, una explicación con ROAD alto no tiene por qué corresponderse con una explicación buena en el sentido del experto. Por ejemplo, imaginemos que el píxel superior izquierdo de todas las imágenes con fractura fuera blanco y negro para las que no tienen fractura. Si el modelo se diera cuenta de ello, las explicaciones mostrarían ese píxel con un valor métrico muy alto, pero no serían interpretables para un experto. Si las explicaciones parecen buenas en la evaluación subjetiva del experto pero las métricas son malas, no estamos entendiendo realmente qué está haciendo nuestro modelo. En este sentido son relevantes los dos ejes: conseguir explicaciones relevantes según la métrica para entender el modelo (“buena según ROAD”), pero interpretables para que sean de utilidad en el ámbito del problema a resolver (“buena según experto”). Lo óptimo, pero también difícil, sería conseguir maximizar los dos ejes, es decir, que el modelo resuelva el problema al igual que lo haría un experto. En la Figura 5.7 se presenta un gráfico de barras con las puntuaciones obtenidas utilizando la métrica ROAD para diferentes métodos explicadores de CAM. En dicho gráfico, para cada método explicador se presentan tres barras distintas: la verde se refiere a la clase 1 (“Fractura”) del modelo de 2 clases, y las de color azul representan las clases en las que se subdividen las fracturas dentro del modelo de 3 clases: la de la izquierda la clase 1 (“Neck Fracture”) y la de la derecha la clase 2 (“Trochanteric Fracture”). Debajo de las barras verdes vemos un “1” que nos indica que la puntuación es para la clase 1 del modelo de 2 clases. Análogamente, el número que aparece debajo de cada barra azul nos indica la clase del modelo de 3 clases a la que nos referimos en cada caso. De este gráfico se obtienen varias conclusiones: en primer lugar observamos que la métrica es consistente solo con mirar las puntuaciones del último método, RandomCAM. Este método selecciona píxeles como influyentes de manera totalmente aleatoria y por tanto, como es lógico, es el que menos puntuación saca en todas las clases (llegando a obtener puntuación negativa en 2 de las barras, lo cual quiere decir que trás perturbarlas imágenes el modelo mejora la precisión, algo que no tiene mucho sentido). En segundo lugar observamos que GradCAM se revela como el método más consistente en las 3 clases, pues en todas presenta la mayor puntuación con respecto a la misma barra del resto de métodos. Si se realiza un análisis ingenúo de este gráfico, se podría concluir que las explicaciones para el modelo de 3 clases resultan mucho más robustas que para el modelo de 2 clases, pues se obtienen puntuaciones mucho mayores en todas las clases. Sin embargo, esto no tiene por qué ser cierto: no debemos perder de vista que la columna verde se refiere a un modelo de tan solo 2 clases, en el que resulta mucho más fácil acertar y por tanto es más
62 Capítulo 5. Explicaciones visuales GradCAM GradCAM++ EigenGradCAM AblationCAM RandomCAM Método 0.00 0.02 0.04 0.06 0.08 0.10 0.12 0.14 0.16 ROADCombined promedio 0.060 0.021 -0.006 0.047 -0.002 0.072 0.148 0.058 0.140 0.022 0.151 0.064 0.143 -0.022 0.070 111111111122222 ROADCombined promedio por clase y método de explicación visual Modelo de 2 clases Modelo de 3 clases Figura 5.7: Score de ROAD para distintos métodos de CAM. difícil obtener precisiones bajas tras perturbar imágenes. Es por tanto lógico que la columna verde tome un rango de valores menor. Con respecto a las columnas de modelo de 3 clases, vemos que efectivamente alcanzan valores más altos (pues es más fácil empeorar la precisión al perturbar imágenes al haber una clase más). Podemos concluir sobre este modelo que los elementos que permiten distinguir la clase “Trochanteric Fracture” están mucho más claros que los que permiten distinguir la clase “Neck Fracture”, pero en ningún caso que las explicaciones de este modelo son mejores que las que se obtienen utilizando el modelo de 2 clases. Por último, tras ver que Grad-CAM es el método que mejores explicaciones visuales genera de acuerdo con la métrica ROAD, es conveniente plantearse otra pregunta: para un subconjunto concreto ¿se obtienen mejores explicaciones utilizando el modelo entrenado únicamente con ese subconjunto o si utilizamos el modelo entrenado con todo el dataset? El gráfico de la Figura 5.8 nos ayuda a responder a esta pregunta. En dicho gráfico se presenta para cada uno de los conjuntos de nuestro dataset ROB, AO y HVV el valor de ROAD promedio obtenido por clase (clase 1, Neck Fracture en tonos verdes, y clase 2, Trochanteric Fracture, en tonos azules) para el modelo específico (entrenado solo con el subconjunto correspondiente, en tonos oscuros) y el modelo combinado (entrenado con todos los datos, en todos claros). Observando dicho gráfico resulta evidente que los mejores resultados para todos los conjuntos y todas las clases se obtienen utilizando el modelo combinado (excepto para la clase 1 de ROB, donde los resultados son parejos). Además, parece que AO es el conjunto que mejor explicaciones visuales recibe para la clase 2 (aunque las de la clase 1 reciben una puntuación baja). Concluimos también que, por regla general, la clase 2 recibe mejores explicaciones que la clase 1. Es importante indicar que este gráfico se ha generado sobre el modelo de tres clases. Queda pendiente entonces comparar las explicaciones por Grad-CAM generadas para el modelo de 2 clases con las generadas para el de 3, algo que haremos con ayuda de varios expertos en lugar de con estas métricas con el fin de que sea la opinión de potenciales usuarios lo que
5.2. Explicaciones librería Xplique 63 ROB AO HVV Dataset 0.00 0.05 0.10 0.15 0.20 0.25 ROADCombined promedio 0.060 0.055 0.084 0.136 0.021 0.034 0.146 0.249 0.039 0.119 0.084 0.101 ROADCombined promedio por clase y tipo de modelo Clase 1, Modelo específico Clase 1, Modelo combinado Clase 2, Modelo específico Clase 2, Modelo combinado Figura 5.8: Score promedio de ROAD por clase y tipo de modelo obtenido por GradCAM nos ayude a decidir qué explicaciones son las mejores (ver el Capítulo 7). 5.2. Explicaciones librería Xplique Xplique3es una librería de Python dedicada a la explicabilidad. El objetivo de la librería es recoger el estado de la cuestión de la IA Explicable y la usaremos para ayudar a comprender nuestros complejos modelos de redes neuronales. Está originalmente construido para modelos de Tensorflow, aunque funciona parcialmente para PyTorch. La librería se compone de varios módulos. El módulo de Attributions Methods implementa diversos métodos (por ejemplo Saliency, Grad-CAM, Integrated Gradients...), con explicaciones, ejemplos y enlaces a artículos oficiales. El módulo Features Visualizations permite ver como las redes neuronales construyen su entendimiento de las imágenes buscando inputs que maximizan neuronas, canales, capas o composiciones de estos elementos. El módulo Concepts permite extraer conceptos humanos de un modelo y probar su utilidad con respecto a una clase. Finalmente, el módulo Metrics cubre las métricas actuales usadas en explicabilidad. Usado en conjunto con el módulo Attributions Methods, te permite probar los distintos métodos o evaluar las explicaciones de un modelo. En esta sección nos centramos en los módulos Attributions Methods yMetrics, para probar y evaluar explicaciones distintas a Grad-CAM sobre nuestros modelos de clasificación. Se elaboró un script de Python para probar las explicaciones de esta librería sobre nuestros modelos. En la Figura 5.20 podemos encontrar las explicaciones de la librería aplicadas a algunas fracturas reconocidas por un modelo. Algunas consideraciones: 3https://github.com/deel-ai/xplique
64 Capítulo 5. Explicaciones visuales Las explicaciones basadas en puntos, como Saliency,Gradient Input,Integrated Gradients,SmoothGrad,SquareGrad yVarGrad parecen no ser de mucha ayuda en este ámbito, ya que siempre parecen marcar la zona central del hueso de forma dispersa, pero no necesariamente sobre una fractura. Concretamente SquareGrad yVarGrad parecen recalcar el borde de la zona del cuello femoral, pero sin indicios de detección de fractura. Xplique solamente implementa Grad-CAM para modelos de Tensorflow, por lo que no pudimos añadirlo aquí. Además, como tampoco implementa la métrica ROAD explicada en la sección anterior y, como no pudimos encontrar una forma de compatibilizar la métrica Deletion con nuestra implementación de Grad-CAM, utilizamos Deletion para comparar estos métodos entre sí. Esto no debe ser un gran problema ya que, tras reuniones con el Dr. Queipo de Llano, seguíamos confiados en que Grad-CAM era mejor explicador que estos. La Figura 5.21 muestra el valor de Deletion de los distintos métodos. El método RISE, descrito en Petsiuk et al. (2018) junto con las métricas Insertion yDeletion, parece ser el que más se asemeja a Grad-CAM. Sin embargo, se observa que en nuestro caso recalca muchas zonas de la imagen, lo que lo hace más confuso que Grad-CAM. En las Figuras 5.21 y 5.22 observamos a modo de gráfico de barras una comparativa de los score obtenidos por los distintos métodos de Xplique al utilizar Deletion eInsertion respectivamente. Se puede observar que en general se obtienen valores de entre 2 y 3 para todos los métodos, que a priori son bastante altos. Sin embargo, dada la opinión del Dr. Queipo de Llano sobre la utilidad de estas explicaciones y dado que estas dos métricas de evaluación no son las más robustas, decidimos utilizar Grad-CAM aun obteniendo scores en una escala mucho menor con la métrica ROAD. En resumen, la libería resultó útil para conocer y comparar otros métodos de explicaciones y métricas, aunque no pudimos explotarla al máximo debido a la limitada compatibilidad con PyTorch y los superiores resultados del Grad-CAM implementado previamente. 5.3. Explicaciones con factuals En el caso de las radiografías que no presentan fractura, los métodos visuales expuestos anteriormente, aunque informalmente demuestren las zonas en las que el modelo basa su decisión, no proporcionan la misma utilidad al no haber una fractura que señalar. Aunque, por lo general, en la literatura (Guidotti et al., 2019; Goyal et al., 2019) son más utilizadas las explicaciones con counterfactuals (presentar un contraejemplo, una imagen con una fractura clara a modo de explicación de la no existencia de la fractura), en este caso concreto, proponemos explicaciones por factuals (Charpiat et al., 2019; Hanawa et al., 2021), por resultar más convenientes para nuestro tema concreto. La idea es explicar que en una determinada imagen no hay fractura buscando una imagen similar que tampoco la presenta. Para generar
5.3. Explicaciones con factuals 65 Figura 5.9: Saliency Figura 5.10: GradientInput Figura 5.11: IntegratedGradients Figura 5.12: SmoothGrad Figura 5.13: SquareGrad Figura 5.14: VarGrad Figura 5.15: Occlusion Figura 5.16: RISE Figura 5.17: SobolAttributionMethod Figura 5.18: LIME Figura 5.19: Kernel Shap Figura 5.20: Explicaciones de Xplique sobre algunas de las fracturas presentadas en la sección anterior. este tipo de explicaciones necesitamos poder medir objetivamente como de similares son dos imágenes y para ello introducimos la medida SSIM, presentada por Zhou Wang et al. (2004) y ampliamente reconocida y utilizada como la métrica de referencia para la comparación de imágenes. Dadas dos imágenes A,B, el SSIM entre los píxeles x∈Aey∈Bviene dado por : SSIM(x, y) = (l(x, y))α(c(x, y))β(s(x, y))γ donde por simplificar notación se omiten las dependencias de los píxeles xeycon las imágenes AyBrespectivamente, y donde l,c,sdenotan luminancia, contraste y estructura, respectivamente. Sin entrar en muchos detalles, y como explican Nilsson y Akenine-Möller (2020), tomando α=β=γ= 1 y sustituyendo las fórmulas de estos tres factores se obtiene: SSIM(x, y) = (2µAµB+C1)(2σAB +C2) (µ2 A+µ2 B+C1)(σ2 A+σ2 B+C2),
66 Capítulo 5. Explicaciones visuales Figura 5.21: Deletion en Xplique. Figura 5.22: Insertion en Xplique. donde, los valores µAyµBse corresponden con la media, σAyσBcon la varianza yσAB con la covarianza de los valores alrededor de un píxel. Definimos el SSIM medio (MSSIM) entre dos imágenes para poder compararlas como la media de los valores del SSIM entre todos sus pares de píxeles, esto es: MSSIM(A,B) = 1 wh X x X y SSIM(x, y) donde wes la anchura de la imagen en píxeles y hsu altura. De este modo, el MSSIM entre dos imágenes será un valor entre -1 y 1 y obtener un valor ≥0,99 implicará, en general, que las imágenes que se están comparando son indistinguibles. Evidentemente, con esta configuración de paramétros, se cumple que MSSIM(A,A) = 1, lo cual es una característica deseable a la hora de plantear un método para medir la similitud entre imágenes. En la Figura 5.23 se puede ver una ilustración del valor MSSIM propuesta en el artículo original de Zhou Wang et al. (2004). En esta figura, el MSSIM se calcula entre la imagen original y las distorsionadas. A pesar de que obtienen el mismo MSE, la calidad percibida de la imagen claramente no es la misma. En este sentido, vemos como MSSIM se asemeja más a la calidad que nosotros como perceptores daríamos a cada imagen distorsionada. Tras implementar el cómputo del MSSIM entre dos imágenes cualesquiera, añadimos a nuestro modelo explicaciones mediante factuals. Para ello, basta hacer que cuando el modelo prediga clase 0 (no fractura) para una imagen, se calcule el MSSIM entre la imagen suministrada como input y todas las imágenes de nuestro dataset cuya etiqueta es también la clase 0. Como ejemplo más similar que justifica la clasificación de la imagen como “no fractura” se proporcionará la imagen con la que se haya obtenido un valor de MSSIM mayor. Cabe destacar que en la práctica, tras realizar varias pruebas, en general se obtiene un MSSIM de aproximádamente 0.3 entre la imagen de entrada y la proporcionada como ejemplo más similar. Teniendo en cuenta que un valor de 1 implica que las imágenes que se están comparando son las mismas, podemos estar satisfechos con los resultados obtenidos. En la Figura 5.24 se muestran, a modo de ejemplo, las explicaciones por factuals para 5 radiografías que no presentan fractura de nuestro dataset. Para cada una de las imágenes se presentan las dos radiografías de nuestro dataset para las que se ha obtenido un mayor valor del MSSIM. Como se puede ver, en general se obtiene valores altos de este parámetro y por tanto concluimos que este tipo de explicaciones
5.3. Explicaciones con factuals 67 Figura 5.23: Comparativa de imagénes de un barco con diferentes tipos de distorsiones, todas con MSE = 210. (a) Imagen original (8 bits/píxel). (b) Realce de constraste (Contrast-Stretch), MSSIM = 0.9168. (c) Desplazamiento de media (Mean-Shift), MSSIM = 0.9900. (d) Compresión JPEG, MSSIM = 0.6949. (e) Imagen emborronada (blur), MSSIM = 0.7052. (f) Imagen contaminada por ruido, MSSIM = 0.7748. Figura tomada de Zhou Wang et al. (2004). pueden resultar realmente ilustrativas. En resumen, hemos visto en este capítulo cómo podemos generar y adaptar distintos tipos de explicaciones visuales a nuestro problema de clasificación de fracturas de cadera. Aunque estas imágenes son muy ilustrativas, su explicabilidad en una aplicación directa con pacientes es limitada. En el caso de los gradientes, como se expone en la sección 5.1.1, la explicación es buena mientras pueda destacar la región de la fractura. En el caso de no fractura, los factuals son tan buenos como lo sea la imagen similar. En ambos casos, estas explicaciones no ofrecen una visión completa que un paciente pueda comprender, puesto que carecen de un diagnóstico, una descripción de lo que les ocurre. En el siguiente capítulo planteamos un enfoque distinto para generar explicaciones basadas en textos. Figura 5.24: Explicaciones de “No Fractura” mediante factuals
Cap´ ıtulo 6 Explicaciones textuales mediante CBR+LLM Aunque las explicaciones por gradientes vistas en el capítulo anterior destacan regiones importantes de una radiografía, el Dr. Queipo de Llano nos hizo ver que las explicaciones textuales pueden resultar de mayor utilidad al ser más completas, ya que además de describir la estructura anatómica de una fractura, también aportan información sobre anomalías, tratamientos y limitaciones de la misma. Además, las explicaciones textuales ofrecen un nivel de personalización superior ajustable a la experiencia del usuario y pueden proporcionar ideas detalladas para expertos, así como versiones simplificicadas para aquellos que tengan menor experiencia en radiología, lo que permite asegurar que la información presentada es accesible y relevante para el nivel de conocimiento de cada uno de los usuarios, lo que sin lugar a dudas mejorará su experiencia con el sistema. En este contexto, los Large Language Models (LLMs) aparecen como una solución directa y efectiva. Tal y como se explica con detalle en Minaee et al. (2024) y Zhao et al. (2023), los LLMs son sistemas de inteligencia artificial diseñados para entender y generar texto de manera coherente y además, se ha comprobado que son capaces de trabajar con textos del ámbito médico y producir muy buenos resultados (Zhou et al., 2024). Por este motivo, consideramos que estos modelos pueden ser utilizados para parafrasear diagnósticos médicos, reformulando la información de manera precisa y accesible para diferentes audiencias (en nuestro caso nivel experto o nivel estudiante). Sin embargo, los modelos generativos modernos, como GPT-4, Mistral o LLaMA, no garantizan la ausencia de errores al trabajar con imágenes médicas, y un ajuste para reducir la tasa de fallo requiere un gran corpus de explicaciones textuales asociadas con radiografías. Como la recolección manual de un corpus así es inviable para nosotros, proponemos una solución híbrida usando Case-Based Reasoning (CBR). Este capítulo describe nuestro trabajo en estas líneas y nuestro enfoque del ciclo CBR para generar explicaciones. Lo que se decribe a continuación ha sido aceptado como artículo de investigación y se presentará en el workshop XCBR de la International Conference for Case-Based Reasoning1. 1ICCBR XCBR’24: Workshop on Case-Based Reasoning for the Explanation of Intelligent Systems at ICCBR2024, July 1 – 4, 2024, Merida, Mexico. (https://iccbr2024.org) 69
76 Capítulo 6. Explicaciones textuales mediante CBR+LLM C0.0 C1.0 C1.1 C1.2 C2.0 C2.1 Clúster 0.00 0.05 0.10 0.15 0.20 0.25 0.30 SSIM promedio 0.246 0.221 0.31 0.242 0.272 0.268 SSIM promedio por clúster Clase 0 Clase 1 Clase 2 Figura 6.6: SSIM medio de los clústeres resultantes. nuestra propuesta. Para implementar esta etapa, hemos probado Mistral y GPT-4 a través de las APIs de HuggingFace y OpenAI, respectivamente. Los prompts incluyen el informe textual Robtenido por la etapa de recuperación y varios “niveles de conocimiento” del usuario, con los cuales pretendemos generar salidas adaptadas a diferentes tipos de usuarios (expertos médicos o pacientes/estudiantes). La Tabla 6.1 muestra dos versiones diferentes generadas por GPT-4 de un texto de la base de casos creado por un experto para explicar una fractura basicervical del cuello femoral. En la segunda columna, se presenta el texto original, y en la cuarta columna, se muestran versiones de texto para estudiantes y expertos, respectivamente, generadas por GPT-4. Este enfoque nos ayuda a evitar explicaciones repetitivas, ya que GPT-4 genera textos diferentes cada vez. Además, podemos adaptar el texto Figura 6.7: Imagen más similar encontrada dada una radiografía
6.1. Explicador Híbrido CBR-LLM 77 original dependiendo del usuario, ya sea un estudiante o un experto, mejorando así la usabilidad del sistema. 6.1.5. Revisar y Retener En nuestro enfoque, la fase de revisión no es meramente una formalidad, sino un mecanismo crítico para refinar y mejorar el rendimiento de nuestro sistema CBR. Con una base de casos inicial que comprende solo un puñado de casos iniciales y una etapa de reutilización que depende de LLMs, que ocasionalmente pueden producir descripciones textuales inexactas, la etapa de revisión emerge como un componente crucial de nuestra metodología. Nuestro sistema ha sido diseñado con un enfoque centrado en el usuario, capacitando a expertos y profesionales para participar activamente en el proceso de aprendizaje. Una de las características clave de nuestro sistema es su capacidad para solicitar descripciones textuales alternativas directamente de los usuarios durante el proceso de revisión. Esta funcionalidad permite a los usuarios proporcionar ideas matizadas, correcciones o contexto adicional que nuestro sistema podría haber pasado por alto o representado de manera inexacta. Al incorporar este bucle interactivo de retroalimentación, no solo facilitamos la participación del usuario, sino que también fomentamos un proceso de mejora continua. Cada corrección, refinamiento o mejora sugerida por los usuarios sirve como una entrada valiosa para el sistema, contribuyendo a su proceso de aprendizaje iterativo. Con el tiempo, a medida que el sistema acumula diversos aportes de los usuarios, evoluciona hacia una herramienta más sólida y adaptable para diagnosticar fracturas de cadera a partir de radiografías. De esta manera, la etapa de revisión sirve como piedra angular de nuestro enfoque CBR, facilitando el refinamiento y la mejora a través de la participación activa de los usuarios. Al asumir la retroalimentación del usuario y aprovechar la inteligencia colectiva de la comunidad médica, nos esforzamos por crear un sistema que no solo satisfaga las necesidades de sus usuarios, sino que también evolucione y se adapte para ofrecer capacidades de diagnóstico cada vez más precisas y confiables. Debido al escaso número de casos iniciales de la base de casos, permitimos la adición directa de nuevos casos a la base de casos y retenemos cada caso revisado como un nuevo caso para futuras iteraciones. Planeamos extender la investigación para evaluar cómo estos nuevos casos pueden afectar el comportamiento del sistema y otros enfoques para la fase de retención. Es importante señalar que la inclusión de nuevos casos potencialmente implica recalcular los clústeres que organizan la base de casos y por tanto quedan abiertas muchas líneas de investigación y de trabajo futuro. En la Sección 8.3 se exponen con detalle cuáles serían los siguientes pasos a realizar en aras de mejorar el rendimiento (tanto en términos computacionales como en términos de utilidad) de esta primera aproximación del sistema CBR capaz de proporcionar explicaciones visuales, casos similares y un diagnóstico a una radiografía dada. Además, en el capítulo siguiente veremos también la evaluación llevada a cabo sobre las explicaciones textuales generadas.
78 Capítulo 6. Explicaciones textuales mediante CBR+LLM Expertise Specific diagnosis Prompt Generated diagnosis Student A basicervical femoral neck fracture is a specific type of fracture that affects the base of the neck of the femur, at the junction with the trochanteric mass. It is a two-part fracture at the base of the femoral neck that was medial to the intertrochanteric line, exiting above the lesser trochanter but was more lateral than a classic transcervical fracture. Given the following medical explanation: «Specific diagnosis», generate a text of EQUAL or SHORTER length that is suitable for a person with Student knowledge. A basicervical femoral neck fracture is a specific type of fracture that affects the base of the neck of the femur, at the junction with the trochanteric mass. It is a twopart fracture at the base of the femoral neck that was medial to the intertrochanteric line, exiting above the lesser trochanter but was more lateral than a classic transcervical fracture. Expert Given the following medical explanation: «Specific diagnosis», generate a text of EQUAL or SHORTER length that is suitable for a person with Expert knowledge. A basicervical femoral neck fracture is a break in the bone that occurs where the thigh bone’s neck and its wider part at the top meet. Unlike a common neck fracture that happens further inside, this type takes place closer to the side, above a bony prominence but not as far to the side as some other types. Tabla 6.1: Prompts de ejemplo y diagnósticos generados para distintos niveles de conocimiento.
Cap´ ıtulo 7 Evaluación con usuarios Llegados a este punto, contamos con un clasificador de fracturas de cadera que produce resultados satisfactorios sobre los diferentes conjuntos en los que ha sido evaluado (ver Capítulo 4) y, además, que es capaz de generar explicaciones visuales basadas en las técnicas CAM y factuals (ver Capítulo 5) que no solo resultan de gran ayuda a la hora de localizar fracturas en ciertas radiografías, sino que además nos permiten comprender el comportamiento del modelo así como poder explicar a los usuarios en base a qué se toman ciertas decisiones. Tal y como se muestra en el Capítulo 6, también contamos con un sistema CBR que, dada una radiografía de cadera, predice una de las clases Trochanteric Fracture,Neck Fracture oNo Fracture. Esta predición se acompaña además con su correspondiente explicación visual y con un caso de nuestro dataset que, según la medida SSIM (que se explica en el Capítulo 5), es realmente parecido. Por último, en cada ejecución, se genera un texto a modo de diagnóstico a partir de unos textos semilla y con la ayuda de LLMs. Para conseguir que las explicaciones textuales resulten de utilidad, el primer paso es que los médicos comiencen a utilizarlo, pues la idea es que estos generen feedback para los diagnósticos propuestos por nuestro sistema CBR. Además de aumentar nuestra base de casos, esto nos permitirá corregir posibles errores cometidos por el LLM e incluso generar diagnósticos más detallados para algunas radiografías particulares, lo que podría resultar en que en un futuro el trabajo desarrollado sea realmente útil. Antes de dar el paso final y poner el modelo en uso, consideramos estrictamente necesario someter el trabajo realizado a una evaluación por parte de expertos. Con este objetivo, hemos elaborado tres experimentos con los que buscamos analizar la utilidad que puede llegar a tener nuestro sistema. A lo largo de este capítulo, se presentan los experimentos ideados así como los resultados y su correspondiente análisis. 7.1. Desarrollo del experimento Dado que la capacidad de reconocer fracturas de cadera en una radiografía no es una habilidad con la que cuenta cualquier persona, para desarrollar nuestro experimento fue necesario tener en cuenta que este ha de estar dirigido a profesionales del ámbito médico: estudiantes de medicina, expertos traumatólogos, radiólogos, 79
80 Capítulo 7. Evaluación con usuarios médicos residentes... Evidentemente, no podemos suponer que estos expertos estén familiarizados con la IA y además, debemos ser conscientes de que no debemos someter a aquellos expertos que estén dispuestos a ayudarnos a realizar un cuestionario demasiado tedioso. Esto implica que es crucial optimizar la cantidad de información que podemos obtener de sus respuestas así como minimizar el tiempo de realización de los cuestionarios. En otras palabras, debemos tener claro qué queremos preguntar y qué queremos verificar con ello. Por este motivo, se realizó un estudio de las hipótesis que se quieren comprobar y se analizó cuál era la mejor manera de hacerlo, lo cual se expone en la siguiente sección. 7.1.1. Hipótesis del experimento Tras analizar los resultados que ha obtenido nuestro modelo (ver Sección 4.2.2) así como las explicaciones visuales que genera (ver Capítulo 5), pensamos que resultaría interesante poder concluir con este experimento que las siguientes hipótesis son ciertas: H1. Grad-CAM es el método que produce las explicaciones visuales más útiles. Han sido muchas las técnicas de explicación visual mediante CAM que se han implementado en el modelo y, dado que no resulta provechoso incluir todas en el output del sistema CBR, es necesario tener información objetiva sobre cuál es el método que, en general, produce los mapas de calor más útiles para médicos y estudiantes. Basándonos en los resultados expuestos en el Capítulo 5, Grad-CAM es el método que obtiene el valor más alto de ROAD en todos los casos y, además, el Dr. Alfonso Queipo de Llano ya nos comunicó que, entre aquellas que le fueron presentadas, eran las explicaciones generadas por este método las que le resultaban de mayor utilidad. En base a esto, concluimos que es necesario que tras realizar este experimento podamos afirmar que esta hipótesis es cierta. H2. Las explicaciones visuales generadas para el modelo de dos clases resultan más ilustrativas que las generadas por el modelo de tres clases. Hemos visto en los Capítulos 4 y 5 que se obtienen resultados muy distintos en función de si consideramos el modelo clasificador de dos clases (fractura y no fractura) o el de tres (no fractura y dos tipos distintos de fractura). La tendencia es que, en general, el modelo de dos clases obtiene mejores métricas en sus explicaciones pues, tal y como dijo el Dr. D. Alfonso Queipo de Llano, en estos mapas de calor se localiza mejor la fractura. Dicho esto, pensamos que es de crucial importancia a la hora de instalar este sistema en un centro médico o académico saber qué tipo de modelo debemos utilizar. H3. Sobre un conjunto de prueba totalmente nuevo para el modelo, este obtendrá una precisión similar a la de los expertos y mayor que la de los estudiantes. Consideramos que es importante conocer los límites de nuestro modelo a la hora de utilizarlo sobre un conjunto de imágenes que no ha visto antes, como es el caso de las últimas 50 imágenes que nos proporcionaron desde el Hospital Universitario Virgen de la Victoria. Vistos los resultados del modelo en el
7.1. Desarrollo del experimento 81 Capítulo 4, entendemos que nuestro modelo será capaz de comportarse prácticamente como un experto pero pensamos que es necesario poder confirmar esta afirmación con los resultados del experimento. H4. Dado que estamos en la primera etapa de la puesta en marcha de nuestro sistema CBR, entendemos que en este momento los textos generados por este sistema pueden resultar útiles a nivel académico, pero difícilmente pueden aportar valor al diagnóstico de un experto. Consideramos entonces que el experimento a realizar debe aportarnos información sobre cómo de útiles resultan los textos generados a los diferentes roles evaluados. Además, podemos aprovechar el experimento para obtener feedback para los textos generados y así tener los datos necesarios para plantear las primeras iteraciones completas, incluso con la etapa de revisión y retención del sistema CBR. 7.1.2. Implementación del experimento Tras tener claras las hipótesis a comprobar con el experimento, el siguiente paso fue implementarlo. Con este objetivo en mente, desarrollamos tres formularios distintos en un entorno web con PHP y HTML al que se accede a través de los enlaces1 que nosotros mismos les proporcionamos. Tal y como se muestra en la Figura 7.1, antes de realizar cada uno de los formularios y, para poder comprobar la veracidad de las hipótesis indicadas en la sección anterior así como el grado de utilidad del sistema para personas con diferentes roles, cada experimento comienza pidiendo a los usuarios la siguiente información que nos ayudará a clasificar los resultados en función de su posición y nivel de experiencia: 1. Elegir la opción que mejor describe su nivel de experiencia a la hora de reconocer fracturas de cadera en una escala del 0 (poco conocimiento) al 5 (más conocimiento). 2. Elegir la opción que mejor describe su rol entre: estudiante, residente en radiología, residente en ortopedia, experto en radiología, experto en ortopedia u otro. Una vez introducida esta información, el usuario puede pasar a responder a los tres formularios que se presentan a continuación: 1. En el primer experimento se pide al usuario que responda a 20 preguntas. En cada una de ellas se proporciona el recorte del fémur de una radiografía del mismo modo en el que se le proporcionaría un input al modelo, acompañado de la clase predicha para esa radiografía y de cuatro explicaciones visuales generadas por técnicas CAM distintas, concretamente Saliency yVarGrad 1Primer experimento: https://gaia.fdi.ucm.es/files/research/xai/xai-experiments/ experiment1/experiment.html Segundo experimento: https://gaia.fdi.ucm.es/files/research/xai/xai-experiments/ experiment3/experiment.html Tercer experimento: https://gaia.fdi.ucm.es/files/research/xai/xai-experiments/ experiment2/experiment.html
82 Capítulo 7. Evaluación con usuarios (ver Sección 5.2) sobre el modelo de tres clases y Grad-CAM sobre el modelo de dos clases y sobre el de tres. La tarea del usuario es, para cada pregunta, seleccionar aquella explicación visual que más le ayuda a clasificar la imagen real de acuerdo con la clase predicha por el modelo. Para evitar incoherencias y contar con representantes de cada uno de los conjuntos ROB, AO y HVV, expuestos en el Capítulo 3, se realizó una selección manual 7 instancias de ROB, 7 instancias de AO y 6 de HVV para las que la predicción fuera correcta y las explicaciones visuales fueran a priori razonablemente buenas. Con los resultados de este experimento estaríamos preparados para responder a las dos primeras hipótesis, esto es, para saber qué metodo explicador es el mejor y además si es conveniente utilizar el modelo de dos clases sobre el de tres a la hora de generar estos mapas de calor. Además, debido a que entre las 20 imágenes seleccionadas participan de igual manera las tres fuentes de las que se obtuvieron los datos, como veremos en la Sección 7.2, podremos obtener conclusiones adicionales. En la Figura 7.2 se muestra lo que ve el experto al realizar cada una de las 20 preguntas de este primer experimento. 2. El objetivo del segundo experimento es estudiar si la tercera hipótesis planteada en la sección anterior es cierta. Para ello decidimos comparar la precisión de nuestro modelo con la de estudiantes y diferentes expertos en campos relacionados con las radiografías de fracturas de cadera sobre el conjunto de 50 nuevas imágenes que nos proporcionaron desde el Hospital Virgen de la Victoria y que no han sido utilizadas nunca en el entrenamiento de nuestro modelo. De este modo, en este último experimento se le proporcionan al experto estas 50 imágenes y se le pide que las clasifique entre "No fracture", "Femoral Neck Fracture 2 "Trochanteric Fracture". En la Sección 7.2 compararemos los resultados obtenidos para cada rol con la precisión del modelo de tres clases y estaremos en condiciones de obtener conclusiones sobre la tercera hipótesis planteada. En la Figura 7.3 se muestra lo que ve el experto al realizar cada una de las preguntas del segundo experimento. 3. El tercer experimento consta de 8 preguntas. En cada una de ellas se proporciona el recorte del fémur de una radiografía, del mismo modo en el que se le proporcionaria un input al modelo, acompañado de la clase predicha para esa radiografía y de la explicación textual (diagnóstico) generado por nuestro sistema CBR para esa imagen. En este caso, la tarea del experto es leer el diagnóstico y calificar su utilidad en una escala del 0 (poco o nada útil) al 5 (muy útil). De este modo conseguiremos hacernos una idea sobre cómo de útiles resultan este tipo de textos a los potenciales usuarios del sistema en función de su posición. Además, se pide al experto que proporcione cualquier comentario que considere conveniente en un cuadro de texto. De este modo, tratamos de recolectar el máximo de información posible para actualizar y ampliar nuestra base de casos, además de comprobar si el LLM utilizado (en este caso GPT-4) comete errores importantes. En la Figura 7.4 se muestra lo que ve el experto al realizar cada una de las 8 preguntas del tercer experimento. Una vez implementado el experimento en su totalidad se difundió un correo electrónico que incluye los enlaces al mismo por diferentes centros médicos, hospitales
7.2. Resultados del experimento 83 Figura 7.1: Fase inicial del experimento y facultades de ciencias de la salud de toda España, sobre todo Andalucía, Madrid, Castilla y León y Extremadura. Trasladar los experimentos a estudiantes de medicina fue una tarea más sencilla que a expertos. Afortunadamente, mantuvimos contacto con las personas que nos ayudaron en el Hospital Virgen de la Victoria, así como con la ayuda de especialistas en radiología en Almería. Todas las respuestas recolectadas se han almacenado en un archivo de texto que ha sido detalladamente analizado. Los resultados de dicho análisis se presentan en la Sección 7.2 y, como se verá en dicha sección, nos son de gran ayuda para estudiar la veracidad de las hipótesis planteadas en la sección anterior. 7.2. Resultados del experimento Tras la difusión de los experimentos expuestos en la sección anterior por diferentes centros tanto médicos como académicos, obtuvimos un total de 286 respuestas para el primer experimento, 953 respuestas para el segundo experimento y 65 respuestas para el tercer experimento, lo que consideramos que es una participación más que suficiente como para extraer conclusiones y estudiar la veracidad de las hipótesis planteadas. En la presente sección se exponen los resultados de los experimentos a modo de tablas y gráficos que presentan la información adecuadamente estructurada (por rol del usuario, por método de explicación, por conjunto de datos...) así como un análisis de dichos resultados que concluye con la aceptación de las hipótesis de la Sección 7.1.
84 Capítulo 7. Evaluación con usuarios Figura 7.2: Experimento 1. Figura 7.3: Experimento 2. 1. Gracias al experimento 1 hemos podido comprobar que Grad-CAM es el método de explicación visual que mejores resultados produce. Esto se cumple para cada subconjunto de datos, así como para cada rol de los usuarios que han evaluado su funcionamiento, como muestran las Figuras 7.5 y 7.6, respectivamente. Además, las explicaciones de Grad-CAM basadas en el modelo entrenado con dos clases son superiores a aquellas producidas por el modelo de tres clases. Por otro lado, ambos métodos de Grad-CAM producen mejores explicaciones que Saliency yVarGrad. 2. Mediante el experimento 2 hemos comparado el rendimiento de nuestro modelo con el de los usuarios. Para ello, se han calculado la precisión y la exhaustividad obtenidas por cada rol al clasificar las imágenes del experimento de forma binaria, es decir, nos hemos enfocado en si los usuarios y el modelo discernían entre un fémur fracturado y un fémur no fracturado, sin considerar el tipo de
7.2. Resultados del experimento 85 Figura 7.4: Experimento 3. Rol Precisión ( %) Exhaustividad ( %) Soporte Experto en ortopedia 88.0 (81.6, 94.4) 98.1 (94.6, 100) 100 Estudiante 78.3 (74.8, 81.7) 88.1 (84.4, 91.7) 552 Otro 78.7 (74.1, 83.4) 90.2 (85.6, 94.8) 301 Modelo 78.0 (66.5, 89.5) 59.3 (40.7, 77.8) 50 Tabla 7.1: Resultados del experimento de clasificación de fracturas. fractura clasificado. La precisión y la exhaustividad se han calculado según las Fórmulas 4.2 y 4.3, respectivamente. Como se observa en la Tabla 7.1, los expertos han obtenido mayor precisión y exhaustividad que los demás grupos de usuarios, lo cual era de esperar. Sin embargo, el modelo no ha alcanzado métricas tan satisfactorias como las de los expertos, por lo que no se verifica la hipótesis de que el modelo presenta un rendimiento similar a los expertos y superior a los estudiantes. Consideramos que, con más datos procedentes del hospital, el modelo obtendría mejores resultados, ya que la distribución de los datos de entrenamiento sería más similar a los datos con los que se ha realizado el experimento. De nuevo, nos encontramos con que la limitada disponibilidad de datos de entrenamiento supone una barrera que limita el rendimiento del modelo. 3. El experimento 3 nos ha permitido evaluar la corrección y utilidad de las explicaciones textuales generadas por GPT-4. La Tabla 7.2 recoge la evaluación de la utilidad de las explicaciones por parte de los usuarios. Se ha calculado la utilidad media, en una escala del 0 al 5, en función de cada rol, así como un intervalo de confianza del 95 % para cada valor medio. Se puede observar que,
92 Capítulo 8. Conclusiones y Trabajo Futuro aquellos que son expertos en el ámbito del reconocimiento de fracturas de cadera y por este motivo, tal y como se expone en el Capítulo 7, llevamos a cabo tres experimentos en el que varios expertos evaluaron la precisión del sistema, la calidad de las explicaciones generadas (tantos textuales como visuales) y además pudieron proporcionar feedback a los diagnósticos que puede ser ya utilizado para aumentar y mejorar nuestra base de casos prototípicos. Con esto, queda claro que el objetivo O9se ha cumplido y, en consecuencia, podemos afirmar que todos los objetivos planteados inicalmente se han llevado a cabo satisfactoriamente, dando por finalizado el trabajo. En resumen, hemos conseguido desarrollar un sistema de XAI de reconocimiento y diagnóstico de fracturas de cadera a partir de radiografías que, con los resultados de las evaluaciones de los expertos en la mano, bien podría ser utilizado en centros tanto académicos como médicos. Durante el desarrollo de dicho sistema, hemos podido comprobar de primera mano lo difícil que resulta enfrentarse a la implementación de un modelo de aprendizaje automático en el mundo real. A diferencia de lo que ocurre en las prácticas realizadas en la universidad, resulta realmente difícil conseguir datos homogéneos y es necesario implicar a gran cantidad de personas para cumplir este objetivo. Por otro lado, es crucial utilizar en todo momento librerías de IA que sean compatibles entre ellas y permitan implementar no solo el modelo, sino también explicaciones sobre el mismo y técnicas de evaluación de las explicaciones generadas. Hemos podido comprobar que nuestro modelo, aún con las limitaciones de acceso a ordenadores lo suficientemente potentes como para implementar redes neuronales densas (DenseNet) ni a bancos de datos médicos, prácticamente simula el comportamiento de un experto traumatólogo sobre conjuntos de imágenes nuevas para el mismo. Durante la implementación y la evaluación de distintos modelos clasificadores, hemos podido analizar cómo afecta la inclusión de nuevos datos procedentes de fuentes distintas al modelo, así como analizar la capacidad de generalización del mismo. Podemos concluir que, en general, los modelos de aprendizaje automático funcionan bien con datos procedentes de la misma fuente que aquellos con los que ha sido entrenado, sin embargo, a la hora de generalizar a datos de provenientes de fuentes distintas, aun realizando el mismo preprocesado, se obtienen resultados peores. Para mitigar este efecto, basta incluir instancias de imágenes de la fuente nueva en el conjunto de entrenamiento, y, tras esta modificación, veremos que la capacidad de generalización del modelo mejora considerablemente sobre otras imágenes nuevas procedentes de esa fuente. Extraemos como conclusión final que en el mundo de la IA explicable todavía queda mucho trabajo por hacer, pues hemos podido comprobar cómo a usuarios no familiarizados con la IA les resulta realmente difícil interpretar explicaciones de distintos tipos. Es importante tener en mente que este tipo de explicaciones reflejan el comportamiento del modelo y los pasos que sigue este para tomar una decisión, algo que en la mayoría de las ocasiones no coincide con lo que haría un humano experto. Creemos además que, dada la importancia que la IA tiene actualmente en la vida de muchas personas, es necesario dar este gran paso cuanto antes. Concluimos también que, a diferencia de lo que mucha gente puede pensar, es totalmente viable realizar experimentos con IA a mediana escala con un equipo personal, y además es una práctica excelente para entender cómo funcionan los modelos actuales como GPT-4 que tanto nos fascinan hoy en día.
8.2. Publicación de resultados 93 8.2. Publicación de resultados Durante la exposición del trabajo, es mecionado varias veces que nuestra arquitectura de gemelos “ANN-CBR” subrogados, descrita en el Capítulo 6 para la generación de explicaciones textuales de fracturas, ha sido aceptado como artículo y será presentado en el workshop de IA explicable de la Conferencia Internacional de CBR (ICCBR) 2024 en Mérida, Méjico. También está pendiente incluir el trabajo en la página web del grupo de investigación GAIA, además de otras tareas de difusión y evaluación del trabajo realizado. Sin embargo, motivados por nuestros tutores, hemos considerado que esta publicación es solo una pequeña parte del trabajo, y que el grueso del trabajo con los datos, los modelos y la búsqueda y evaluación de explicaciones podría publicarse en una revista de bioinformática. Con ayuda de los tutores, estamos en proceso de escritura de un artículo para la revista Journal of Biomedical Informatics1. 8.3. Trabajo futuro Este trabajo presenta primero un modelo de red neuronal que puede clasificar con precisión las fracturas de cadera en radiografías y se centra en la necesidad de explicaciones para aumentar la confianza y la interpretabilidad de un clasificador de “caja negra”. Nuestro modelo de IA, lejos de ser perfecto, deja abiertas muchas líneas para el trabajo futuro. En primer lugar, es claro que el trabajo está limitado a una obtención de un dataset abundante, de calidad y correctamente etiquetado. La obtención de una cantidad sustancial de datos a través de instituciones como hospitales asociados a una universidad podría mejorar el entrenamiento y la precisión de los modelos utilizados. Pensamos que esto es, en parte, motivo del éxito de los trabajos de Krogue et al. (2020), Tanzi et al. (2022) y otros, puesto que, al trabajar en conjunto con especialistas en los centros médicos asociados a sus instituciones, logran una gran colaboración obteniendo datos etiquetados en la forma que mejor les convenga. Esto supondría también un trabajo de selección de pacientes y un estudio de la población seleccionada. La obtención de más datos también permitiría la generalización del modelo a más clases, por ejemplo, subtipos de fracturas trocantéreas o, aunque menos comunes, fracturas de tipo C (cabeza del fémur, ver Figura 3.1). Este trabajo por supuesto también iría acompañado de un nuevo entrenamiento, prueba y validación. Limitados por nuestra escasez de recursos, en un futuro podrían también implementarse arquitecturas de redes neuronales más complejas pero computacionalmente más costosas, como la ResNet34 o la DenseNet para la tarea de clasificación. Además, habría que estudiar el comportamiento de las explicaciones por gradientes ya implementadas sobre estos nuevos modelos y las variaciones al utilizar un número mayor de clases, para optimizar la calidad de las explicaciones. Con una mayor cantidad de datos y más trabajo de etiquetado, podría plan1https://www.sciencedirect.com/journal/journal-of-biomedical-informatics
94 Capítulo 8. Conclusiones y Trabajo Futuro Figura 8.1: YOLOv8 sobre una fractura. tearse la implementación de un modelo YOLO para la predicción de los tipos de fractura. Estos modelos son de segmentación, lo que quiere decir que su salida es exactamente donde encuentra cada tipo de fractura. Estos modelos se pueden entrenar proporcionando en el conjunto de entrenamiento los polígonos que rodean el área de cada detección, como pueden ser los fragmentos en los que queda dividido el hueso tras una fractura o un hueso de fémur completo sin fractura. Como se ha visto en este trabajo, YOLO produce “bounding boxes”, que son rectángulos en los que se encuadra cada detección. Con post-procesado se puede conseguir como salida el polígono que delimita también la detección, como se muestra en la Figura 8.1. En este ejemplo se muestra una detección de una cadera “normal”, sin fracturas y dos fragmentos resultantes de un fractura trocantérea. La ventaja del modelo YOLO es que es altamente interpretable, puesto que la salida se explica por sí misma. La limitación clara de estos modelos está en el etiquetado, puesto que acompañar cada radiografía debe venir no solo con los tipos de fractura que presenta, sino con los vértices (x, y)del polígono que delimita cada instancia es una tarea tediosa. En este trabajo se presentan explicaciones que consideramos por factuals para las imágenes que no presentan ningún tipo de fractura. Sin embargo, no se ha llevado a cabo una evaluación de estas explicaciones ni por métricas ni por usuarios. En un futuro no sólo podría idearse una forma de evaluarlas o mejorarlas, sino que podrían considerarse otros métodos como los counterfactuals o los recientes semi-factuals (Aryal, 2024), que producen explicaciones sobre los cambios en la entrada que no alteran la salida. En cuanto a las explicaciones textuales, a medida que la base de casos crezca, escalar el sistema CBR plantea varios desafíos y consideraciones. En primer lugar, almacenar y gestionar un gran número de textos diagnósticos requiere una infraestructura robusta y técnicas eficientes de manejo de datos. Por lo tanto, es esencial
8.3. Trabajo futuro 95 desarrollar un método para seleccionar cuáles explicaciones textuales proporcionadas por expertos son cruciales para refinar el sistema CBR o para combinar casos similares. Este proceso de selección podría involucrar la priorización de explicaciones basadas en su relevancia para diagnósticos comunes, su impacto en la mejora del rendimiento del modelo o su alineación con prácticas clínicas en evolución. El uso de diferentes tipos de prompts y un estudio más profundo sobre cómo personalizar la explicación textual asociada a la consulta son tanto un desafío como una oportunidad para el impacto de las sinergias entre CBR y LLMs en el ámbito de la XIA. Además, con un conjunto de textos de diagnóstico en expansión, otro aspecto a abordar es la dificultad de reorganizar los clústeres manteniendo una estructura de agrupación eficiente y significativa a medida que se añaden nuevos casos. Por esta razón, sería necesario decidir cuándo se recalculan los clústeres de imágenes para generar mejores resultados a medida que se utiliza el sistema. Otro desafío relacionado con el crecimiento del conjunto de datos radica en el proceso de búsqueda de imágenes similares. Dada una imagen, este sistema CBR debe compararla con todas las demás que tienen la misma etiqueta. Se podría gastar demasiado tiempo en esta tarea, por lo que se vuelve necesario encontrar una forma de acelerar este proceso. También sería interesante considerar otros tipos de búsquedas, que reflejen una mayor relación entre los subtipos de fracturas. Por otro lado, la colaboración entre expertos en el dominio y programadores será crucial para abordar los errores generados por los LLMs, los cuales presentan un desafío significativo. A pesar de sus capacidades avanzadas, los LLMs no son inmunes a inexactitudes o interpretaciones erróneas, por lo que corregir estos errores es esencial para garantizar la fiabilidad y precisión de las explicaciones textuales generadas. Aunque hemos recopilado información valiosa a través del experimento, queda pendiente aplicar la retroalimentación obtenida al sistema y evaluar su funcionamiento. Para aprovechar al máximo los comentarios de los expertos y refinar los diagnósticos almacenados, es crucial establecer un método de trabajo una vez que este sistema CBR gane uso generalizado. En línea con esto, es esencial compartir las explicaciones con los expertos a través de reuniones y encuestas. Esto no solo confirma la exactitud de las explicaciones, sino que también asegura la efectividad de nuestro enfoque para los pacientes. Esta etapa del proceso está diseñada específicamente para usuarios expertos médicos capaces de redactar informes médicos con precisión. En la medida en que los grandes modelos multimodales de empresas como OpenAI o Google sigan creciendo, sería de gran interés adaptar un modelo image-to-text a nuestro cometido. Cercana la fecha de finalización de este trabajo, OpenAI ha lanzado el nuevo GPT-4o2capaz de reaccionar en tiempo real a texto, imágenes o vídeo. De existir un modelo multimodal capaz de procesar imágenes médicas, se podría incluir en el ciclo CBR de modo inmediato para producir explicaciones para una fractura dado un prompt simple como “dado este diagnóstico, explícame la fractura que ves en la siguiente imagen”. La idea sería la de proporcionar al modelo la imagen y la explicación recuperada por el CBR para adaptarla a la imagen en concreto y describirla. 2https://openai.com/index/hello-gpt-4o/
96 Capítulo 8. Conclusiones y Trabajo Futuro Un aspecto que no hemos conseguido evaluar en nuestro experimento ha sido la utilidad de nuestro sistema como Computer Aided Diagnosis (CAD). Sería interesante evaluar cómo mejoran las predicciones de los usuarios al usar el sistema con respecto a cuando no lo usan. Un experimento posible sería enviar dos cuestionarios distintos de clasificación de fracturas muy separados en el tiempo: uno como nuestro tercer cuestionario, esto es, sin ayuda del modelo y otro que trate de lo mismo pero proporcionando la predicción del modelo y una explicación. Se trataría entonces de comprobar si existen mejoras en la predicción de los expertos. Otra posibilidad sería confeccionar un cuestionario de modo que, tras cada clasificación del experto, se le vuelva a preguntar por la misma pero proporcionando la ayuda del modelo para comprobar si le ayuda a corroborar su clasificación o a cambiar de opinión. Las líneas de investigación que se abren con este trabajo son sumamente prometedoras y presentan retos apasionantes que sin duda enriquecerán el campo del diagnóstico asistido por IA. La obtención y etiquetado de un dataset más extenso y de alta calidad, la implementación de arquitecturas de redes neuronales más complejas, y la exploración de modelos de segmentación como YOLO, representan grandes oportunidades para mejorar la precisión y la interpretabilidad de los sistemas de diagnóstico. Además, la integración de métodos avanzados de explicaciones visuales, el reciente auge de los LLMs y otros sistemas multimodales, así como la colaboración estrecha con expertos médicos serán cruciales para validar y perfeccionar las soluciones propuestas. El potencial de este trabajo no solo radica en el avance tecnológico, sino también en la posibilidad de transformar la práctica clínica, facilitando diagnósticos más precisos y confiables que beneficien tanto a médicos como a pacientes. Por último, podemos destacar que el enfoque empleado en este trabajo no es específico para las fracturas de cadera y, con un dataset adecuado, podría extenderse a otros tipos de radiografías. Enfrentar estos retos con entusiasmo y dedicación promete conducir a descubrimientos significativos y mejoras continuas en la aplicación de la IA en la medicina.
Conclusions and Future Work At the end of this project, it is crucial to evaluate all the work that has been done. This chapter presents that evaluation, allowing us to see if all the objectives set at the beginning (see Chapter 1) have been met, and to gain a comprehensive view of our final project. This will be essential in drawing final conclusions and proposing future work directions. 8.1. Achievement of objectives At the beginning of the course, we first embarked on a research phase involving similar projects, which led us to contact various foundations, associations, hospitals, and even individuals who we believed could provide the necessary data to start developing a hip fracture classifier model. After several months, we gathered sufficient data to begin working, but we encountered our first challenge: the data, coming from different sources, was not homogeneous and thus unsuitable for training a machine learning model. We realized that in the “real world”, unlike what we are accustomed to at university, obtaining data for AI is not only difficult but also requires significant preprocessing and adjustment work. We saw that objectives O1and O2are interlinked, as it is not valid to speak of an adequate dataset without first preprocessing it to homogenize and remove potential “noise”, which is generally present in the data. We proceeded by training two YOLO models to extract the important parts of each X-ray, and then developed various scripts using OpenCV and Pillow to automate the preprocessing of our dataset. After successfully completing these stages and the intermediate steps (familiarizing ourselves with the mentioned libraries, understanding YOLO, analyzing the results produced by the trained models), we can assert that objectives O1and O2have been achieved. The next step involved focusing our efforts on developing a classifier model that not only produced good results but also allowed for different types of visual explanations. Initially, a solutions was developed using the library Scikit-learn. We implemented and evaluated various models in Scikit-learn, including simple neural networks, Support Vector Machines (SVM) with and without kernels, and decision trees. Although the results were not optimal, they were encouraging, motivating us to take the next step: using PyTorch. We began by implementing a convolutional neural network, which helped us get acquainted with the new tool, and eventually 97
98 Capítulo 8. Conclusiones y Trabajo Futuro decided to implement a more complex 18-block residual neural network. As cited in Chapter 2, this model is well-suited for medical imaging and produces good generalization results, having been trained on millions of images from the ImageNet platform. Evidently, the work does not end with model implementation; it also includes an equally or more important evaluation phase, requiring us to learn about techniques for evaluating object detection systems in images and classifier systems. Hence, we believe that during the project’s development, we have understood and evaluated various techniques in image processing and hip fracture recognition and classification tasks, reinforcing that objective O2has been met, and we can also affirm that objective O3has been fulfilled. The next phase of the project involved incorporating visual explanations into the implemented model. As explained in Chapter 5, we worked with various CAM methods that generate heatmaps, clearly showing which areas influenced the model’s prediction and which did not. We used all the methods present in the Xplique library, which, as shown in Figure 5.20, are exactly 11. We also worked with Grad-CAM, which provided the best results. To evaluate these explanations, we approached from two perspectives. First, we used metrics like ROAD, ROAR, Deletion, and Insertion, which give a numerical value indicating how good an explanation is based on how altering the influential pixels affects the model’s accuracy. With this, we are confident in saying that objectives O4and O5are met, especially considering that not only were CAM-based visual explanation techniques implemented, but the SSIM measure was also studied to compare images and implement explanations based on similar cases when the X-ray does not show a fracture. These explanations, known as factual explanations, proved useful when providing an explanation for a “no fracture” prediction, as there is no element to locate in the image, making it helpful to provide a similar X-ray where the hip is confirmed to be in good condition. We then sought expert opinions from the field, contacting Dr. Alfonso Queipo de Llano, who indicated that Grad-CAM explanations best located fractures and were thus the most useful. This led us to understand that visual explanations should be seen as what the model relies on to justify its decision, meaning that in our specific case, a heatmap that does not highlight the fracture as the most influential area might score high on ROAD but be useless to a doctor. Due to the work done with the data, as shown in Chapter 5, our model’s highest-scoring ROAD visual explanations matched those marked by experts as most useful, both being GradCAM, indicating that the work was done correctly. As we will see, we developed a form where several people with experience in hip fracture recognition evaluated our explanations, and as presented in Chapter 7, the results were as expected. Thus, we can say that objective O6has been achieved. Following discussions with Dr. Alfonso Queipo de Llano, we concluded that although our model provided good accuracy and recall along with visual explanations that often located fractures, it would be desirable to also provide some form of textual diagnosis or explanation to illustrate what is seen in the X-ray. This proposal posed a new challenge that consisted of designing and developing a CBR system capable of providing a diagnosis for each X-ray. This approach required only a few prototypical texts as “seed cases” for the CBR system, as the texts would be completed, improved, and corrected with user feedback in subsequent stages. This
8.1. Achievement of objectives 99 presented a clear drawback: in the early uses of the CBR system, diagnoses would be very repetitive. To mitigate this, we incorporated an LLM capable of paraphrasing and adapting diagnoses to a specific level of experience (resident doctor, traumatologist, student), allowing user comments to be introduced into the LLM prompt to improve the texts. Thus, we developed an XAI system for diagnosing and explaining hip fractures that integrates a case-based reasoning model, Grad-CAM explanations, factual explanations, and an LLM model for generating textual explanations. We can therefore say that objectives O7and O8have also been met. At this point, most of the work was done, but an important part remained: evaluation by potential system users. We believed it was important to know the opinion of experts in hip fracture recognition regarding the utility of our work. As presented in Chapter 7, we conducted three experiments where several experts evaluated the system’s accuracy, the quality of the generated explanations (both textual and visual), and provided feedback on the diagnoses, which can now be used to expand and improve our prototype case base. This makes it clear that objective O9has been met, and consequently, we can state that all the initially set objectives have been satisfactorily achieved, bringing the project to a close. We have successfully developed an XAI system for the recognition and diagnosis of hip fractures from radiographs. Based on the results of expert evaluations, this system could be effectively used in both academic and medical centers. Throughout the development of this system, we have experienced firsthand the challenges of implementing a machine learning model in the real world. Unlike university practice sessions, obtaining homogeneous data is incredibly difficult and requires the involvement of many people to achieve this goal. Furthermore, it is crucial to use AI libraries that are compatible with each other and allow for the implementation not only of the model but also of explanations about the model and evaluation techniques for the generated explanations. Despite the limitations of not having access to powerful computers capable of implementing dense neural networks (DenseNet) or medical data repositories, our model almost simulates the behavior of an expert orthopedist on new sets of images. During the implementation and evaluation of different classifier models, we have been able to analyze how the inclusion of new data from different sources affects the model, as well as its generalization capacity. We can conclude that, in general, machine learning models perform well with data from the same source as those with which they were trained. However, when generalizing to data from different sources, even when applying the same preprocessing, the results are poorer. To mitigate this effect, simply including some instances of images from the new source in the training set significantly improves the model’s generalization ability on other new images from that source. As a final conclusion, we find that there is still much work to be done in the field of explainable AI. We have observed that users unfamiliar with AI find it extremely difficult to interpret explanations of different types. It is important to keep in mind that such explanations reflect the model’s behavior and the steps it follows to make a decision, which often does not align with what a human expert would do. Given the current importance of AI in many people’s lives, we believe it is necessary to take this significant step as soon as possible.
100 Capítulo 8. Conclusiones y Trabajo Futuro We also conclude that, contrary to what many people might think, it is entirely feasible to conduct medium-scale AI experiments with personal equipment. Additionally, this practice is excellent for understanding how current models like GPT-4, which fascinate us today, work. 8.2. Publications of our work During the presentation of our work, it was mentioned several times that our “ANN-CBR” twin surrogate architecture, described in Chapter 6 for generating textual explanations of fractures, has been accepted as a paper and will be presented at the XAI work shop at the International Conference for CBR (ICCBR) 2024 in Mérida, Mexico. It is also pending to include this work on the GAIA research group’s website, in addition to other dissemination and evaluation tasks for the work performed. However, motivated by our tutors, we have considered that this publication is just a small part of our work, and that the bulk of the work with the data, models, and the search and evaluation of explanations could be published in a bioinformatics journal. With the help of our tutors, we are in the process of writing an article that outlines our work for the Journal of Biomedical Informatics3. 8.3. Future work This project first presents a neural network model that can accurately classify hip fractures in radiographs and focuses on the need for explanations to increase trust and interpretability of such a black-box classifier. Our model, while not perfect, leaves many avenues for future work. Firstly, it is clear that the work is limited by the acquisition of an abundant, high-quality, and correctly labeled dataset. Obtaining a substantial amount of data through institutions like university-affiliated hospitals could improve the training and accuracy of the models used. We believe this is partly why the works of Krogue et al. (2020), Tanzi et al. (2022), and others have been successful. By collaborating with specialists in the medical centers associated with their institutions, they achieve great collaboration in obtaining data labeled in the most convenient way. This would also involve patient selection work and a study of the selected population. Acquiring more data would also allow the model to generalize to more classes, such as subtypes of trochanteric fractures or, although less common, type C fractures (femoral head, see Figure 3.1). This work would, of course, also involve new training, testing, and validation. Limited by our lack of resources, more complex but computationally expensive neural network architectures, such as ResNet34 or DenseNet, could be implemented for the classification task in the future. Additionally, the behavior of the gradient explanations already implemented on these new models and the variations when using a greater number of classes would need to be studied, in order to optimize the quality of the explanations. 3https://www.sciencedirect.com/journal/journal-of-biomedical-informatics
8.3. Future work 101 With a larger amount of data and more labeling work, implementing a YOLO model for fracture classification could be considered. These are segmentation models, meaning their output is exactly where they find each type of fracture. These models can be trained by providing the vertices of the polygons that surround the area of each detection in the training set, such as the fragments into which the bone is divided after a fracture or a complete femur bone without a fracture. As seen in this work, YOLO produces bounding boxes, which are rectangles that enclose each detection. Post-processing can yield polygons that also delineate the detection, as shown in Figure 8.1. In this example, a detection of a “normal” hip without fractures and two fragments resulting from a trochanteric fracture are shown. The advantage of the YOLO model is that it is highly interpretable, as the output explains itself. The clear limitation of these models is the labeling, as each radiograph must be accompanied not only by the types of fractures it presents but also by the (x, y) vertices of the polygon that delineates each instance, which is a tedious task. In this work, we present factual explanations for images that do not show any fractures. However, these explanations have not been evaluated either by metrics or by users. In the future, a way to evaluate or improve them could be devised, and other methods such as counterfactuals or the recent semi-factuals (Aryal, 2024), which produce explanations about changes in the input that do not alter the output, could be considered. Regarding textual explanations, as the case base grows, scaling the CBR system poses several challenges and considerations. Firstly, storing and managing a large number of diagnostic texts requires robust infrastructure and efficient data-handling techniques. Therefore, it is essential to develop a method for selecting which textual explanations provided by experts are crucial for refining the CBR system or for combining similar cases. This selection process could involve prioritizing explanations based on their relevance to common diagnostic scenarios, their impact on improving model performance, or their alignment with evolving clinical practices. The use of different types of prompts and a deeper study on how to personalize the textual explanation associated with the query are both a challenge and an opportunity for the impact of synergies between CBR and LLMs in the XAI field. Additionally, with an expanding set of diagnostic texts, another aspect to address is the difficulty of reorganizing clusters while maintaining an efficient and meaningful clustering structure as new cases are added. For this reason, it would be necessary to decide when the image clusters are recalculated to generate better results as the system is used. Another challenge related to the dataset growth lies in the process of searching for similar images. Given an image, this CBR system has to compare it with all the others that have the same label. Too much time could be spent on this task, so a way of speeding up this process becomes necessary. It would also be interesting to consider other types of searches that reflect a greater relationship between fracture subtypes. On the other hand, collaboration between domain experts and programmers will be crucial to address the errors generated by LLMs, which present a significant challenge. Despite their advanced capabilities, LLMs are not immune to inaccuracies or misinterpretations, so correcting these errors is essential for ensuring the reliability
108 Capítulo 8. Conclusiones y Trabajo Futuro también me dediqué a profundizar en la clasificación de las fracturas de cadera, al nivel que mi poco conocimiento me permitía. Esto resultó crucial más tarde a la hora de elegir una clasificación adecuada para el modelo de tres clases. Cuando Marius consiguió generar batches de explicaciones Grad-CAM con el modelo de dos clases que implementó con ResNet, mantuve varias reuniones con mi padre por Zoom los domingos por la noche, para enseñarle nuestros avances y comprender si las explicaciones eran buenas. La primera de ellas nos permitió darnos cuenta de algunos errores en el código, y en la segunda mi padre nos trasmitió la enhorabuena puesto que el modelo de dos clases en Roboflow señalaba muy bien las fracturas. Al mismo tiempo, para aprovechar las reuniones con mi padre y mostrarle otro tipo de explicaciones, conseguí implementar en el código las explicaciones de Xplique, a lo que me ayudó Marius, pues tuvimos que adaptar el código para que el modelo trabajara con tres canales (RGB) y no solo en escala de grises. Por lo mencionado anteriormente, cuando decidimos empezar a trabajar en el modelo de tres clases incluyendo las imágenes de AO y el hospital, me encargué yo de ello. Para ello, creé una nueva rama en el repositorio de GitHub llamada “Subclases”, trasmití a mis compañeros la clasificación que creía que debíamos hacer y preprocesé las nuevas imágenes. Como se explica en la sección 3.2, muchas de las imágenes de la AO (y algunas del hospital que no eran detectadas por YOLO) las tuve que recortar y adaptar a mano, lo cual llevó una cantidad de tiempo considerable. Además, hasta el momento las etiquetas venían dadas por los valores 0 o 1 para representar “No fractura” o “Fractura” respectivamente, por lo que tuve que etiquetar de nuevo todo el dataset acorde a tres clases, para lo que elaboré scripts, aunque también tuve que etiquetar varias imágenes a mano, confiando en lo aprendido. Finalmente pude entrenar los primeros modelos de tres clases y obtener resultados de clasificación satisfactorios, aunque ya empezamos a darnos cuenta, y en las reuniones con mi padre también, que la calidad del Grad-CAM al pasar a tres clases había disminuido. En esta rama se comenzó también el código para el clustering y la generación de textos. Marius consiguió más tarde parametrizar el código para incluir todo el código de la rama “Subclases” en una misma rama. A partir de cierto punto, el trabajo con los modelos empezó a darme problemas de exceso de RAM, por lo que Marius adoptó la tarea de usarlos y elaborar código para gráficas, ejemplos, etc. Cuando nos planteamos la idea de generar explicaciones textuales, pude elaborar la primera prueba de concepto. Me puse a la búsqueda de una base de casos semilla, recopilando casos concretos con explicaciones por Internet y en contacto con mi padre para posibles correcciones. Habiendo conseguido esto, trabajamos los tres juntos en la elaboración del clustering y la generación de las explicaciones de modo iterativo: cuando Marius avanzaba con algo, Alejandro y yo (que afortunadamente vivimos cerca) quedábamos para seguir y viceversa. Todos contribuimos al código detrás de la generación de textos, aunque el remate final fue de Marius implementando los LLMs y desarrollando la interfaz gráfica de usuario (GUI). Por último, todos contribuimos a la escritura del artículo para el workshop XCBR ya mencionado, pero sí que me encargué de casi la totalidad de las correcciones del artículo cuando las recibimos. En cuanto a la elaboración de esta memoria, he compartido el trabajo prácticamente a medias con Alejandro mientras que Marius elaboraba los cuestionarios
8.3. Future work 109 y otras tareas relacionadas con el código, como el análisis de los mismos o la generación de gráficas y diagramas. He trabajado muy bien con Alejandro en esta memoria, puesto que nos hemos revisado y corregido todo lo escrito mutuamente, con la idea de eliminar las posibles imprecisiones y hacer hincapié en todo lo posible para reflejar nuestro trabajo. Por concretar, comentaré a continuación qué capítulos y secciones corresponden a cada uno en mayor parte, pero recuérdese que al revisar constantemente el trabajo del otro, no es que se hayan elaborado de forma independiente, sino que ambos hemos contribuido en todo. Alejandro comenzó el desarrollo de la memoria con buena parte del Capítulo 3 y el total del 4, que son el grueso del trabajo. La Sección 3.1 está escrita a medias con él y de la Sección 3.4 me encargué yo. De igual modo para el Capítulo 5, Alejandro hizo la Sección 5.1 salvo la Subsección 5.1.1, yo la 5.2 y la Sección 5.3. También me he encargado de los Capítulos 1 y 2, de la Sección 8.3, del abstract y del apéndice A, así como de la escritura y revisión de todo el texto en inglés. El Capítulo 7 ha sido escrito entre Marius y Alejandro y, con respecto a la redacción del Capítulo 2, hemos sido Alejandro y yo los que hemos contribuido mayoritariamente. Quiero recalcar encarecidamente que el trabajo de todos los miembros en este proyecto ha sido crucial. Estoy profundamente agradecido a mis compañeros por el trabajo en equipo y los tres estamos ampliamente satisfechos con el desarrollo del trabajo durante el curso y el resultado final del mismo.
Bibliografía Y así, del mucho leer y del poco dormir, se le secó el celebro de manera que vino a perder el juicio. Miguel de Cervantes Saavedra Aamodt, A. yPlaza, E. Case-based reasoning: Foundational issues, methodological variations, and system approaches. AI Communications, vol. 7(1), páginas 39–59, 1994. ISSN 0921-7126. Adams, M.,Chen, W.,Holcdorf, D.,McCusker, M. W.,Howe, P. D. y Gaillard, F. Computer vs human: Deep learning versus perceptual training for the detection of neck of femur fractures. Journal of Medical Imaging and Radiation Oncology, vol. 63(1), páginas 27–32, 2019. Aryal, S. Semi-factual explanations in ai. Proceedings of the AAAI Conference on Artificial Intelligence, vol. 38(21), páginas 23379–23380, 2024. Bengio, Y.,Courville, A. yVincent, P. Representation learning: A review and new perspectives. 2014. Charpiat, G.,Girard, N.,Felardos, L. yTarabalka, Y. Input similarity from the neural network perspective. En Advances in Neural Information Processing Systems (editado por H. Wallach, H. Larochelle, A. Beygelzimer, F. d'AlchéBuc, E. Fox y R. Garnett), vol. 32. Curran Associates, Inc., 2019. Deleanu, B.,Prejbeanu, R.,Tsiridis, E.,Vermesan, D.,Cris ,an, D.,Haragus, H.,Predescu, V. yBirsasteanu, F. Occult fractures of the proximal femur: Imaging diagnosis and management of 82 cases in a regional trauma center. World Journal of Emergency Surgery, vol. 10, 2015. Ford, C. yKeane, M. T. Explaining classifications to non-experts: An XAI user study of post-hoc explanations for a classifier when people lack expertise. En Pattern Recognition, Computer Vision, and Image Processing. ICPR 2022 International Workshops and Challenges - Montreal, QC, Canada, August 21-25, 2022, Proceedings, Part III (editado por J. Rousseau y B. Kapralos), vol. 13645 de LNCS, páginas 246–260. Springer, 2022. 111
112 BIBLIOGRAFÍA Gamoura, S. C. Explainable ai (xai) for ai-acceptability: The coming age of digital management 5.0. 2023. Gao, Y.,Soh, N. Y. T.,Liu, N.,Lim, G.,Ting, D.,Cheng, L. T.-E.,Wong, K. M.,Liew, C.,Oh, H. C.,Tan, J. R.,Venkataraman, N.,Goh, S. H. yYan, Y. Y. Application of a deep learning algorithm in the detection of hip fractures. iScience, vol. 26(8), página 107350, 2023. ISSN 2589-0042. Gomez, T.,Fréour, T. yMouchère, H. Metrics for saliency map evaluation of deep learning explanation methods. 2022. Goyal, Y.,Wu, Z.,Ernst, J.,Batra, D.,Parikh, D. yLee, S. Counterfactual visual explanations. 2019. Guidotti, R.,Monreale, A.,Giannotti, F.,Pedreschi, D.,Ruggieri, S. yTurini, F. Factual and counterfactual explanations for black box decision making. IEEE Intelligent Systems, vol. 34(6), páginas 14–23, 2019. Hanawa, K.,Yokoi, S.,Hara, S. yInui, K. Evaluation of similarity-based explanations. 2021. Hashemi, M. Enlarging smaller images before inputting into convolutional neural network: zero-padding vs. interpolation. Journal of Big Data, vol. 6(1), página 98, 2019. He, K.,Zhang, X.,Ren, S. ySun, J. Deep residual learning for image recognition. 2015. Hooker, S.,Erhan, D.,Kindermans, P.-J. yKim, B. A benchmark for interpretability methods in deep neural networks. 2019. Jocher, G.,Chaurasia, A. yQiu, J. Ultralytics yolov8. 2023. Kenny, E. M. yKeane, M. T. Explaining deep learning using examples: Optimal feature weighting methods for twin systems using post-hoc, explanation-byexample in XAI. Knowl. Based Syst., vol. 233, página 107530, 2021. Kim, B.,Rudin, C. yShah, J. The bayesian case model: A generative approach for case-based reasoning and prototype classification. 2015. Kingma, D. P. yBa, J. Adam: A method for stochastic optimization. 2017. Krizhevsky, A.,Sutskever, I. yHinton, G. E. Imagenet classification with deep convolutional neural networks. University of Toronto, 2012. Krogue, J. D.,Cheng, K. V.,Hwang, K. M.,Toogood, P.,Meinberg, E. G.,Geiger, E. J.,Zaid, M.,McGill, K. C.,Patel, R.,Sohn, J. H., Wright, A.,Darger, B. F.,Padrez, K. A.,Ozhinsky, E.,Majumdar, S. y Pedoia, V. Automatic hip fracture identification and functional subclassification with deep learning. Radiology: Artificial Intelligence, vol. 2(2), página e190023, 2020. PMID: 33937815.
BIBLIOGRAFÍA 113 Lee, C.,Jang, J.,Lee, S.,Kim, Y. S.,Jo, H. J. yKim, Y. Classification of femur fracture in pelvic x-ray images using meta-learned deep neural network. Scientific reports, vol. 10(1), página 13694, 2020. Li, O.,Liu, H.,Chen, C. yRudin, C. Deep learning for case-based reasoning through prototypes: A neural network that explains its predictions. 2017. Lin, M.,Chen, Q. yYan, S. Network in network. 2014. Mahendran, A. yVedaldi, A. Visualizing deep convolutional neural networks using natural pre-images. International Journal of Computer Vision, vol. 120(3), página 233–255, 2016. ISSN 1573-1405. Mao, A.,Mohri, M. yZhong, Y. Cross-entropy loss functions: Theoretical analysis and applications. 2023. Meinberg, E. G.,Agel, J.,Roberts, C. S.,Karam, M. D. yKellam, J. F. Fracture and dislocation classification compendium—2018. Journal of orthopaedic trauma, vol. 32, páginas S1–S10, 2018. Minaee, S.,Mikolov, T.,Nikzad, N.,Chenaghlu, M.,Socher, R.,Amatriain, X. yGao, J. Large language models: A survey. 2024. Misra, S.,Jeon, S.,Lee, S.,Managuli, R.,Jang, I.-S. yKim, C. Multi-channel transfer learning of chest x-ray images for screening of covid-19. Electronics, vol. 9, página 1388, 2020. Nilsson, J. yAkenine-Möller, T. Understanding ssim. 2020. O’Shea, K. yNash, R. An introduction to convolutional neural networks. 2015. Petsiuk, V.,Das, A. ySaenko, K. Rise: Randomized input sampling for explanation of black-box models. 2018. Popescu, M.-C.,Balas, V. E.,Perescu-Popescu, L. yMastorakis, N. Multilayer perceptron and neural networks. Faculty of Electromechanical and Environmental Engineering, University of Craiova, 2020. Redmon, J.,Divvala, S.,Girshick, R. yFarhadi, A. You only look once: Unified, real-time object detection. 2016. Rong, Y.,Leemann, T.,Borisov, V.,Kasneci, G. yKasneci, E. A consistent and efficient evaluation strategy for attribution methods. En Proceedings of the 39th International Conference on Machine Learning (editado por K. Chaudhuri, S. Jegelka, L. Song, C. Szepesvari, G. Niu y S. Sabato), vol. 162 de Proceedings of Machine Learning Research, páginas 18770–18795. PMLR, 2022. Rosenblatt, F. The perceptron: A probabilistic model for information storage and organization in the brain. Psychological Review, vol. 65(6), páginas 386–408, 1958.
114 BIBLIOGRAFÍA Ruder, S. An overview of gradient descent optimization algorithms. Insight Centre for Data Analytics, NUI Galway and Aylien Ltd., Dublin, 2016. Sales, J.,Videla, M.,Forcada, P.,Llusá, M. yNardi, J. Atlas de osteosíntesis, 2 vols., 2a ed.. Orozco: Fundación Mautice E. Müller. Elsevier Masson, 2009. ISBN 9788445819609. Schank, R. C. yLeake, D. B. Creativity and learning in a case-based explainer. Artificial Intelligence, vol. 40(1), páginas 353–385, 1989. ISSN 0004-3702. Selvaraju, R. R.,Cogswell, M.,Das, A.,Vedantam, R.,Parikh, D. y Batra, D. Grad-cam: Visual explanations from deep networks via gradientbased localization. International Journal of Computer Vision, vol. 128(2), página 336–359, 2019. ISSN 1573-1405. Seo, J.,Choe, J.,Koo, J.,Jeon, S.,Kim, B. yJeon, T. Noise-adding methods of saliency map as series of higher order partial derivative. 2018. Simonyan, K.,Vedaldi, A. yZisserman, A. Deep inside convolutional networks: Visualising image classification models and saliency maps. 2014. Sultana, F.,Sufian, A. yDutta, P. Advancements in image classification using convolutional neural network. En 2018 Fourth International Conference on Research in Computational Intelligence and Communication Networks. IEEE, West Bengal, India, 2018. Sundararajan, M.,Taly, A. yYan, Q. Axiomatic attribution for deep networks. 2017. Tanzi, L.,Audisio, A.,Cirrincione, G.,Aprato, A. yVezzetti, E. Vision transformer for femur fracture classification. Injury, vol. 53(7), páginas 2625–2634, 2022. ISSN 0020-1383. ThesisYolov8. Proximal femur fracture detection and classification dataset. https://universe.roboflow.com/thesisyolo-v8/ proximal-femur-fracture-detection-and-classification, 2023. Visited on 2024-03-23. Twinprai, N.,Boonrod, A.,Boonrod, A.,Chindaprasirt, J.,Sirithanaphol, W.,Chindaprasirt, P. yTwinprai, P. Artificial intelligence (ai) vs. human in hip fracture detection. Heliyon, vol. 8(11), página e11266, 2022. ISSN 2405-8440. Viveros-Melo, D.,Ortega-Adarme, M.,Blanco Valencia, X.,CastroOspina, A. E.,Murillo Rendón, S. yPeluffo-Ordóñez, D. H. Razonamiento basado en casos aplicado al diagnóstico médico utilizando clasificadores multi-clase: Un estudio preliminar. Nombre de la revista, 2019. Wadden, J. J. Defining the undefinable: the black box problem in healthcare artificial intelligence. Journal of Medical Ethics, vol. 48(10), páginas 764–768, 2022. ISSN 0306-6800.
BIBLIOGRAFÍA 115 Xu, F.,Uszkoreit, H.,Du, Y.,Fan, W.,Zhao, D. yZhu, J. Explainable AI: A Brief Survey on History, Research Areas, Approaches and Challenges, páginas 563–574. 2019. ISBN 978-3-030-32235-9. Yoshikawa, Y. yIwata, T. Explanation-based training with differentiable insertion/deletion metric-aware regularizers. 2024. Zhang, Y.,Weng, Y. yLund, J. Applications of explainable artificial intelligence in diagnosis and surgery. Diagnostics, vol. 12, página 237, 2022. Zhang, Z. ySabuncu, M. R. Generalized cross entropy loss for training deep neural networks with noisy labels. 2018. Zhao, W. X.,Zhou, K.,Li, J.,Tang, T.,Wang, X.,Hou, Y.,Min, Y.,Zhang, B.,Zhang, J.,Dong, Z.,Du, Y.,Yang, C.,Chen, Y.,Chen, Z.,Jiang, J., Ren, R.,Li, Y.,Tang, X.,Liu, Z.,Liu, P.,Nie, J.-Y. yWen, J.-R. A survey of large language models. 2023. Zhou, H.,Liu, F.,Gu, B.,Zou, X.,Huang, J.,Wu, J.,Li, Y.,Chen, S. S., Zhou, P.,Liu, J.,Hua, Y.,Mao, C.,You, C.,Wu, X.,Zheng, Y.,Clifton, L.,Li, Z.,Luo, J. yClifton, D. A. A survey of large language models in medicine: Progress, application, and challenge. 2024. Zhou Wang,Bovik, A. C.,Sheikh, H. R. ySimoncelli, E. P. Image quality assessment: from error visibility to structural similarity. IEEE Transactions on Image Processing, vol. 13(4), páginas 600–612, 2004. ISSN 1941-0042.
Ap´ endice A Ejemplos de Grad-CAM Como se explica en el Capítulo 5, se han generado explicaciones por Grad-CAM para muchas, si no todas, las imágenes de nuestro conjunto de datos. Este apéndice sirve para liberar a los capítulos de excesivos ejemplos y demostrar más claramente la variación que hemos encontrado en las explicaciones por Grad-CAM a medida que desarrollábamos el proyecto. A.1. Primeras evaluaciones con el Dr. Queipo de Llano Como bien se comenta en la Sección 5.1.1 del Capítulo 5, en una primera prueba el Dr. Queipo de Llano quedó insatisfecho con las explicaciones que generamos para el modelo de ResNet18 entrenado para clasificar en dos clases. Se han visto en la Figura 5.4 ciertas explicaciones que, según el Dr. Queipo, no eran de utilidad, pues no localizaban las fracturas. Incluimos de nuevo las Figuras 5.4 y 5.5 para facilitar la lectura de este apéndice. Además, el doctor nos propuso un algoritmo visual para la detección de desplazamiento, que suele ocurrir en la mayoría de fracturas, y consiste en: Figura A.1: Ejemplos de malas explicaciones, según el Dr. Queipo. 117