Abstract:
La retinopatía diabética (RD) es la enfermedad ocular diabética más común en todo el mundo y una de las principales causas de ceguera en la población de 20 a 65 años. El número de pacientes diabéticos aumentará a 552 millones en 2034, según la Federación Internacional de Diabetes (FID). Gracias a la evolución alcanzada por técnicas informáticas como la inteligencia artificial (Artificial Intelligence, AI) y el aprendizaje profundo (Deep Learning, DL), en la actualidad han aumentado las oportunidades de detectar la RD en sus primeras fases. Esto significa que aumentarán las posibilidades de que una persona se recupere de la enfermedad y la probabilidad de pérdida de la visión en los pacientes disminuirá en un futuro.
En este trabajo de investigación abordamos la tarea de aportar una solución a dicho problema y, en primera medida, hacemos un extenso estudio del estado del arte en el que se comprueba el avance alcanzado por autores de otras partes del mundo en esta área. Luego proponemos un conjunto de algoritmos que conforman el sistema completo, el cual ejecutará la tarea de detección y clasificación de la RD de forma automatizada usando redes pre entrenadas, creadas para tareas de procesamiento y clasificación de imágenes, en unión con un clasificador final personalizado. En nuestro sistema hacemos uso de la técnica del aprendizaje por transferencia (Transfer Learning) y añadimos un bloque personalizado de capas densas sobre las redes pre entrenadas para realizar las predicciones y validar los resultados alcanzados, comparándolos con los resultados alcanzados en el estado del arte. Los modelos de DL fueron entrenados y probados sobre el conjunto de datos de la Sociedad de Tele-Oftalmología de Asia Pacífico (APTOS, por sus siglas en inglés) 2019. IV
Los modelos seleccionados en nuestro enfoque preliminar fueron ResNet50, Xception, VGG16, EfficientNetB0 y DenseNet121, tomamos dichos modelos para hacer una comparativa inicial con otros trabajos publicados en el estado del arte y validar si los resultados alcanzados por nosotros eran similares para así considerar si nuestra propuesta pudiese considerarse apropiada para esta tarea de detección de la RD. Se utilizaron técnicas de aumento de datos para hacer los modelos más robustos y superar el problema del sobreajuste. De estas pruebas la red que mejor rendimiento tuvo fue EfficientNetB0 con un resultado tope en exactitud de predicción de 96.86%, una precisión de 98.15%, una sensibilidad de 95.67%, una especificidad de 98.14%, un puntaje F1 de 96.89%, un coeficiente kappa de 93.77% y un área bajo la curva de 96.9%. Con estos resultados se hicieron la respectiva comparativa y se constató que, efectivamente, los resultados alcanzados por nosotros superaron a la mayoría de los resultados logrados por autores del estado del arte. En el enfoque final proponemos no solo un sistema de detección de la RD, sino que también abordamos el área de la clasificación de la RD según el nivel de severidad de esta, de acuerdo con lo signos y características detectadas por las redes neuronales pre entrenadas junto con nuestro clasificador final. Para esta tarea usamos las redes pre entrenadas de Xception, VGG16, VGG19, DenseNet121, DenseNet169, InceptionV3, ResNet50, ResNet101, InceptionResNetV2, EfficientNetB0, EfficientNetB1, EfficientNetB2, EfficientNetB3. No incursionamos usando más redes debido a las limitantes de memoria RAM y GPU que nos ofrecía el entorno de desarrollo que usamos para esta investigación (Google Colaboratory). De igual forma se utilizaron técnicas de aumento de datos para mejorar la calidad del entrenamiento y no tener problemas con el sobreajuste. Con este enfoque y por medio de la red DenseNet169 logramos aumentar todas las métricas alcanzadas en la tarea de detección, logrando una exactitud de predicción de 98.72%, una precisión 98.21%, una sensibilidad de 99.28%, una especificidad V de 98.14%, un puntaje F1 de 98.74%, un coeficiente Kappa de 97.43% y un área bajo la curva de 98.71%. Estas métricas superan en su totalidad a las presentadas en el estado del arte, mostrando la robustez de la red para tareas de detección.
Para el caso de la tarea de clasificación de la RD los mejores resultados fueron obtenidos con la red de VGG16 con una exactitud de predicción de 83.52%, una precisión de 82.68%, sensibilidad de 83.52%, puntaje F1 de 82.52% y coeficiente Kappa de 74.71%. Estos resultados fueron comparados por los trabajos disponibles en el estado del arte que se enfocaron en el área de clasificación de la RD y comprobamos que superamos al 90% de los resultados disponibles del estado del arte y nos encontramos muy cercanos al valor máximo alcanzado con una diferencia de exactitud de solo 0,79%. Esto es un logro considerable teniendo en cuenta el grado de complejidad de las redes presentadas en el estado del arte y los recursos computacionales de los que ellos dispusieron. Por último hacemos una validación en los conjunto de imágenes de MESSIDOR y MESSIDOR-2, confirmamos que nuestro sistema es congruente con los resultados arrojados pero cabe resaltar que para el caso de MESSIDOR-2 no incluye etiquetas oficiales por lo que fueron obtenidas de terceros y para el caso de MESSIDOR la cantidad de imágenes es bastante pequeña para que el entrenamiento de la red logre resultados iguales a los de APTOS, consideramos entonces que estos dos factores influyeron para que la red no presentara resultados extremadamente favorables con estas dos bases de datos, pero que de todas formas logran el objetivo de detectar y clasificar la RD en imágenes de retina