WomanLife: Deep Learning para la detección y clasificación del cáncer de mama

La Paz. Aprendizaje profundo. 2021 Hoy en día, gracias a los algoritmos de aprendizaje profundo de la inteligencia artificial, tenemos la posibilidad de automatizar la clasificación de imágenes, por lo que esta herramienta puede ayudar al personal médico en la clasificación…

Proyecto de aprendizaje compartido por la comunidad. El artículo documenta el equipo, el método y los resultados; no acredita que el prototipo esté listo para su uso fuera del entorno de aprendizaje.

WomanLife: Deep Learning para la detección y clasificación del cáncer de mama

Este archivo incluye traducciones automáticas. El audio, el vídeo y el texto de las imágenes conservan su idioma original.

Nota editorial: este artículo documenta un proyecto educativo y sus resultados en los datos utilizados. No acredita validación clínica ni autorización para diagnosticar o tratar a pacientes. Las propuestas de aplicación sanitaria se conservan como objetivos del equipo, no como capacidades demostradas.

La Paz. Deep Learning. 2021

Hoy en día, gracias a los algoritmos de aprendizaje profundo de la inteligencia artificial, tenemos la posibilidad de automatizar la clasificación de imágenes, por lo que esta herramienta puede ayudar al personal médico en la clasificación y detección temprana del cáncer de mama. De esta forma, las mujeres que padecen esta enfermedad podrían ser diagnosticadas de forma automática, a tiempo para iniciar el tratamiento.

El cáncer de mama es el tipo de cáncer más común en las mujeres y también es una de las principales causas de muerte según la OMS (OMS, 2020). La detección temprana es el factor más importante para reducir los costos del tratamiento del cáncer y la mortalidad. Para que esto sea posible es necesario contar con imágenes ecográficas médicas y especialistas que puedan explicarlas. Sin embargo, la falta de estos crea una brecha en el acceso al tratamiento temprano en países con poco o insuficiente acceso a servicios de diagnóstico especializados y cuya población recibe ingresos bajos y medios.

Descripción del problema

Nuestro proyecto consiste en la detección y clasificación del cáncer de mama en mujeres entre 25 y 75 años. Esto es posible a partir del desarrollo de un modelo de aprendizaje profundo entrenado con imágenes obtenidas mediante ecógrafos que dan como resultado la segmentación del tipo de cáncer que se podría padecer.

Objetivo

Permitir que las mujeres que padecen cáncer de mama sean diagnosticadas automáticamente mediante un modelo de aprendizaje profundo para que puedan iniciar el tratamiento de forma temprana y segura, reduciendo costes y la tasa de mortalidad. Para cumplir con este objetivo hemos propuesto una herramienta que utiliza inteligencia artificial para dotar de mayor agilidad al proceso mediante el autodiagnóstico con imágenes ecográficas.

Selección de modelo

El proyecto de detección y clasificación del cáncer de mama trabaja con imágenes ecográficas de tres tipos, etiquetadas como benigno, maligno y neutral, por lo que el modelo de aprendizaje profundo seleccionado para su ejecución son redes convolucionales con TensorFlow Keras.

Datasets

El conjunto de datos se recopiló en el Hospital Baheya para la Detección Temprana y el Tratamiento del Cáncer de Mujeres, en El Cairo, Egipto. contiene 780 imágenes de ecografía mamaria, en mujeres de entre 25 y 75 años (133 normales, 437 benignas y 210 malignas) con un tamaño de imagen promedio de 500 x 500 píxeles, algunas de las cuales se ven a continuación,

Fig. 1. Muestras de imágenes.

Las imágenes del conjunto de datos original contienen imágenes de máscara que no brindan información significativa al modelo que desarrollamos, por esta razón se utilizaron declaraciones de Shell para eliminarlas del conjunto de datos que estamos usando.

Técnicas implementadas

Hay que destacar que hasta el momento existe escasez de conjuntos de datos públicos de imágenes ecográficas de cáncer de mama y esto impide el buen funcionamiento de los algoritmos. Debido a esto, los autores que hicieron público el conjunto de datos que utilizamos recomiendan aumentar los datos utilizando GAN.

Nuestro proyecto desarrolló redes GAN para cada clase con el fin de obtener resultados más precisos y 150 épocas fueron utilizados.

Sin embargo, no logró crear imágenes utilizables, por esta razón rechazamos el uso de esta técnica. El desafío es desarrollar la GAN con mayor número de épocas y con una mejor configuración de red neuronal para obtener imágenes más realistas.

Figura 2. MALIGNO

Fuente: Compilado por autores usando Matplotlib

Figura 3. BENIGNO

Fuente: Compilado por autores usando Matplotlib

Fig.4. NORMALES

Fuente: Compilado por autores usando Matplotlib

Definición de red

Dentro de los posibles patrones de diseño en Keras, se han implementado subclases para utilizar las API de bajo nivel de Keras. Puedes consultar más información al respecto en el siguiente artículo:

https://towardsdatascience.com/3-keras-design-patterns-every-ml-engineer-should-know-cae87618c7e3

