AIMI: AI en la detección temprana del melanoma

AI Melanoma Identifier: AIMI
8 min readDec 10, 2019

--

El melanoma es un cáncer cutáneo ocasionado por la reproducción anormal de las células productoras de la melanina: los melanocitos.

Es uno de los tumores malignos que más se ha incrementado en la población desde finales del siglo XX, y se estima que la incidencia se duplica cada 10 o 20 años debido a exposiciones prolongadas a la radiación solar en países de población de piel blanca [1].

Además, es uno de los cánceres más mortales. Afortunadamente, si este es detectado a tiempo se produce la curación completa con una simple intervención quirúrgica, obteniéndose una tasa de supervivencia cercana al 100%. Sin embargo, a medida que el cáncer se expande, esta probabilidad desciende rápidamente, lo que incrementa la importancia del diagnóstico precoz. Esto queda soportado por los datos registrados de la American Cancer Society adjuntos en la tabla, donde cada etapa indica:

Localizado: no hay propagación del cáncer

Regional: propagación hacia ganglios linfáticos cercanos

Diseminado: metástasis a órganos vitales como pulmones, hígado o la piel

Una de las “ventajas” que presenta este tipo de cáncer, es que la mayoría de los casos asienta en la piel, órgano 100% visible para el paciente y para el personal sanitario. Por tanto es muy importante conocer las características que nos puedan hacer sospechar a simple vista su presencia. Los signos de alarma pueden resumirse con los criterios ABCDE (ver figura).

Criterios de alerta que puede presentar un lunar (ABCDE)

Otro criterio muy importante recientemente descubierto, sería el “signo del patito feo”, completando la F de los criterios ABCDE. Los lunares de un mismo individuo son similares entre sí, por lo que un signo de alerta es tener un lunar distinto del resto. Sin embargo, para este proyecto se han contado con los criterios ABCD.

Estos criterios y la experiencia de los dermatólogos, permiten sospechar con un alto grado de seguridad la presencia de un melanoma antes de la realización de una biopsia. Sin embargo, pueden darse casos complicados de identificación, como se puede ver en las imágenes, en la que el nevus de la izquierda cumple claramente con las características del criterio ABCD que lo identifican como melanoma, mientras que el de la derecha no parece salirse de la normalidad. Sin embargo, se trata igualmente de un melanoma. Incluso existen casos de melanomas sin color (amelatónicos) que no dan la cara en la exploración clínica.

Imágenes de lesiones cutáneas, ambas melanomas

Las grandes diferencias que pueden presentar dos lunares como estos, siendo ambos un cáncer, nos hizo pensar en la necesidad de una IA que pudiese identificar un melanoma de un lunar benigno incluso en casos muy extremos, como lo son estas imágenes.

De esta idea surge AIMI: AI Melanoma Identifier, un algoritmo de Deep Learning que, basándose en el criterio ABCD, es capaz de identificar la naturaleza maligna o benigna de un nevus, y de qué tipo se trata. Este proyecto se ha desarrollado en AI Saturdays, una comunidad sin ánimo de lucro que tiene la misión de democratizar la educación en AI.

¿Qué plantea AIMI, nuestra IA?

Nuestro principal objetivo con es servir como soporte visual a dermatólogos, facilitando la detección temprana de un melanoma. Gracias a una sencilla interfaz, este sistema nos permite realizar un diagnóstico médico que, acompañado de la comprobación de un especialista, permite detectar casos de melanoma de una forma cómoda y segura.

El proceso que se debe seguir es el siguiente: primero debe hacerse una fotografía con alta resolución del lugar donde se encuentre el lunar, a continuación deberá subir la imagen y el modelo de inteligencia artificial podrá detectar el tipo de melanoma del que se trata.

Este modelo demuestra que los sistemas de Inteligencia Artificial pueden mejorar el rendimiento humano en la detección y diagnóstico de melanomas, sabemos que es imposible que un software reemplace por completo la labor de un dermatólogo profesional pero sí puede suponer una ayuda fundamental de cara al futuro.

Descripción de los datos

El conjunto de datos que se ha utilizado para el entrenamiento del modelo es el MNIST HAM10000, que consta de las siguientes clasificaciones:

nv: Melanocytic nevi — conocido comúnmente como lunar, son neoplasmas benignos de melanocitos [6705 imágenes]

mel: Melanoma — el tipo más grave de cáncer de piel, neoplasma maligno derivado de melanocitos [1113 imágenes]

bkl: Benign keratosis — una clase genérica que incluye queratosis como queratosis seborreica, lentigos solares y líquen plano [1099 imágenes]

bcc: Basal cell carcinoma — una variante común de cáncer de piel que rara vez metastatiza pero que crece destructivamente si no es tratado (no produce lesiones pigmentadas necesariamente) [514 imágenes]

