Minera de datos aplicada a la detección de Cáncer de Mama
Transcription
Minera de datos aplicada a la detección de Cáncer de Mama
Minera de datos aplicada a la detección de Cáncer de Mama Eugenio Hernández Martínez Rodrigo Lorente Sanjurjo Universidad Carlos III de Madrid Universidad Carlos III de Madrid [email protected] [email protected] ABSTRACT El Modelo de Simulación Epidemiológica de Cáncer de Mama Wisconsin [1] es un modelo de simulación estocástico que usa un sistema científico de modelado para estudiar el nivel de incidencia y mortalidad del cáncer de mama de la población en Estados Unidos entre 1975 y 2000. Se modelan simultáneamente cuatro procesos interactivos: - Historia natural del cáncer de mama Detección de cáncer de mama Tratamiento de cáncer de mama Mortalidad del cáncer de mama Estos componentes forman un complejo sistema interactivo que simula las vidas de 2.950.000 mujeres (aproximadamente el 1/50 de la población estadounidense) desde 1950 hasta 2000 en ciclos de 6 meses. Después de un periodo de aprendizaje de 25 años, las salidas del modelo permiten obtener las tasas de incidencia y mortalidad en función de la edad entre 1975 y 2000. El modelo también simula casos de enfermedad, tanto detectada como oculta, a nivel individual, y puede utilizarse también para responder a preguntas sobre la selección y efectividad de tratamientos, además de para estimar beneficios para mujeres de edades e historiales específicos. El cáncer de mama afecta aproximadamente a un 15% de las mujeres en edad de riesgo de todo el mundo [2]. Una detección temprana de la presencia de células cancerosas malignas aumenta la posibilidad de vida de las pacientes, sobre todo cuando se localiza un tumor pequeño y aún no ramificado. El objetivo de este artículo es realizar el análisis de los datos correspondientes a un conjunto de mujeres para poder obtener ciertos patrones a la hora de poder aplicarlos para detectar posibles casos de cáncer de mama mediante minería de datos, de manera similar a otros estudios basados en algoritmos genéticos [3]. 1.1 Minería de datos La minería de datos (DM, Data Mining) consiste en la extracción no trivial de información que reside de manera implícita en los datos. Dicha información era previamente desconocida y podrá resultar útil para algún proceso. En otras palabras, la minería de datos prepara, sondea y explora los datos para sacar la información oculta en ellos [4]. KEYWORDS Detección de cáncer de mama, supervivencia al cáncer de mama, minería de datos, Weka, aprendizaje. 1. INTRODUCCION En la última década, la Minería de Datos y el Análisis Estadístico han sido ampliamente utilizados en la industria del cuidado de la salud. Cuando estos métodos son utilizados junto a información extraída de grandes cantidades de datos, pueden ayudar a los médicos para tomar decisiones y mejorar el servicio. Figura 1. Ciclo de Vida de Proyectos de Minería de Datos 2.1 Atributos 1.2 Weka 1. Weka es un conjunto de librerías Java para la extracción de conocimientos desde bases de datos. Es un software ha sido desarrollado en la universidad de Waikato (Nueva Zelanda) bajo licencia GPL lo cual ha impulsado que sea una de las suites más utilizadas en el área en los últimos años. El banco de trabajo de Weka contiene una colección de herramientas de visualización y algoritmos para el análisis de datos y modelos de predicción, junto a interfaces gráficas para facilitar dichas funcionalidades. La versión original no implementaba Java y utilizaba la línea de comandos para implementar algoritmos (utilidades de procesado de datos en C y un sistema basado en Makefile para ejecutar los experimentos de aprendizaje) para analizar datos agrícolas. Sin embargo, la versión basada en Java (Weka 3), que comenzó a desarrollarse en 1997, es usada actualmente en numerosas áreas, en particular para propósitos educativos y de investigación. Weka soporta numeroso estándares para realizar minería de datos, concretamente preprocesado de datos, clustering, clasificación, regresión, visualización, y selección de características [5]. Sample code number: código identificativo de cada paciente. Entero. 2. Clump Thickness: espesor. Entero [0,10]. 3. Uniformity of Cell Size: uniformidad del tamaño de la célula. Entero [0,10]. 4. Uniformity of Cell Shape: uniformidad de la forma de la célula. Entero [0,10]. 5. Marginal Ashesion: adhesión marginal. Entero [0,10]. 6. Single Epithelial Cell Size: tamaño individual de la célula. Entero [0,10]. 7. Bar Nuclei: núcleo. Entero [0,10]. 8. Bland Chromatin: cromatina blanda. Entero [0,10]. 9. Normal Nucleoli: nucleoli normal. Entero [0,10]. 10. Mitoses: mitosis. Entero [0,10]. 11. Class: clase. {benigno, maligno}. La distribución de clase es: benigno 458 (65.5%) y maligno 241 (34.5%). 2.1.1 Clump Thickness Como podemos observar el espesor de la mama es un factor de peso a la hora de determinar el tipo de tumor, cuanto menor sea el espesor más probabilidad de que se trate de un cáncer benigno. Esta herramienta dispone de varios tipos de clasificadores, cuyo funcionamiento dependerá del número de ejemplos para entrenar, siendo tanto más fiables los modelos cuanto mayor número de ejemplos dispongamos. En esta práctica intentaremos determinar que clasificadores son mejores ante casos números de ejemplos de entrenamiento reducidos. 2. TRABAJO CON LOS DATOS La base de casos Wisconsin Breast Cancer Database consta de 699 casos, cada uno con 9 atributos correspondientes a observaciones subjetivas de los tumores, más dos atributos correspondientes a la identificación del caso y a la clasificación del tumor (benigno o maligno). Las observaciones subjetivas se basan en descripciones de las células obtenidas de una imagen. Esta aproximación sigue un proceso de siete pasos para extraer información útil de los datos: 1. 2. 3. 4. 5. 6. 7. Identificar los objetivos Obtener un conjunto de datos a analizar Preprocesado de datos Transformación de datos Minería de Datos y Análisis Estadístico Interpretación y evaluación Escribir el informe Figura 2. Espesor 2.1.2 Uniformity of Cell Size Los casos benignos se concentran en el índice de uniformidad 1 Figura 5. Mitosis Figura 3. Uniformidad del tamaño de la célula 2.1.3 Single Epithelial Cell Size 3. EVALUACIÓN DE LOS DATOS En este caso podemos ver que la mayoría de los tamaños de célula se concentran en valores pequeños, estando relacionado el menor tamaño con si el tumor es benigno. Este sería ya el cuarto de los pasos a dar a la hora de llevar a cabo un estudio sobre la minería de datos. Por ello se van a ir sacando y extrayendo los resultados buscados para este estudio en cada momento en función de los parámetros. Para este propósito utilizaremos las distintas herramientas de clasificación que nos ofrece Weka. 3.1 K-NN En el método K-NN [6] (K nearest neighbors Fix y Hodges, 1951) es un método de clasificación supervisada. Este es un método de clasificación no paramétrico, que estima el valor de la función de densidad de probabilidad o directamente la probabilidad a posteriori de que un elemento x pertenezca a una determinada clase Cj a partir de la información proporcionada por el conjunto de muestras. Generalmente para saber en qué clase nos encontramos utilizaremos la distancia euclídea1. El valor de k óptimo que deberemos fijar dependerá de nuestros datos, ya que un valor muy pequeño nos haría el sistema muy sensible al ruido y un valor demasiado alto nos llevaría a una mala clasificación. Figura 4. Tamaño individual de la célula 2.1.4 Otras consideraciones El resto de los atributos presentan histogramas similares (a menor valor más cantidad de benignos), aunque cabría destacar el de Mitoses ya que aparentemente se trata de un atributo que no proporciona información debido a que la inmensa mayoría de casos (tanto benignos como malignos) se concentran en el nivel más bajo. Figura 7. Error K-NN. Figura 6. Clasificación KNN En el ejemplo anterior, se ve como se quiere clasificar una nueva muestra (en verde) con un k-NN. Se observa que se elige un k = 3, la muestra nueva se clasificará en la clase roja, en cambio si elegimos un k = 5 la muestra será clasificada en la clase azul. En nuestro caso, procederemos a utilizar la función IB-k disponible en Weka, con una k comprendida en el intervalo [1,10], activando la casilla cross-validation con 10 folds, obteniendo los siguientes resultados. Como podemos ver en la gráfica anterior, el error fluctúa según la k elegida, en nuestro caso en concreto se obtiene que la k óptima se produce para k = 3 produciendo un error del 3.14 % 3.2 MLP El perceptrón multicapa [7] es una red neuronal artificial (RNA) formada por múltiples capas, esto le permite resolver problemas que no son linealmente separables, lo cual es la principal limitación del perceptrón. El perceptrón multicapa puede ser totalmente o localmente conectado. En el primer caso cada salida de una neurona de la capa "i" es entrada de todas las neuronas de la capa "i+1", mientras que el segundo, cada neurona de la capa "i" es entrada de una serie de neuronas (región) de la capa "i+1". Tabla 1. Error KNN Las capas pueden clasificarse en tres tipos: k error 1 4,8641 2 5,4363 3 3,1474 4 3,2904 5 3,2904 6 3,7196 7 3,4335 8 3,8627 9 3,7196 1. 2. 3. Capa de entrada: Constituida por aquellas neuronas que introducen los patrones de entrada en la red. En estas neuronas no se produce procesamiento. Capas ocultas: Formada por aquellas neuronas cuyas entradas provienen de capas anteriores y las salidas pasan a neuronas de capas posteriores. Capa de salida: Neuronas cuyos valores de salida se corresponden con las salidas de toda la red. 10 3,5765 1 La fórmula de la distancia euclídea es la siguiente: Figura 8. Detalle de una neurona Como podemos ver en la figura 8, a la salida tendremos 2 puede ser una función del tipo sigmoide que será la Donde función de activación. Las capas de las redes neuronales usadas en esta aplicación son de dos tipos “a”, “t” e “i”, donde 'a' = (attribs + classes) / 2, 'i' = attribs, 'o' = classes, 't' = attribs + classes. Se pueden ver a continuación en las figuras 9, 10 y 11. Los resultados obtenidos para cada distinta implementación son los siguientes. 3.2.1 MLP Clase a Tabla 2. Resultados MLP Clase A Benigno 440 15 Maligno 18 226 <-Clasificado como Benigno Maligno Donde obtenemos un error de 4.721 %. 3.2.2 MLP Clase i Tabla 3. Resultados MLP Clase i Benigno 444 14 Maligno 14 227 <-Clasificado como Benigno Maligno Figura 9. MLP clase a Donde obtenemos un error de 4 %. 3.2.3 MLP Clase t Tabla 4. Resultados MLP Clase t Benigno 443 19 Maligno 15 223 <-Clasificado como Benigno Maligno Donde obtenemos un error de 4.86 %. Figura 10. MLP clase i Como podemos observar, los tres valores son bastante parecidos, la tasa de fallos está en torno al 4-5%, siendo mejor el perceptrón de la clase I. Se podría aumentar aún más el número de capas ocultas del MLP para así poder tener un modelo mucho más fiable y aproximado al real, aunque esto nos llevaría a un aumento del tiempo de cómputo y de complejidad. 2 Figura 11. MLP clase t Sigmoide 3.3 Naïve Bayes Naïve Bayes (NB) (John y Langley, 1995) [8] [9] es un clasificador probabilístico que parte de la premisa de que cada par parámetro-valor de un mismo ejemplo es independiente del resto. A cada par parámetro-valor se le asigna una probabilidad de pertenencia a una clase. Para ello se divide el número de ejemplos de cada clase en los que aparece ese par entre el número de ejemplos que pertenecen a esa clase. Para clasificar un caso nuevo se calcula la probabilidad de pertenencia de ese caso a cada clase, clasificándolo en la clase donde dicha probabilidad sea mayor, adoptando pues un criterio de estimación máxima a posteriori. Esta probabilidad de pertenencia se calcula como el producto de la probabilidad de pertenencia a cada clase de cada uno de los pares parámetro-valor que definen el caso que se desea clasificar. Y se clasificaría según el mayor valor anterior. Llevándolo a Weka y utilizando la función SimpleNaiveBayes, obtenemos Correctly Classified Instances Incorrectly Classified Instances 671 95.9943 % 28 4.0057 % Tabla 5. Resultados Naïve Bayes Benigno 436 6 Maligno 22 236 <-Clasificado como Benigno Maligno Por lo tanto, si tenemos la siguiente distribución Como podemos ver el error de clasificación para este método es similar al obtenido para el perceptrón de clase I, aunque si podemos ver que la tasa de fallos se distribuye de otra manera, siendo ahora la tasa de falsas alarmas mucho mayor que la tasa de pérdidas solo siendo clasificados 6 casos erróneamente. 3.4 SMO Figura 12 A partir de la figura 12, calculamos las probabilidades de estar en verde ( ) y en rojo ( ). SMO implementa el algoritmo de optimización mínima secuencial para entrenar una máquina de soporte vectorial (SVM) (Vapnik, 1995). Estos algoritmos extienden las características de los modelos lineales, ya que permiten distinguir entre clases que presentan límites de decisión no lineales. Para ello se transforman los datos originales transformándolos de forma no lineal en un nuevo espacio de mayor dimensión. En este nuevo espacio se construye un modelo lineal que pueda representar un límite de decisión no lineal en el espacio original. Puede hallarse una introducción más detallada a SVM en Burges (1998). Correctly Classified Instances Incorrectly Classified Instances 678 21 96.9957 % 3.0043 % Tabla 6. Resultados SMO Figura 13 Cuando un nuevo objeto se introduce, se mira la verosimilitud con los objetos contiguos como. Ahora para finalizar la clasificación, aplicamos la regla de Bayes: Benigno 446 9 Maligno 12 232 <-Clasificado como Benigno Maligno Como podemos ver en los resultados obtenidos mediante SMO, la tasa de fallos se reduce hasta un 3%, incluso por debajo del 3-NN. En cambio, al tener una menor tasa de error, obtenemos una probabilidad de pérdidas superior al caso anterior lo cual no es ventajoso. También cabe destacar que disminuye la probabilidad de falsa alarma, hasta el punto de solo haber 12 casos que la contemplan. 3.5 RFB Tabla 7. Resultados RFB RFB [10] [11] es un método alternativo al perceptrón multicapa (MLP) (ej.: backpropagation) para hacer ajuste a funciones no lineales. A diferencia de la disposición que se tiene en la funciones de activación que permite construir modelos de entrenamiento mediante backpropagation, estas nuevas redes basadas en RBF construyen sus modelos con funciones de activación que son diferentes tanto en la capa oculta como la de salida. Esto es, una red RBF está diseñada con neuronas en la capa oculta activadas mediante funciones radiales de carácter no lineal con sus centros gravitacionales propios y en la capa de salida mediante funciones lineales. A diferencia de las MLP, el modelo clásico de las redes RBF está construido con una arquitectura rígida de tres capas: la de entrada, la oculta y la de salida. En general, una red RBF tiene un mejor desempeño con un mayor volumen de datos de entrenamiento. La construcción de una red RBF requiere de una mayor cantidad de neuronas en los nodos ocultos que en las redes que usan backpropagation. Aunque las redes RBF no son comúnmente utilizadas en aplicaciones que impliquen un alto volumen de patrones de entrenamiento, se le reconoce como una red con una alta eficiencia en la fase de entrenamiento. En Weka utiliza un algoritmo de clustering del tipo k-means y aprende por regresión logística o por regresión lineal. Utilizará el número de clusters de las clases que se quieran clasificar, y estandarizará los datos a media cero y varianza unidad. Efectuando de la misma manera que en el K-NN, obtenemos los las siguientes tasas de fallos en función del número de clusters. Benigno 437 8 Maligno 21 233 <-Clasificado como Benigno Maligno Como podemos ver, la red RFB nos proporciona un buen resultado a la hora de detectar los casos positivos, donde se observa que la probabilidad de pérdidas es pequeña, aunque la probabilidad de falsa alarma si es elevada en comparación a los demás algoritmos analizados. 3.6 J48 J48 [12] Implementa la versión pública del algoritmo de clasificación basada en árboles de decisión C4.5 revisión 8, previa a la comercialización de la versión C5.0 (Quinlan, 1993, citado por Witten y Frank, 2005, p. 198). Estos árboles clasifican un nuevo caso mediante la evaluación, en cada nodo del modelo, de los parámetros que definen el caso que se pretende clasificar. Los casos que, partiendo de la raíz, llegan a una determinada hoja reciben la clasificación que la hoja indica. La importancia de los árboles de decisión se debe a su capacidad de construir modelos interpretables, siendo este un factor decisivo para su aplicación. La clasificación en árboles de decisión considera clases disjuntas, de forma que el árbol conducirá a una y solo una hoja, asignando una única clase a la predicción. Este algoritmo es una mejora del algoritmo ID3. El algoritmo J48 se basa en la utilización del criterio ratio de ganancia (gain ratio). De esta manera se consigue evitar que las variables con mayor número de posibles valores salgan beneficiadas en la selección. Además el algoritmo incorpora una poda del árbol de clasificación una vez que éste ha sido inducido. Ejecutando el algoritmo en Weka, obtenemos Correctly Classified Instances Incorrectly Classified Instances 661 94.5637 % 38 5.4363 % Tabla 7. Resultados j48 Benigno 438 18 Donde podemos ver que el error aumenta si aumentamos el número de clusters. Para el error mínimo tenemos el siguiente resultado: 670 29 <-Clasificado como Benigno Maligno Como podemos ver, con este método la tasa de errores sube hasta un 5%. Figura 14. Error RFB. Correctly Classified Instances Incorrectly Classified Instances Maligno 20 123 95.8512 % 4.1488 % Obteniendo el árbol de decisión de la figura 15. - El caso de mínimo error del RFB es similar al del Naïve Bayes, con una cantidad de falsas alarmas mucho mayor que de pérdidas, lo que resulta un problema. Para valores mayores del número de clusters la tasa de error aumenta. - Al igual que el SMO, el clasificador J48 presenta un equilibrio entre las falsas alarmas y las pérdidas, no obstante el error es significativamente mayor, siendo el que peores propiedades en este aspecto presenta. Teniendo en cuenta lo anteriormente descrito, nos decantaríamos por la utilización del clasificador SMO, debido a su baja tasa de error y al equilibrio entre falsas alarmas y pérdidas. 5. REFERENCIAS [1] Breast Cancer Wisconsin Diagnostic Data Set. http://archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wiscon sin+(Diagnostic) [2] W. H. Wolberg “Benign breast disease and breast cancer tutorial”. Versión Online: 4. CONCLUSIONES A la vista de los resultados obtenidos llegamos a la conclusión de que si bien todos los atributos pueden afectar en mayor o menor medida a la clasificación de un tumor como benigno o maligno, y que en general se cumple que a menor valor del atributo mayor probabilidad de que se trate de clase benigna, en el caso concreto del atributo Mitosis, como ya se comentó en su momento, se puede pensar en que su eliminación del estudio no afectará mucho a los resultados, ya que la gran mayoría de los casos, tanto de una clase como de otra se sitúan en el nivel más bajo. Analizando los resultados de los diferentes clasificadores vemos ligeras diferencias de unos a otros, aunque las tasas de error de todos se concentran en torno al 3-5%, en un análisis más pormenorizado: - - - - El K-NN presenta la ventaja de poder elegir el valor de K para nuestros requerimientos, no obstante tenemos el problema de encontrar el valor óptimo y la necesidad de ir variándolo. El clasificador del perceptrón multicapa permite seleccionar entre varias opciones, aunque los resultados entre ellos son similares y presentan peores características que por ejemplo el K-NN. https://mywebspace.wisc.edu/wwolberg/breast/breast.html [3] Clasificación de células cancerosas usando algoritmos genéticos http://cencomed.sld.cu/socbio2007/trabajos/pdf/t033.pdf [4] Minería de datos http://es.wikipedia.org/wiki/Data_mining [5] Weka http://en.wikipedia.org/wiki/Weka_(machine_learning) [6] Algoritmo K-NN http://es.wikipedia.org/wiki/Knn [7] Clasificador perceptrón multicapa http://europa.eu.int/en/comm/eurostat/research/supcom.95/16 /result/node7.html [8] Clasificación Naïve Bayes http://en.wikipedia.org/wiki/Naive_Bayesian_classificatio n [9] Clasificador Naïve Bayes http://www.statsoft.com/textbook/stnaiveb.html [10] Introduction of the Radial Basis Function (RBF) Networks Con el Naïve Bayes obtenemos una probabilidad de error mayor que para la mayoría de los K-NN, aunque la distribución de errores se decanta en clasificar tumores malignos como benignos, lo que podría considerarse más grave que el caso contrario. [11] CAPITULO 4 FUNCION DE BASE RADIAL (RBF) El clasificador SMO presenta la mejor tasa de error, estando los errores bastante equilibrados entre falsas alarmas y pérdidas. [12] Miguel Ángel Fuente Rodríguez. Pablo Galarza Heredero http://axiom.anu.edu.au/~daa/courses/GSAC6017/rbf.pdf http://www.webdelprofesor.ula.ve/economia/gcolmen/pro grama/redes_neuronales/capitulo4_funciones_bases_radi ales.pdf http://www.it.uc3m.es/jvillena/irc/practicas/05-6/13mem.pdf