La estructura de la red consta de:

  • Capa de preprocesamiento: Cambio de tamaño, cambio de escala y normalización
  • Conv2D: 32 filtros, 4 zancadas, "mismo" relleno y activación ReLU
  • MaxPooling2D: pool_size de (3,3), 'mismo' relleno y 2 zancadas
  • Aplanar
  • Denso: 512 neuronas y activación ReLU
  • Abandono (0.4)
  • Denso: 3 neuronas y activación SoftMax

Nos basamos en AlexNet arquitectura, en la que hicimos algunos ajustes como número de neuronas, capas completamente conectadas y valores de abandono.

Usamos optimizador de adán con una tasa de aprendizaje de 0.0001, el Entropía cruzada categórica escasa función de pérdida y Precisión categórica escasa función.

Fig. 5. Resumen del modelo. Fuente: Compilado por los autores.

Entrenamiento

TensorBoard se utilizó para observar el comportamiento en tiempo real de los valores de precisión y pérdida, lo que proporciona gráficos útiles para analizar los resultados y muchos controles para su manipulación.

Fig. 6. Tablero TensorBoard - Fuente: Compilado por los autores

Parada anticipada

Usamos EarlyStopping como forma de regularización para evitar el sobreajuste al entrenar el modelo. Por ejemplo, si el valor de pérdida deja de disminuir, el entrenamiento se detendrá aunque no se hayan completado todas las iteraciones.

Conclusiones y trabajos futuros.

WomanLife pretende ser una herramienta de diagnóstico médico de fácil acceso y bajo costo.

Esta IA no sólo es beneficiosa para las mujeres que la utilizan, sino que también tiene el potencial de convertirse en asistente médico. Queremos aclarar que WomanLife no pretende sustituir a los médicos especialistas sino proporcionar una herramienta que facilite su trabajo.

A partir de ahora pretendemos optimizar el modelo utilizando una red GAN para obtener mayor precisión y utilizar técnicas que encuentren los parámetros correctos para entrenar el modelo. (Ajuste de hiperparámetros).

Nuestro proyecto también desarrolló una aplicación que, dada una imagen escaneada con la cámara o seleccionada de la galería, recorre la red desarrollada y devuelve una serie de probabilidades relacionadas con el tipo de cáncer sufrido.

El modelo fue desarrollado en TensorFlow puro, convertido, guardado y exportado a TensorFlow Lite.

Fig. 7. Muestra del funcionamiento del prototipo de aplicación — Fuente: Elaboración propia

Fig. 8. Conversión de la arquitectura TensorFlow a TensorFlow Lite — Fuente: Elaboración propia

Fuentes

Puede acceder a la aplicación portátil y móvil a través de mis repositorios de GitHub a continuación:

https://github.com/edcalderin/BreastCancerDetection\_CNN

https://github.com/edcalderin/BreastCancerDetection\_app

Aquí podrá encontrar más proyectos relacionados con la ciencia de datos y el aprendizaje automático. En resumen, contiene todo mi trabajo hasta el momento. Cualquier respuesta o comentario siempre será bienvenido.

Sobre los autores

Erick Calderín Morales

Ingeniero de sistemas con experiencia en desarrollo de software, estudiante de maestría en ingeniería de sistemas y maestría en ciencia de datos con afinidad por la inteligencia artificial.

Linkedin: https://www.linkedin.com/in/erick-calderin-5bb6963b/

Sharon Maygua Mendiola

Estudiante de ingeniería mecatrónica con licenciatura en física.

Linkedin: https://www.linkedin.com/in/sharon-sarai-maygua-mendiola-22288019a/

Referencias

Saturdays.AI

Presentación del proyecto: DemoDay

Abrir vídeo o recurso

Repositorio

En el siguiente repositorio se encuentra el código usuado para desarrollar esta aplicación:

https://github.com/SaturdaysAI/Projects/tree/master/Lapaz/2021.DL/BreastCancerDetection_CNN-master/BreastCancerDetection_CNN-master

WRITTEN BY

Erick Calderín

Ingeniero de Sistemas apasionado por el Deep Learning y la Inteligencia Artificial

Saturdays.AI

¡Más inteligencia artificial!

Saturdays.AI es una organización centrada en el impacto con la misión de capacitar a diversas personas para que aprendan Inteligencia Artificial de una manera colaborativa y basada en proyectos, más allá del camino convencional de programas intensivos donde se realizan proyectos para el bien (#ai4good).

Infórmate de nuestro master sobre inteligencia artificial en https://saturdays.ai/master-ia-online/

Si quieres aprender más inteligencia artificial únete a nuestra comunidad en community.saturdays.ai o visítanos en nuestra web www.saturdays.ai ¡te esperamos!

CONVERTIR LA CURIOSIDAD EN PRÁCTICA

Haga de este su punto de partida.

Pruebe una idea usted mismo o busque personas con quienes seguir aprendiendo.

Sigue nuevas historias en tu lector de RSS ↗

Una historia de la comunidad Saturdays.AI. Publicado originalmente el 31 de diciembre de 2021.

← Más historias de la comunidad