akiec: Actinic Keratoses and intraepithelial Carcinoma — variante común, no invasiva, del carcinoma de células escamosas, que puede ser tratado de manera local sin operación [327 imágenes]

vasc: Vascular skin lesions — lesiones que abarcan desde hemangiomas cereza hasta angioqueratomas y granulomas piógenos [142 imágenes]

df: Dermatofibroma — lesión cutánea benigna considerada como una proliferación benigna o una reacción inflamatoria a un trauma mínimo [115 imágenes]

Metodología

A continuación profundizaremos en lo que respecta a los aspectos técnicos del modelo, explicando los recursos que se han utilizado para llevarlo a cabo y el proceso que se ha seguido.

Para la detección y clasificación de las manchas cutáneas se ha optado por usar algoritmos de deep learning, en concreto las redes neuronales convolucionales (CNN, de su acrónimo en inglés Convolutional Neural Network), ya que son una clase de redes neuronales artificiales muy apropiadas para el análisis de imágenes.

Su funcionamiento se basa en el comportamiento del córtex visual primario del cerebro, que consta de células simples, las cuales están fuertemente ligadas a la detección de orientaciones, y células complejas, cuya función es obtener características más detalladas a partir de la información obtenida en las células simples. La primera asociación del comportamiento del cerebro a las redes neuronales artificiales se produjo en el modelo conocido como Neocognitron, desarrollado por Kunihiko Fukushima en 1980.

Las CNN consisten en varias capas de neuronas que toman los valores de rojo, verde y azul (RGB) de 0 a 255 y los someten a operaciones matemáticas (convolución), de forma que en la primera capa se obtienen direcciones o gradientes simples, en la segunda capa se realizan más operaciones y se obtienen ángulos, curvas, círculos, etc. La tercera capa puede determinar combinaciones de las dos capas anteriores, bordes, patrones geométricos… combinando las salidas de la capa 2. De este modo, cada capa proporciona más información al modelo tomando como entrada la salida de la capa anterior.

El problema de este tipo de redes neuronales es su entrenamiento, debido a que entrenar un modelo con muchas capas y más de un millón de imágenes lleva su tiempo, del orden de semanas, para poder extraer un gran número de características. Por ello, el método de Transfer Learning, o transferencia del conocimiento, juega un papel crucial a la hora de entrenar el modelo en un tiempo reducido (una centésima parte del tiempo original) y cuando no tenemos suficientes datos. Está técnica consiste en usar modelos ya entrenados, de modo que son capaces de obtener características que después serán utilizadas en nuestros datos y poder reconocer imágenes totalmente distintas a las imágenes con las que se entrenó el modelo original, del que estamos obteniendo el conocimiento.

Otro reto a tener en cuenta es que el Data Set, o conjunto de datos, del que partimos está limitado a un total de 10.000 imágenes de manchas de piel y además no está balanceado, esto es, existe una diferencia sustancial entre el número de imágenes de los diferentes tipos de manchas. Estos problemas se pueden solucionar mediante Data Augmentation, o aumento de datos, que permite incrementar el número de imágenes aplicando transformaciones como ampliación de la imagen, rotación, volteo vertical u horizontal, etc. De esta forma, de una misma imagen se pueden obtener varias, que a ojos de nuestro modelo tendrán distintas características aunque partan de una misma imagen, y por tanto sean de la misma clase.

Después de estas consideraciones sólo queda elegir un modelo pre-entrenado y evaluar las métricas que se sacan de cada una de las epochs, o fases de entrenamiento. Para nosotros la principal métrica es Fbeta score ya que pondera la precisión y la exhaustividad:

Conclusiones

El objetivo de este proyecto ha sido el de aportar una herramienta clínica de apoyo en la detección temprana del cáncer de piel. Hemos entrenado el modelo con 10.000 imágenes y se ha construido con redes convolucionales (CNN). Los resultados obtenidos a partir del test llegan al 77% de precisión, por lo que es necesaria una mayor precisión para un diagnóstico fiable.

Para mejorar este proyecto, es necesario seguir trabajando en la estructura del modelo, así como entrenarlo con un dataset más grande, incrementando el número de imágenes disponibles.

Por parte de todos los miembros de este proyecto, queremos agradecer a AI Saturdays Madrid por hacer esto posible, y por darle a la tecnología y el progreso la atención que requieren.

Integrantes de este proyecto: Alberto Cuesta Parejo, Claudia Pérez Casas, Javier Cruz del Valle, Mercedes Riveira Martín

Puedes acceder al modelo en Github

[1] León, M. V., Villaverde, R. M., González, J. L., & Soto, M. Á. M. (2013). Melanoma. Medicine-Programa de Formación Médica Continuada Acreditado, 11(26), 1597–1607.

--

--

AI Melanoma Identifier: AIMI

We are a group of people working on better identifying melanomes