UNIVERSIDAD CENTRAL DEL ECUADOR … · entre un diagnóstico realizado en base a análisis...
Transcript of UNIVERSIDAD CENTRAL DEL ECUADOR … · entre un diagnóstico realizado en base a análisis...
UNIVERSIDAD CENTRAL DEL ECUADOR
FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA
CARRERA DE INGENIERÍA INFORMÁTICA
“SISTEMA INTELIGENTE PARA EL DIAGNÓSTICO DE ENFERMEDADES.”
TRABAJO DE GRADUACIÓN PREVIO A LA OBTENCIÓN DEL TITULO DE
INGENIERO INFORMÁTICO.
AUTOR: TATIANA ELIZABETH MONTESDEOCA TORRES
TUTOR: MAT. LUIS CORNELIO CASTILLO CABAY
QUITO 16 DE SEPTIEMBRE
2016
ii
Dedicatoria:
El presente proyecto de investigación dedico
especialmente a mis padres Lola Judith Torres
Gómez y José Marcelo Montesdeoca Arroyo,
quienes han sido partícipes y han vivido
conmigo cada esfuerzo y sacrificio realizado
durante mi vida estudiantil.
A mi novio Héctor Veitia Vila quien me ha
brindado su apoyo incondicional en cada etapa
de este proyecto.
A mi abuelita, hermanas, sobrinos y cuñado por
la confianza que han depositado en mí.
iii
AGRADECIMIENTOS
Agradezco a la Universidad Central del Ecuador que a través de su
cuerpo docente me ha dado las herramientas necesarias para
culminar mi carrera profesional y continuar mi vida profesional.
Agradezco a la Universidad de Bilkent, Departamento de Ingeniería
Informática y ciencias de la Información de Turquía por su aporte
con la base de datos para el estudio realizado.
Agradezco la tutoría y acompañamiento del Matemático Luis
Cornelio Castillo Cabay por apoyarme con su conocimiento y
experiencia en el desarrollo de este proyecto.
iv
AUTORIZACIÓN DE LA AUTORÍA INTELECTUAL
Yo, Tatiana Elizabeth Montesdeoca Torres en calidad de autor del trabajo de investigación:
SISTEMA INTELIGENTE PARA EL DIAGNÓSTICO DE ENFERMEDADES, autorizo a
la Universidad Central del Ecuador hacer uso de todos los contenidos que me pertenecen o
parte de los que contiene esta obra, con fines estrictamente académicos o de investigación.
Los derechos que como autor me corresponden, con excepción de la presente autorización,
seguirán vigentes a mi favor, de conformidad con lo establecido en los artículos 5, 6, 8; 19
y demás pertinentes de la Ley de Propiedad Intelectual y su Reglamento.
Asimismo, autorizo a la Universidad Central del Ecuador para que realice la digitalización
y publicación de este trabajo de investigación en el repositorio virtual, de conformidad a lo
dispuesto en el Art. 144 de la Ley Orgánica de Educación Superior.
En la Ciudad de Quito, a los 16 días del mes de Septiembre de 2016.
Tatiana Elizabeth Montesdeoca Torres
CC.: 1718838509
E – mail: [email protected]
Telf.: 0984687801
v
CERTIFICACIÓN DEL TUTOR
Yo, Luis Cornelio Castillo Cabay en calidad de tutor del trabajo de titulación SISTEMA
INTELIGENTE PARA EL DIAGNÓSTICO DE ENFERMEDADES, elaborado por la
estudiante Tatiana Elizabeth Montesdeoca Torres de la Carrera de Ingeniería Informática,
Facultad de Ingeniería, Ciencias Físicas y Matemática de la Universidad Central del
Ecuador, considero que el mismo reúne los requisitos y méritos necesarios en el campo
metodológico y en el campo epistemológico, para ser sometido a la evaluación por parte
del jurado examinador que se designe, por lo que lo APRUEBO, a fin de que el trabajo
investigativo sea habilitado para continuar con el proceso de titulación determinado por la
Universidad Central del Ecuador.
En la Ciudad de Quito, a los 16 días del mes de Septiembre de 2016.
Mat. Luis Cornelio Castillo Cabay
CC.: 1709300295
E – mail: [email protected]
Telf.: 0996022620
viii
CONTENIDO
Pag.
LISTA DE ILUSTRACIONES ............................................................................................. xi
LISTA DE TABLAS ........................................................................................................... xiii
RESUMEN .......................................................................................................................... xiv
ABSTRACT ......................................................................................................................... xv
I INTRODUCCIÓN ............................................................................................................... 1
II MARCO TEÓRICO ........................................................................................................... 3
2.1. Sistemas Inteligentes ................................................................................................ 3
2.2. Enfermedades de la Piel ........................................................................................... 4
2.2.1. Psoriasis ............................................................................................................ 4
2.2.2. Dermatitis seborreica ........................................................................................ 4
2.2.3. Liquen plano ..................................................................................................... 5
2.2.4. Pitiriasis rosada ................................................................................................. 5
2.2.5. Dermatitis crónica............................................................................................. 5
2.2.6. Pitiriasis rubra pilaris ........................................................................................ 6
2.3. Técnicas de Análisis ................................................................................................ 6
2.3.1. Algoritmos de minería de datos ........................................................................ 7
2.3.2. Arboles de decisión .......................................................................................... 8
III METODOLOGÍA ............................................................................................................ 14
ix
3.1. Metodología de Investigación ................................................................................ 14
3.1.1. Recolección y Obtención de los datos ............................................................ 14
3.1.2. Población y Muestra ....................................................................................... 15
3.1.3. Variables de Estudio ....................................................................................... 15
3.1.4. Modelo de Minería de Datos .......................................................................... 16
3.2. Metodología Computacional .................................................................................. 17
3.2.1. Requerimientos ............................................................................................... 17
3.2.2. Análisis y diseño ............................................................................................. 18
3.2.3. Implementación y Pruebas.............................................................................. 22
3.2.4. Mantenimiento ................................................................................................ 22
IV CÁLCULOS Y RESULTADOS ..................................................................................... 23
4.1. Análisis de los datos .............................................................................................. 23
4.1.1. Clase vs Edad ................................................................................................. 23
4.1.2. Clase vs Historial Familiar ............................................................................. 24
4.1.3. Clase vs Participación de Cuero Cabelludo .................................................... 24
4.1.4. Clase vs Participación de Rodilla y Codo ...................................................... 25
4.1.5. Clase vs Afectación de Mucosa Bucal ........................................................... 26
4.1.6. Clase vs Pápulas Foliculares .......................................................................... 26
4.1.7. Clase vs Pápulas Foliculares .......................................................................... 27
4.1.8. Clase vs Fenómeno de Koebner ..................................................................... 27
4.1.9. Clase vs Comezón .......................................................................................... 28
4.1.10. Clase vs Bordes Definidos .......................................................................... 28
4.1.11. Clase vs Descamación ................................................................................ 29
4.1.12. Clase vs Eritema ......................................................................................... 30
x
4.2. Aplicación del Algoritmo de Árboles de Decisión J48 ......................................... 30
4.3. Sistema de Diagnóstico Médico............................................................................. 36
4.4. Base de Datos ......................................................................................................... 41
V DISCUSIÓN ..................................................................................................................... 42
VI CONCLUSIONES .......................................................................................................... 44
VII RECOMENDACIONES ................................................................................................ 46
BIBLIOGRAFÍA .................................................................................................................. 47
ANEXOS .............................................................................................................................. 49
xi
LISTA DE ILUSTRACIONES
Ilustración 1 Proceso de Extracción del Conocimiento .......................................................... 7
Ilustración 2 Clasificación de Algoritmos (Berzal) ................................................................ 8
Ilustración 3 Tipos de Nodo de Árbol de Decisión ................................................................ 9
Ilustración 4 Ejemplo resultado de árbol de decisión (Sadawi, 2014) ................................. 12
Ilustración 5 Actores del Sistema ......................................................................................... 19
Ilustración 6 Diagrama de casos de uso................................................................................ 20
Ilustración 7 Diagrama de flujo de datos .............................................................................. 21
Ilustración 8 Clase vs Edad .................................................................................................. 23
Ilustración 9 Clase vs Historial Familiar .............................................................................. 24
Ilustración 10 Clase vs Participación de cuero Cabelludo ................................................... 25
Ilustración 11 Clase vs Participación de rodilla y codo........................................................ 25
Ilustración 12 Clase vs Afectación de Mucosa Bucal .......................................................... 26
Ilustración 13 Clase vs Pápulas Foliculares ......................................................................... 26
Ilustración 14 Clase vs Pápulas Poligonales......................................................................... 27
Ilustración 15 Clase vs Fenomeno de Koebner .................................................................... 27
Ilustración 16 Clase vs comezón .......................................................................................... 28
Ilustración 17 Clase vs Bordes Definidos............................................................................. 29
Ilustración 18 Clase vs Descamación ................................................................................... 29
Ilustración 19 Clase vs Eritema ............................................................................................ 30
Ilustración 20 Árbol de decisión (parte 1) ............................................................................ 32
Ilustración 21 Árbol de decisión (parte 2) ............................................................................ 33
Ilustración 22 Árbol de decisión (parte 3) ............................................................................ 34
Ilustración 23 Árbol de decisión (parte 4) ............................................................................ 35
Ilustración 24 Página principal SISMED ............................................................................. 37
Ilustración 25 Acceder a Historia Clínica (Especialidad) .................................................... 38
Ilustración 26 Menú de administración de Pacientes ........................................................... 38
Ilustración 27 Formulario de creación de Paciente .............................................................. 39
xii
Ilustración 28 Consulta de Pacientes Registrados ................................................................ 39
Ilustración 29 Formulario de registro de Historia Clínica .................................................... 40
Ilustración 30 Diagnóstico Entregado por el Sistema .......................................................... 40
Ilustración 31 Reporte de Historias Clínicas ........................................................................ 41
xiii
LISTA DE TABLAS
Tabla 1 Presencia de la Enfermedad .................................................................................... 11
Tabla 2 Presencia de Psoriasis según los síntomas .............................................................. 11
Tabla 3 Variables de Estudio ................................................................................................ 16
Tabla 4 Versiones de Herramientas de Software.................................................................. 19
Tabla 5 Resultados del Algoritmo J48 ................................................................................. 30
xiv
RESUMEN
“SISTEMA INTELIGENTE PARA EL DIAGNÓSTICO DE ENFERMEDADES”
Autor: Tatiana Elizabeth Montesdeoca Torres
Tutor: Mat. Luis Cornelio Castillo Cabay
El presente proyecto de investigación consiste en el desarrollo de un sistema experto que se
propone como herramienta informática para dar asistencia a médicos en el diagnóstico de
enfermedades, el dominio general de conocimiento de esta aplicación son enfermedades en
la piel, para lo cual se fundamenta en la implementación de modelos o algoritmos de
minería de datos con los cuales se obtienen patrones del comportamiento de cada una de las
enfermedades.
Los datos utilizados para la realización de este proyecto se obtuvieron por parte de una
donación de la Universidad de Bilkent, Departamento de Ingeniería Informática y ciencias
de la Información en Turquía, quienes llegaron a la conclusión de que no existe diferencia
entre un diagnóstico realizado en base a análisis químicos de las lesiones y otro en base a
características fisiológicas de las mismas.
La Herramienta utilizada para la definición de los patrones de cada una de las enfermedades
es Weka, específicamente el algoritmo J48 de árboles de decisión. El desarrollo del sistema
se realizó aplicando fundamentos de la ingeniería de software, utilizando un modelo
secuencial y desarrollado con las herramientas Xampp y Drupal.
El resultado de esta investigación es una aplicación web orientada a la entrega de
diagnósticos médicos, la cual ayuda a los médicos a entregar un diagnóstico ágil y de esta
manera disminuir errores en los mismos.
PALABRAS CLAVE: DIAGNÓSTICO DE ENFERMEDADES DE LA
PIEL/APLICACIÓN WEB/SISTEMAS EXPERTOS/MINERÍA DE DATOS/ARBOLES
DE DECISIÓN/ INFORMÁTICA MÉDICA.
xv
ABSTRACT
"INTELLIGENT SYSTEM FOR DISEASE DIAGNOSIS"
Author: Tatiana Elizabeth Torres Montesdeoca
Tutor: Mat. Luis Cornelio Castillo Cabay
This research project is the development of an expert system is proposed as a computer tool
to assist physicians in diagnosing diseases, the mastery of knowledge of this application are
skin diseases, for which is based on the implementation of models or data mining
algorithms with which behavioral patterns of each of the diseases are obtained.
The data used for this project were obtained by a grant from Bilkent University,
Department of Computer Engineering and Information Sciences in Turkey, who concluded
that there is no difference between a diagnosis made on the basis chemical analysis of
lesions and another based on physiological characteristics thereof.
The tool used to define patterns of each of the diseases is Weka, specifically the algorithm
J48 decision tree. The development of the system was performed by applying fundamentals
of software engineering, using a sequential pattern and developed with Drupal Xampp and
tools.
The result of this research is a web application aimed at delivering medical diagnostics,
which helps doctors to deliver a fast diagnosis and thus reduce errors in them.
KEYWORDS: DIAGNOSIS OF SKIN DISEASES / WEB APPLICATION / EXPERTS /
DATA MINING / SYSTEMS DECISION TREES / MEDICAL INFORMATICS
I CERTIFY that the above and foregoing is a true and correct translation of the original
document in Spanish.
Anabelle Irene Moncayo Noroña I.D. 1711174019 COD. 1005-06-665663
1
I INTRODUCCIÓN
En la actualidad, el uso de herramientas o sistemas que ayudan a la toma de decisiones, es
una tendencia que se encuentra en auge y conforme pasa el tiempo va tomando más fuerza,
esta tendencia implica la utilización de sistemas inteligentes o sistemas expertos, que no
son más que sistemas basados en conocimientos. (Benchimol, 1990) Los sistemas
inteligentes son aplicables en varios campos de conocimiento, en Medicina por ejemplo, el
sistema MYCIN es uno de los primeros sistemas inteligentes que realiza un diagnóstico de
enfermedades en la sangre. (Copeland)
Actualmente existen empresas y sectores que han implementado sistemas inteligentes para
su desarrollo diario, estos sistemas permiten soluciones acertadas a diferentes interrogantes
o problemas.
El sistema de transporte público de Londres ha implementado el uso de sistemas
inteligentes utilizando el sistema ROUTERS (Rail, Omnnibus, Underground Travel
Enquiry System), el cual permite al usuario conocer en tiempo real información sobre líneas
de transporte que se encuentran disponibles, tiempo de llegada, tiempo de espera y si ha
ocurrido algún percance con la unidad seleccionada. (Joana María Seguí Pons, 2004)
En Ecuador uno de los sistemas expertos más sencillos pero de gran utilidad es el sistema
de banca telefónica del Banco Guayaquil, para acceder a este servicio el usuario del banco
debe llamar al número de teléfono 023730100, esta llamada es atendida por un sistema
inteligente el cual permite al usuario interactuar con el realizando consultas solamente
hablando como si se tratara de una conversación humana y no humano – máquina.
El problema que esta investigación pretende resolver es la falta de un asistente en la entrega
de diagnóstico médico que aporte a que los pacientes no llevan un control adecuado de
salud por parte de los pacientes.
2
Este investigación responde a la siguiente pregunta ¿Cómo aporta la informática médica a
la generación de diagnósticos médicos basados en los síntomas de enfermedades
dermatológicas del paciente?. El Objetivo de esta investigación se fundamenta en la
implementación de técnicas de sistemas inteligentes en el campo médico, aspecto que está
incluido en el área aplicativa de la carrera de Ingeniería Informática.
La investigación busca implementar una herramienta web de ayuda para el profesional de la
salud en la entrega de diagnóstico de enfermedades de la piel. El alcance del proyecto se
restringe a la implementación de un Sistema Inteligente aplicado a la toma de decisiones, el
cual entrega diagnósticos de enfermedades, especialmente enfermedades de la piel
(psoriasis, dermatitis seborreica, liquen plano, pitiriasis rosada, dermatitis crónica y
pitiriasis rubra pilaris).
Los datos para la realización de este proyecto se obtuvieron por parte de una donación de la
Universidad de Bilkent, Departamento de Ingeniería Informática y ciencias de la
Información de Turquía, la misma que se encuentra disponible en la siguiente url
“https://archive.ics.uci.edu/ml/datasets/Dermatology” (Lichman, 2013), con la que se
analizaron comparativamente los diagnósticos de enfermedades de la piel antes y después
de exámenes de laboratorio, identificando una diferencia no significativa entre los
diagnósticos, lo que garantiza que un diagnostico que se basa en el análisis fisiológico de
determinada lesión es el mismo que se entrega como resultado de un análisis de resultados
de laboratorio. El software utilizado para la definición de los patrones de cada una de las
enfermedades fue Weka, específicamente el modelo de árboles de decisión J48.
El desarrollo del sistema se realizó aplicando fundamentos de la ingeniería de software:
modelo secuencial. Las Herramientas de software utilizadas para el desarrollo de la
aplicación fueron Xampp, Drupal.
El resultado final de esta investigación es una aplicación web que servirá de ayuda para la
entrega de diagnósticos. El diagnóstico que entrega esta aplicación web es el nombre de la
enfermedad detectada de acuerdo a la selección de los síntomas o características que
presente el paciente, para lo cual se deberá llenar un formulario que en el caso del médico
es la historia clínica del paciente.
3
II MARCO TEÓRICO
2.1. Sistemas Inteligentes
Los sistemas inteligentes o sistemas expertos son un conjunto de herramientas y
aplicaciones informáticas que tratan de acoplar una serie de características y
comportamientos que se asemejan a comportamientos e inteligencia humana. (Fundación
Telefónica, 2015)
El desarrollo de la Inteligencia Artificial (IA) y los Sistemas Inteligentes es un tema
discutido en las últimas décadas, el objetivo de IA es crear y diseñar entidades capaces de
tomar decisiones por sí solas. (Fundación Telefónica, 2015)
En la actualidad se utilizan algunos Sistemas Inteligentes para desarrollar actividades
cotidianas, lúdicas, laborales y que aporten al desarrollo de los pueblos. (Fundación
Telefónica, 2015)
La medicina es un área bastante compleja, en la cual un médico requiere de mucho estudio
y entrenamiento para ser considerado especialista, además, si se trabaja con una gran
variedad de enfermedades, los síntomas que presenta el paciente pueden ser confusos en el
momento de entregar un diagnóstico oportuno, esto puede determinar en muchos de los
casos la sobrevivencia o muerte del paciente. (Jiménez, 2008)
El sistema inteligente no sustituye al especialista, representa una ayuda en la toma de
decisiones. La base para el desarrollo de sistemas inteligentes en la medicina, se refiere al
conocimiento almacenado que ha sido adquirido previamente, ya sea con la guía del
especialista, análisis de datos anteriores o integrando un módulo de aprendizaje, donde crea
su propio conocimiento. (Jiménez, 2008)
4
2.2. Enfermedades de la Piel
El desarrollo de este proyecto se basa en la entrega de diagnósticos de enfermedades de la
piel, para lo cual se detallarán las características de cada una de las enfermedades, psoriasis,
dermatitis seborreica, liquen plano, pitiriasis rosada, dermatitis crónica y pitiriasis rubra
pilaris. Éstas enfermedades no tienen relación entre sí, aunque compartan características
fisiológicas. (OMS, 1999)
El diagnóstico de enfermedades de la piel de manera general no se ha estudiado a detalle en
Ecuador, sin embargo, se ha estudiado la incidencia de psoriasis considerando que los
afectados ascienden a 100.000.
Las principales provincias en donde existe mayor incidencia de esta enfermedad son
Guayas, Manabí y Pichincha con 50%, 35% y 25% respectivamente. Los demás casos están
distribuidos en otras zonas del territorio ecuatoriano.
2.2.1. Psoriasis
La psoriasis, es una enfermedad de la piel que corresponde al grupo de Dermatopatías
papuloescamosas, que afecta a los individuos sin distinción de edad, sexo, raza, etc. Es una
de las dermatosis más frecuentes en los países industrializados.
Se considera que los antecedentes de esta enfermedad se atribuyen a factores de tipo
genético, climático, nutricional y ecológico, además de factores biológicos como
infecciones estreptocócicas o víricas, crisis emocionales o embarazo. (OMS, 1999)
2.2.2. Dermatitis seborreica
La Dermatitis Seborreica es una enfermedad de la piel que corresponde al grupo de
Dermopatías eccematosas, también se le denomina caspa, es una erupción descamativa,
grasienta y eritematosa que por lo general afecta al cuero cabelludo.
Se cree que en algunos casos el origen son levaduras u hongos, también se puede asociar a
la presencia de andrógenos que apunta al hecho de que los varones sean más propensos que
las mujeres a padecer de esta enfermedad. (OMS, 1999)
5
2.2.3. Liquen plano
Según (Dermatology Information System) define al liquen plano como: “Enfermedad
inflamatoria pruriginosa de la piel y mucosas que puede ser generalizada o localizada y de
evolución crónica. Se caracteriza por pápulas poligonales de color violáceo y superficie
aplanada, que tienen predilección por el tronco y las superficies flexoras; las lesiones
pueden ser pequeñas o coalescer en placas.
La mucosa oral se afecta igualmente, presentando una red blanquecina en la zona yugal y
encías, o placas tipo leucoplasia o placas rojo brillante, o erosiones dolorosas (forma
erosiva)”. “Se desconoce su etiología, pero se especula con un origen viral, autoinmune,
medicamentoso y psicogénico”
2.2.4. Pitiriasis rosada
La pitiriasis rosada es una enfermedad que corresponde al grupo de Dermatopatías
papuloescamosas frecuente y autolimitada con origen vírico. Se caracteriza por la aparición
de una lesión anular eritematoescamosa en el tronco, el cuello o la extremidad superior. En
ocasiones muy aisladas este tipo de lesiones puede ir acompañada de malestar general,
cefalea y dolor de garganta.
Suele durar alrededor de 6 semanas, en ocasiones puede prolongarse hasta 12 semanas. En
las personas de piel oscura puede ser permanente la hiperpigmentación post-inflamatoria.
(OMS, 1999)
2.2.5. Dermatitis crónica
Según (Dermatology Information System): “La dermatitis de contacto es una alteración
inflamatoria frecuente de la piel causada por la exposición a varios antígenos e irritantes.
Se asocia con una morbilidad significativa, y es una de las razones más frecuentes de
reclamaciones laborales por patología cutánea.
La presentación clínica en la dermatitis de contacto, independientemente de su mecanismo,
oscila desde vesículas y bullas localizadas sobre una piel eritematosa en estadios agudos a
6
placas eritematosas liquenificadas en los estadios crónicos. El diagnóstico se sugiere por la
localización de la erupción y la historia de exposición a un agente dañino.”
2.2.6. Pitiriasis rubra pilaris
Según (Dermatology Information System): “Rara enfermedad cuya anormalidad primaria
es la hiperproliferación de la epidermis. Se han descrito 5 variantes, (1) típica del adulto, y
la más frecuente; (2) atípica del adulto, que se asemeja a un eritema ictiosiforme con placas
de alopecia; (3) clásica juvenil, idéntica a la del adulto, pero en los primeros años de la
vida; (4) circunscrita, con afectación de palmas y plantas; y (5) atípica juvenil, de comienzo
en la infancia, presenta una apariencia ictiosiforme, puede ser familiar y la afectación
palmo-plantar puede ser muy grave. En las formas típicas, las lesiones cutáneas son pápulas
córneas foliculares rojo-amarillentas localizadas en los nudillos de los dedos, también
placas descamativas en cuero cabelludo y cara, y queratodermia palmo-plantar. En tronco,
un eritema descamativo rojo-asalmonado llamativo con zonas de piel aparentemente sana
dentro de las placas eritrodérmicas. Existe tambien onicopatía. Prurito asociado.”
2.3. Técnicas de Análisis
La Técnica de análisis utilizada en este proyecto es la Minería de Datos, que es la
extracción de conocimiento partiendo de un conjunto de datos y que debe ser no trivial, es
decir, que el resultado del análisis no devuelva un valor nulo o 0, implícito, se refiere a que
no se tenga información oculta, previamente desconocido, lo que indica que el resultado del
análisis no se conozca con anterioridad y útil para generar conocimiento. (Berzal)
La extracción del conocimiento se describe a continuación. (Berzal)
7
Ilustración 1 Proceso de Extracción del Conocimiento
En el desarrollo de este proyecto, la limpieza, integración, selección y transformación de
los datos se realiza como un paso previo a la realización del análisis de minería de datos.
2.3.1. Algoritmos de minería de datos
Los algoritmos de minería de datos se dividen en tres tipos: de modelado originado por la
teoría, que incluye variables dependientes e independientes; de modelado originado por los
datos, que contempla variables que tienen inicialmente el mismo valor y algoritmos
auxiliares, donde se permite realizar análisis a priori. (Berzal)
•Eliminar ruidos, inconsistencias, valores nulos o que no aporten al análisis. Limpieza de datos
•Combinación de múltiples fuentes de datos, en el caso de que se tengan varias bases de datos. Integración de datos
•Identificación de datos relevantes para el análisis de acuerdo a lo que se va a estudiar. Selección de datos
•Preparación de los datos para el análisis, es decir, re codificar los datos. Transformación de datos
•Aplicación de técnicas de extracción de patrones y medidas de interés. Minería de datos
•Técnicas de visualización y representación del conocimiento. Presentación de resultados
8
Modelos de regresión
Análisis de la varianza
Series temporales
Modelado dirigido por la teoría Análisis discriminante
(Algoritmos predictivos) Árboles de decisión
Redes Neuronales
Algoritmos
Análisis de clúster
Escalamiento multidimensional
Modelado dirigido por los datos Escalamiento óptimo
(Algoritmos descriptivos) Reducción de la dimensión
Segmentación
Algoritmos auxiliares Proceso analítico de transacciones (OLAP)
Reporting
Ilustración 2 Clasificación de Algoritmos (Berzal)
Este proyecto exige que se utilicen algoritmos predictivos para el desarrollo del sistema.
Las posibles opciones son modelos de regresión y árboles de decisión, para lo cual se ha
realizado comparaciones entre los dos modelos.
La regresión tiene el objetivo de predecir valores continuos (Números pues, como el 1, 2.3,
3.1416 etc…), Y la clasificación tiene la tarea de asignar una clase, es decir predecir a que
clase pertenece un conjunto de datos, aquí es muy importante entender que en los
problemas de clasificación los valores son discretos.
Teniendo en cuenta lo mencionado anteriormente, en este proyecto se hará uso del
algoritmo de árboles de decisión.
2.3.2. Arboles de decisión
Un árbol de decisión es una estructura en forma de árbol donde cada rama representa el
resultado de la prueba y cada nodo representa la etiqueta de una clasificación evaluada
(decisión tomada después de calcular todos los atributos) (Edureka, 2014)
Consta de 3 tipos de nodos los cuales se pueden visualizar en la siguiente ilustración.
9
Ilustración 3 Tipos de Nodo de Árbol de Decisión
La construcción de un árbol de decisión consta de tres partes:
La construcción del árbol o la definición de las reglas de división, estas reglas se
basan en el valor de la probabilidad condicional o ganancia
Detener la construcción o reglas de parada, las reglas de parada se ejecutan cuando
la hoja no tiene más hijos, es decir, cada vez que se termina el análisis de las
probabilidades y no existen más divisiones posibles se detiene el algoritmo.
Las reglas de poda que son aquellas reglas que permiten eliminar redundancia en el
árbol y elimina las hojas que puedan generar confusión o contraposición. (Garzon,
2008)
Así el algoritmo básico de generación de un árbol de decisión es el siguiente:
El árbol se construye de manera recursiva, aplicando la regla de divide y vencerás y
siempre de arriba hacia abajo.
Inicialmente, todos los atributos son la raíz.
Los atributos deben ser variables categóricas (si el valor es continuo, se deberá
categorizar antes del análisis).
10
Los datos de entrada se dividen de forma recursiva basándose en los atributos
seleccionados.
Cada nodo se seleccionan sobre la base de una medida heurística o estática, por
ejemplo, ganancia de información o probabilidad de que ocurra. (Edureka, 2014)
Las reglas de parada para la generación de un árbol de decisión son:
Todas las muestras para un nodo dado pertenecen a la misma clase.
No hay atributos restantes para su posterior partición.
No hay muestras que se han quedado sin clasificar.
En el desarrollo de este proyecto de investigación se considera la utilización del algoritmo
J48, en el que el proceso de poda de un árbol permite eliminar reglas o nodos hojas que
resulten irrelevantes para el análisis, para cumplir con esto, se define la probabilidad de
error que se permite a la hipótesis de que el empeoramiento debido a esta operación es
significativo. A probabilidad menor, se exigirá que la diferencia en los errores de
predicción antes y después de podar sea más significativa para no podar.
El algoritmo J481 se basa en la utilización del criterio de ganancia. De esta manera se
consigue evitar que las variables con mayor número de posibles valores salgan beneficiadas
en la selección.
El criterio de ganancia se calcula basándose en la entropía, la misma que sirve para calcular
la homogeneidad de una muestra. Si la muestra es homogénea, la entropía es cero y si la
muestra se ha dividido igualmente la entropía es uno. Para construir un árbol de decisión,
tenemos que calcular dos tipos de entropía usando tablas de frecuencia. La entropía
utilizando la tabla de frecuencias de atributo (entropía del objetivo) se calcula utilizando la
siguiente formula: (Sadawi, 2014)
(1) 𝐸(𝑆) = ∑ −𝑝𝑖𝑙𝑜𝑔2𝑝𝑖
𝑐
𝑖=1
1 Otros algoritmos de árboles de decisión son Id3, J48 graft, random forest, random tree, pero se seleccionó el
algoritmo J48 por la simplicidad de comprensión de los resultados.
11
Donde S es el objetivo, y p es la probabilidad de que se cumpla una condición. A
continuación se explica con el siguiente ejemplo. El ejemplo que se propone trata de
explicar el diagnóstico de una determinada enfermedad de la piel, donde el objetivo de
estudio la presencia o no de psoriasis.
Presencia de Psoriasis
Si Probabilidad Si No Probabilidad No
9 personas 9/14 5 personas 5/14
Tabla 1 Presencia de la Enfermedad
Aplicando los valores obtenidos en la ecuación 1 tenemos lo siguiente:
𝐸(𝑆) = −(0,36 𝑙𝑜𝑔20,36) − (0,64 𝑙𝑜𝑔20,64)
𝐸(𝑆) = 0,94
Ahora de la misma manera se calcula la entropía utilizando la tabla de frecuencia de los
atributos, en este caso se evaluará los síntomas en el que se presenta o no la enfermedad.
Presencia de Psoriasis
Si
Probabilidad
Si
No
Probabilidad
No
Total
Síntomas
Descamación 3 0,60 2 0,4 5
Bordes definidos 4 1 0 0 4
Comezón 2 0,4 3 0,6 5
Total 14
Tabla 2 Presencia de Psoriasis según los síntomas
El cálculo de la Entropía teniendo en cuenta la tabla de frecuencias se calcula con la
siguiente ecuación
12
(2) 𝐸(𝑇, 𝑋) = ∑ 𝑃(𝑐)𝐸(𝑐)
𝑐∈𝑋
Aplicando los datos obtenidos en la ecuación 2 se tiene:
𝐸(𝑃𝑟𝑒𝑠𝑒𝑛𝑐𝑖𝑎 𝑒𝑛𝑓𝑒𝑟𝑚𝑒𝑑𝑎𝑑, 𝑆í𝑛𝑡𝑜𝑚𝑎𝑠) = 𝑃(𝐷𝑒𝑠𝑐𝑎𝑚𝑎𝑐𝑖ó𝑛) ∗ 𝐸(3,2)
+𝑃(𝐵𝑜𝑟𝑑𝑒𝑠 𝐷𝑒𝑓𝑖𝑛𝑖𝑑𝑜𝑠) ∗ 𝐸(4,0) + 𝑃(𝐶𝑜𝑚𝑒𝑧ó𝑛) ∗ 𝐸(2,3)
𝐸(𝑃𝑟𝑒𝑠𝑒𝑛𝑐𝑖𝑎 𝑒𝑛𝑓𝑒𝑟𝑚𝑒𝑑𝑎𝑑, 𝑆í𝑛𝑡𝑜𝑚𝑎𝑠) = 0,693
Finalmente el cálculo de la ganancia es la diferencia entre la entropía del objetivo y la
entropía teniendo en cuenta la tabla de frecuencias.
(3) 𝐺𝑎𝑖𝑛(𝑇, 𝑋) = 𝐸(𝑇) − 𝐸(𝑇, 𝑋)
La ganancia en este caso aplicando el cálculo en la ecuación 3 con los resultados obtenidos
en el ejemplo es:
𝐺𝑎𝑖𝑛(𝑇, 𝑋) = 0,94 − 0,693𝐺𝑎𝑖𝑛 (𝑇, 𝑋) = 247
Es importante tener en cuenta que la entropía en el caso de que los individuos que presentan
la enfermedad y que presentan bordes definidos es cero, por lo tanto se ha terminado el
análisis de esa rama de árbol.
Ilustración 4 Ejemplo resultado de árbol de decisión (Sadawi, 2014)
13
Se ha seleccionado los árboles de clasificación por la sencillez del modelo, su accesibilidad
a ser representados gráficamente, la explicación que aporta a la clasificación y por su
rapidez a la hora de clasificar nuevos patrones.
Otros métodos potenciales pueden ser: Regresión logística, máquinas de soporte vectorial,
clúster jerárquico.
14
III METODOLOGÍA
3.1. Metodología de Investigación
El presente proyecto se trata de una investigación aplicada que busca implementar técnicas
de Sistemas Inteligentes orientados a la entrega de diagnósticos médicos, específicamente
de enfermedades en la piel.
Este proyecto plantea una investigación de campo ya que los datos han sido recolectados de
pacientes del área de dermatología, y se trata de un proyecto integral pues se desarrolla una
herramienta informática para visualizar los resultados de la misma.
3.1.1. Recolección y Obtención de los datos
Los estudios previos a la creación del sistema informático se realiza utilizando una base de
datos de acceso público, la misma que se ha utilizado anteriormente para realizar un estudio
de las diferencias entre los diagnósticos de varias enfermedades de la piel, antes y después
de realizarse exámenes de laboratorio.
La conclusión a la que se llegó con el estudio realizado por los creadores de la misma es
que el diagnostico entregado de acuerdo a las características fisiológicas de las
enfermedades difieren de manera no significativa de los diagnósticos entregados luego de
evaluar los exámenes de laboratorio. A partir de éste resultado se toman en consideración
solamente las características fisiológicas de las enfermedades.
Los autores de esta base de datos son Nilsel Ilter, M. D., Ph.D., Universidad de
Gazi, escuela de Medicina en Ankara, Turquía y H. Altay Güvenir, PhD, Universidad de
Bilkent, Departamento de Ingeniería Informática y Ciencias de la Información en Ankara,
Turquía (donante de la información). Para mayor información diríjase al Anexo A.
15
3.1.2. Población y Muestra
La base de datos está constituida por 366 individuos sin distinción de sexo o raza. Las
edades de los individuos se encuentran entre los 0 y 75 años, considerando como 0 a todos
los pacientes menores de 1 año.
3.1.3. Variables de Estudio
Cada uno de los individuos ha sido diagnosticado con una de las siguientes enfermedades
de la piel:
psoriasis
dermatitis seborreica
liquen plano
pitiriasis rosada
dermatitis crónica
pitiriasis rubra pilaris
La base de datos contempla treinta y cuatro variables de las cuales se utilizan doce, las
mismas que corresponden a características fisiológicas de las lesiones de la piel y la edad
de los pacientes.
La variable historial familiar tiene el valor 1 si cualquiera de estas enfermedades se observa
en la familia, y 0 en caso contrario. La variable edad representa la edad del paciente. Todas
las otras características se definieron en un rango de 0 a 3; en este sentido, 0 indica la
ausencia de esta característica fisiológica, 3 indica la cantidad más grande posible, y 1, 2
indican los valores intermedios relativos.
La variable class representa cada una de las enfermedades; 1 psoriasis, 2 dermatitis
seborreica, 3 liquen plano, 4 pitiriasis rosada, 5 dermatitis crónica y 6 pitiriasis rubra
pilaris.
16
N° Variable Traducción Valores
1 Erythema Eritema 0,1,2,3
2 Scaling Descamación 0,1,2,3
3 Definite_borders Fronteras definidas 0,1,2,3
4 Itching Comezón 0,1,2,3
5 Koebner_phenomenon Fenómeno de Koebner 0,1,2,3
6 Polygonal_papules Pápulas poligonales 0,1,2,3
7 Follicular_papules Pápulas foliculares 0,1,2,3
8 Oral_mucosal_involvement Afectación de la mucosa bucal 0,1,2,3
9 Knee_and_elbow_involvement Participación de la rodilla y codo 0,1,2,3
10 Scalp_involvement Participación del cuero cabelludo 0,1,2,3
11 Family_history Historial familiar 0,1
12 Age Edad (en años) ENTERO
13 Class Clase 1,2,3,4,5,6
Tabla 3 Variables de Estudio
La variable dependiente que se utilizó para el desarrollo del proyecto es Class que
corresponde al diagnóstico médico, el mismo que depende de la combinación de todas las
anteriores.
3.1.4. Modelo de Minería de Datos
Se han evaluado dos modelos de minería de datos, Regresión Logística y Árboles de
Decisión, teniendo en cuenta que al utilizar cada uno de los modelos obtendremos
diferentes resultados asociados al diagnóstico de cada una de las enfermedades
anteriormente descritas.
La Regresión Logística devuelve como resultado una ecuación en la que se evalúa el peso
de cada variable, obteniendo como respuesta la probabilidad de un determinado
diagnóstico, mientras que los Árboles de Decisión entregan una regla que define cada uno
de los diagnósticos, y no una probabilidad. Este proyecto se desarrolló utilizando el modelo
17
de Árboles de decisión, el cual se alinea de mejor al resultado que se necesita entregar en el
sistema.
Para aplicar el modelo de mimería de datos seleccionado se utilizó el software libre Weka
(Machine Learning Group at the University of Waikato) versión 3.6.13, el cual es una
colección de algoritmos de minería de datos y machine learning que entregan como
resultado de la aplicación de un algoritmo un modelo que puede ser implementado en
sistemas informáticos.
El algoritmo de árboles de Decisión que se utilizó es el J48, en Weka está en la pestaña
“classify” y como su nombre lo indica permite clasificar a una población en grupos
dependiendo sus características.
El resultado que se obtiene al aplicar este algoritmo es un conjunto de reglas que definen
los patrones de cada una de las clasificaciones, también se puede visualizar el árbol que se
genera en el cual se muestran todas las reglas en orden y para el investigador es más fácil
visualizar los resultados.
3.2. Metodología Computacional
Luego del análisis de datos realizado con Weka se desarrolla una aplicación web la cual
implementa un modelo de minería de datos y permite visualizar los resultados del mismo,
adicionalmente se integra un módulo que permite gestionar las recomendaciones
personalizadas para cada paciente.
3.2.1. Requerimientos
Los requerimientos levantados para el desarrollo del sistema, de acuerdo a los objetivos del
proyecto son:
Creación de perfiles de usuario para médicos según la especialidad.
Limitar el acceso de los médicos solamente a los pacientes de la especialidad
correspondiente.
Reportes de directorio telefónico de los especialistas.
18
Registro de historia clínica de pacientes.
Reportes de historia clínica de pacientes.
Reportes de historia clínica filtrado por enfermedades.
Entrega de diagnóstico médico (dermatología).
Entrega de recomendaciones personalizadas para cada paciente.
3.2.2. Análisis y diseño
En la actualidad se ha generado una tendencia a desarrollar aplicaciones web utilizando
sistemas de gestión de contenidos (CMS), los cuales son sistemas que permiten manejar de
manera independiente el contenido y el diseño, ya que mientras se construye la aplicación
se van generando automáticamente los modelos de datos.
Las Herramientas de Software que se van a utilizar son Xampp, mySQL y Drupal.
Xampp es una distribución de Apache completamente gratuita y fácil de instalar que
contiene mySQL, PHP y Perl. (Apache, 2016)
Drupal es un software de gestión de contenidos que se utiliza para hacer muchos de
los sitios web y aplicaciones que utiliza todos los días. Drupal tiene grandes
características estándar, como la fácil creación de contenido, un rendimiento fiable
y una excelente seguridad. Pero lo que lo distingue es su flexibilidad; modularidad
es uno de sus principios básicos. Sus herramientas le ayudan a construir el
contenido versátil, estructurada que las experiencias web dinámicas necesitan.
(Drupal)
MySQL es la base de datos de código abierto de mayor aceptación mundial y
permite la oferta económica de aplicaciones de bases de datos fiables, de alto
rendimiento y fácilmente ampliables basadas en la web e integradas. (Oracle)
19
En la tabla 4 se describen las versiones utilizadas para el desarrollo del sistema.
No Herramienta Versión
1 Drupal 7.42
2 Xampp 5.6.15
3 mySQL 5.0.11
Tabla 4 Versiones de Herramientas de Software
Actores del Sistema
Los actores del sistema son todos aquellos individuos que forman parte del flujo de datos
del sistema, es decir, son todos quienes generan información o contenidos dentro del
sistema. En la ilustración 5 se describen cada uno de los actores.
Ilustración 5 Actores del Sistema
•El paciente es el principal actor del sistema, entrega toda la información al médico sobre los síntomas y molestias que presenta.
Paciente
•El médico recibe la información del paciente, corrobora la veracidad de las afecciones en la piel y las registra en el sistema.
•El médico tiene acceso a la generación de reportes de los pacientes atendidos para llevar un control de los mismos.
Médico
•El Administrador es el encargado de la creación de usuarios para los médicos y la asignación de los permisos respectivos para cada especialidad.
Administrador
•El administrador del sistema crea contenidos en el sistema, ofrece mantenimiento y mejoras del mismo.
•En el caso de que se necesite crear nuevos términos, programar nuevas reglas o modificar algo en el sistema, el Administrador de contenidos será el actor que desempeñará estas tareas.
Administrador del Sistema
21
Diagrama de flujo de datos
El diagrama de flujo de datos muestra los procesos y los resultados que se obtienen en cada
uno de ellos.
Ilustración 7 Diagrama de flujo de datos
22
3.2.3. Implementación y Pruebas
La implementación de las reglas que definen a cada una de las enfermedades anteriormente
descritas se programó utilizando el módulo Rules de Drupal, el cual permite crear una regla
similar a una proposición matemática, considerando como entrada un formulario llamado
“Historia Clínica”.
La Historia Clínica recoge características del paciente y características fisiológicas de cada
enfermedad, lo que permite entregar un diagnóstico en base a la información entregada. Si
el resultado del análisis no se encuentra contemplado en ninguna de las reglas.
El sistema no requiere de publicar la aplicación web en un servidor para que tenga acceso
público, está diseñado para ser portable y que no dependa de una conexión a internet.
Se realizaron pruebas de cada una de las funcionalidades del sistema de acuerdo a los
requerimientos levantados y en especial de la generación de diagnósticos médicos y
recomendaciones personalizadas.
Para realizar pruebas se tomaron al azar individuos pertenecientes a la base de datos con la
que se generaron los patrones para cada una de las enfermedades.
3.2.4. Mantenimiento
El mantenimiento del sistema consiste en la creación o mejora de procesos, durante el
desarrollo y pruebas del sistema se ha realizado mantenimiento correctivo en todo lo que se
refiere a navegabilidad y diseño del mismo.
El usuario con permisos del administrador del sistema podrá realizar el mantenimiento
necesario en el sentido de que se requiera añadir funcionalidad al mismo.
En el caso de que se necesite agregar especialidades o diagnósticos de otras áreas se deberá
realizar nuevamente el análisis de las variables y retroalimentar el modelo realizado con
Weka.
23
IV CÁLCULOS Y RESULTADOS
Los resultados obtenidos en el desarrollo de este proyecto se han clasificado en tres grupos,
análisis de datos, obtención de patrones de enfermedades o reglas e implementación del
sistema.
4.1. Análisis de los datos
Inicialmente se han contrastado cada una de las variables independientes con la variable
dependiente, para esto weka permite observar de manera gráfica dichos contrastes.
4.1.1. Clase vs Edad
En la imagen se puede ver el contraste de Clase (eje X) contra Edad (eje Y), en el que se
puede observar que la única enfermedad que tiene definida una edad para su aparición es la
pitiriasis rubra pilaris, la cual según los datos aparecen solamente en pacientes que tiene
entre 0 y 38 años.
Ilustración 8 Clase vs Edad
24
4.1.2. Clase vs Historial Familiar
En este contraste observamos que no se necesita tener ningún historial familiar relacionado
con las enfermedades estudiadas para deducir que el paciente puede contraer dicha
enfermedad.
Ilustración 9 Clase vs Historial Familiar
4.1.3. Clase vs Participación de Cuero Cabelludo
En la imagen se muestra definida la relación existente entre la Participación de Cuero
Cabelludo y la Clase 1 que corresponde al diagnóstico de psoriasis.
25
Ilustración 10 Clase vs Participación de cuero Cabelludo
4.1.4. Clase vs Participación de Rodilla y Codo
En la imagen se muestra definida la relación existente entre la Participación de Cuero
Cabelludo y la Clase 1 que corresponde al diagnóstico de psoriasis y 6 que corresponde a
pitiriasis rubra pilaris.
Ilustración 11 Clase vs Participación de rodilla y codo
26
4.1.5. Clase vs Afectación de Mucosa Bucal
En la ilustración se observa la presencia de esta característica en la clase 3 que corresponde
a liquen plano.
Ilustración 12 Clase vs Afectación de Mucosa Bucal
4.1.6. Clase vs Pápulas Foliculares
En la ilustración se observa la presencia de esta característica en la clase 6 que corresponde
a pitiriasis rubra pilaris.
Ilustración 13 Clase vs Pápulas Foliculares
27
4.1.7. Clase vs Pápulas Foliculares
En la imagen se visualiza la aparición de pápulas foliculares solamente en la clase 3 que
corresponde a liquen plano.
Ilustración 14 Clase vs Pápulas Poligonales
4.1.8. Clase vs Fenómeno de Koebner
En la ilustración se observa la presencia del Fenómeno de Koebner en la clase 1 (psoriasis),
3 (liquen plano) y 4 (pitiriasis rosada).
Ilustración 15 Clase vs Fenomeno de Koebner
28
4.1.9. Clase vs Comezón
En la ilustración se observa la presencia de comezón en todas las clases, con menos
intensidad en la clase 4 (pitiriasis rosada) y 6 (pitiriasis rubra pilaris)
Ilustración 16 Clase vs comezón
4.1.10. Clase vs Bordes Definidos
En la ilustración se observa la presencia de bordes definidos en todas las clases.
29
Ilustración 17 Clase vs Bordes Definidos
4.1.11. Clase vs Descamación
En la ilustración se observa la presencia de bordes definidos en todas las clases.
Ilustración 18 Clase vs Descamación
30
4.1.12. Clase vs Eritema
En la ilustración se observa la presencia de bordes definidos en todas las clases.
Ilustración 19 Clase vs Eritema
4.2. Aplicación del Algoritmo de Árboles de Decisión J48
Los resultados obtenidos al implementar el algoritmo J48 se muestran en la tabla 5, donde
se establece que el modelo generado si es un modelo aceptable. Los individuos mal
clasificados corresponden a individuos a los que tienen ausencia de datos en alguna de las
variables y es una cantidad mínima. El estadístico de kappa nos muestra una concordancia
que si bien no es perfecta (igual a 1) es aceptable.
Resultados
Resultado N° de individuos Valor
Correctly Classified Instances 305 83.33 %
Incorrectly Classified Instances 61 16.67 %
Kappa statistic 0.79
Total Number of Instances 366 100%
Tabla 5 Resultados del Algoritmo J48
31
Como resultado de la implementación del algoritmo de árboles de decisión se genera un
árbol con la siguiente estructura. Se ha particionado el árbol para mejor comprensión del
lector.
El algoritmo ha definido como nodo raíz a la variable Pápulas Poligonales, a partir de esta
se generaron los nodos rama y en consecuencia los nodos hoja.
La representación de los nodos rama (variables independientes) tienen color celeste, la
representación de los nodos hojas (variable dependiente - diagnóstico) tienen color lila y las
estrellas indican la continuación de una rama de árbol.
Otra manera de visualizar el árbol de decisión generado es la obtención de reglas, las
mismas que se detallan en el Anexo B.
36
4.3. Sistema de Diagnóstico Médico
El sistema de diagnóstico Médico SISMED es la aplicación web desarrollada, la misma que
puede trabajar con o sin conexión a internet, desarrollada con la finalidad de realizar
gestión de la información de pacientes y entregar diagnósticos reales de acuerdo a los
síntomas que presenta el paciente.
La ilustración 24 muestra la página principal del sistema, en la que se puede observar varias
áreas.
Menú Principal: Distribuido por pestañas de acuerdo a los permisos de usuario, por
seguridad el administrador del sistema no tendrá acceso a generar registros de
Historia Clínica.
Slide Promocional del Sistema: Se muestran las imágenes publicitarias del sistema.
Menú de Redes Sociales: Menú configurable para la gestión de redes sociales del
consultorio o centro de salud que haga uso del sistema.
Cuerpo de la Página: Inicialmente se encuentra publicado el mensaje de bienvenida
al sistema, sin embargo en esta área se puede cambiar los contenidos de acuerdo a
las necesidades de los usuarios.
Menú de Navegación: Permite tener acceso rápido a funcionalidades del sistema, se
encuentra habilitado solamente para facilitar el trabajo del médico.
Menú del usuario: Permite acceder a información del usuario que accedió al
sistema.
Menú Usuarios Conectados: Permite visualizar los usuarios conectados.
38
La generación del diagnóstico de realiza una vez el médico haya guardado la Historia
Clínica.
Si el médico desea ingresar un nuevo registro de Historia Clínica, puede realizarlo desde el
menú principal seleccionando la Especialidad en la que desea realizarla.
Ilustración 25 Acceder a Historia Clínica (Especialidad)
El médico puede crear nuevos pacientes en el sistema y realizar búsquedas de pacientes
existentes, esto lo realiza en la pestaña “¨Pacientes”
Ilustración 26 Menú de administración de Pacientes
39
Ilustración 27 Formulario de creación de Paciente
Ilustración 28 Consulta de Pacientes Registrados
40
El formulario desarrollado para el registro de la Historia Clínica del paciente está creado
teniendo en cuenta las características fisiológicas de las lesiones en la piel además de
características propias del paciente.
Ilustración 29 Formulario de registro de Historia Clínica
Una vez que se el médico ha llenado el formulario de Historia Clínica el sistema entrega el
resultado de la consulta médica, es decir genera el diagnóstico del paciente.
Ilustración 30 Diagnóstico Entregado por el Sistema
41
Adicional a la funcionalidad de Entrega de diagnósticos médicos, se han generado reportes
para realizar consultas de pacientes, diagnósticos y existencia de usuarios.
Ilustración 31 Reporte de Historias Clínicas
4.4. Base de Datos
La base de datos que genera el CMS conforme se va creando el sistema está compuesta por
188 tablas las cuales no presentan relaciones físicas, en el Anexo C, se presenta el
inventario de tablas de base de datos con las que se ha trabajado y utilizando las
herramientas de xampp se podrá generar automáticamente el diccionario de datos, el mismo
que no se ha incluido en este documento por la cantidad que representa.
42
V DISCUSIÓN
Inicialmente este proyecto se planteaba la generación de diagnósticos médicos de
cardiología, sin embargo se desistió de trabajar en esta área del conocimiento
porque la información recolectada se basaba en una encuesta, la cual entregaba
resultados que estaban sujetos a la interpretación del paciente mas no al criterio
profesional de un médico.
Se realizó una búsqueda de bases de datos con resultados médicos comprobados y
es así como se encontró la base de datos de enfermedades dermatológicas de la
Universidad de la Universidad de Bilkent en Turquía, quienes realizaron una
investigación para determinar que los diagnósticos no difieren cuando se toma en
cuenta las características químicas de las lesiones en la piel que cuando se toma en
cuenta las características fisiológicas de dichas lesiones.
Este proyecto se considera como continuación de la investigación realizada por la
Universidad de Bilkent, ya que se ha creado una herramienta web que abarca el
conocimiento obtenido por ellos y el conocimiento generado en esta investigación.
Este proyecto presenta un sistema dirigido específicamente a los profesionales de la
salud, se proponía la opción de que el paciente trabaje directamente sobre el mismo,
sin embargo se desistió de realizar esta funcionalidad para evitar la proliferación de
la automedicación,(complementar con el objetivo)
Se estudió la posibilidad de implementar machine learning al sistema, sin embargo
las características del negocio (diagnóstico de enfermedades de la piel) no requieren
que se genere un aprendizaje con el tiempo, esto se debe a que los síntomas de estas
enfermedades no cambian de manera significativa en poco tiempo como sería el
caso de enfermedades como la diabetes, enfermedades cardiovasculares, etc.
43
No se ha podido hacer ningún tipo de comparación con sistemas similares en el
Ecuador, debido a que hasta el momento de la realización de la investigación no se
identificó software público con el que se pueda contrastar.
44
VI CONCLUSIONES
De acuerdo al desarrollo de este proyecto y lo plasmado en el documento se puede concluir
que:
La informática aporta a la medicina en la generación de diagnósticos médicos de
enfermedades de la piel basados en los síntomas del paciente, con la creación de
sistemas inteligentes capaces de tomar decisiones fundamentadas en el
conocimiento obtenido a partir de la definición de reglas o patrones, los cuales son
el resultado de la implementación de algoritmos de minería de datos. Esta
investigación entrega como resultado el desarrollo de una herramienta web
(SISMED) que aporta al profesional de la salud y entrega un diagnóstico en
respuesta a un conjunto de síntomas propios del paciente.
La definición de las reglas del sistema se necesita se basa en diagnósticos
entregados como respuesta de un examen de laboratorio o por parte del médico a los
cuales se les pueda comprobar su veracidad.
La búsqueda de información de pacientes – enfermedades se realizó con una base de
datos externa debido a que en el país no existe información pública sobre
diagnóstico médico o enfermedades de los pacientes.
Las reglas o patrones obtenidos en el análisis de los datos con el algoritmo de
árboles de decisión J48 tienen concordancia con las características de cada una de
las enfermedades según lo que indica la OMS.
45
Se observa en las ilustraciones 16 (Clase vs Comezón), 17 (Clase vs Bordes
Definidos), 18(Clase vs Descamación), y 19 (Clase vs Erithema) que los síntomas
“Comezón”, “Bordes definidos”, “Descamación” y “Erithema” son síntomas que se
encuentran presentes en todas las enfermedades estudiadas, es decir son síntomas
comunes.
La selección del algoritmo de minería de datos es un factor determinante para el
desarrollo de sistemas expertos, la decisión de implementar un algoritmo depende
del tipo de datos y el resultado que se desea obtener. En este proyecto se seleccionó
el algoritmo de árboles de decisión. De acuerdo a la tabla 5 (Resultados del
Algoritmo J48) no se rechaza el modelo de árboles de decisión y se implementan las
reglas en el sistema.
En las ilustraciones 20 (árbol de decisión (parte 1)), 21(árbol de decisión (parte 2)),
22 (árbol de decisión (parte 3)) y 23 (árbol de decisión (parte 4)), se observa que el
tamaño del árbol de decisión generado posee 39 hojas y su tamaño o niveles son 53.
Si la sintomatología es muy amplia, los niveles del árbol se incrementará.
El uso de gestores de contenido (CMS) para el desarrollo de aplicaciones web
permite realizar aplicaciones en corto tiempo y con excelente calidad.
46
VII RECOMENDACIONES
En el caso de que se requiera aumentar especialidades médicas para el análisis de
nuevas enfermedades, se deberá generar un modelo aplicando un algoritmo de
minería de datos adecuado a la predicción requerida.
Si se desea implementar la funcionalidad de machine learning, Drupal permite
trabajar con módulos de integración con diferentes tipos de herramientas que
permiten realizar machine learning, entre ellas se encuentra weka.
El usuario que desee realizar mantenimiento al software deberá tener conocimiento
del manejo de CMS (Drupal), código PHP y MySQL.
47
BIBLIOGRAFÍA
1. APACHE. (2016). Apache friends. Recuperado el 31 de 05 de 2016, de
https://www.apachefriends.org/es/index.html
2. BENCHIMOL, G. P.-C. (1990). Los sistemas expertos en la empresa. México:
Macrobit Editores.
3. BERZAL, F. (s.f.). Introducción al Data Mining. Recuperado el 01 de 06 de 2016,
de http://elvex.ugr.es/decsai/intelligent/:
http://elvex.ugr.es/decsai/intelligent/slides/dm/D1%20Data%20Mining.pdf
4. COPELAND, B. (s.f.). Enciclopedia Británica. Recuperado el 13 de 07 de 2016, de
School and library subscribers: https://www.britannica.com/technology/MYCIN
5. DERMATOLOGY INFORMATION SYSTEM. (s.f.). DermIS. Recuperado el 01
de 06 de 2016, de http://www.dermis.net/dermisroot/es/13203/diagnose.htm
6. DRUPAL. (s.f.). Drupal org. Recuperado el 31 de 05 de 2016, de
https://www.drupal.org/about
7. EDUREKA (Dirección). (2014). Understanding Decision Tree Algorithm | Edureka
[Película].
8. FUNDACIÓN TELEFÓNICA. (2015). El Trabajo en un Mundode Sistemas
Inteligentes. España: Ariel.
9. GARZON, P. A. (2008). Aplicación de técnicas de inducción de árboles de decisión
a problemas de clasificación mediante el uso de Weka (Waikato Enviroment for
Knowledge Analysis). Bogotá: Fundación Universitaria Konrad Lorenz.
48
10. HIDALGO, I. C. (2010). Aprobación de créditos bancarios utilizando inteligencia
artificial. Quito.
11. JIMÉNEZ, M. Á. (03 de 2008). Entr@te en linea. Sistemas expertos para la
asistencia médica. (U. N. UNAM, Ed.) México.
12. JOANA MARÍA SEGUÍ PONS, M. R. (01 de 08 de 2004). Los Sistemas
Inteligentes de Transporte y sus Efectos. Revista Electrónica de Geografía y
Ciencias Sociales, VI(170), 60.
13. LICHMAN, M. (2013). UCI Machine Learning repositorio. Recuperado el 03 de 03
de 2016, de http://archive.ics.uci.edu/ml
14. MARQUÉS, M. P. (2014). Minerís de Datos a Traves de Ejemplos. Madrid,
España: RC Libros.
15. OMS. (1999). Modelo de Información sobre prescripción de medicamentos.
Ginebra.
16. ORACLE. (s.f.). Productos y Servicios. Recuperado el 31 de 05 de 2016, de
https://www.oracle.com/es/products/mysql/overview/index.html
17. PP DIGITAL. (06 de 06 de 2012). La psoriasis, una afección ligada al estrés.
Ecuador.
18. SADAWI, N. (Dirección). (2014). How Decision Trees Work 1/2 .. an Introduction
+ What is Entropy [Película].
50
ANEXO A
RESUMEN DE BASE DE DATOS UTILIZADA EN EL ESTUDIO
% 1. Title: Dermatology Database
%
% 2. Source Information:
% (a) Original owners:
% -- 1. Nilsel Ilter, M.D., Ph.D.,
% Gazi University,
% School of Medicine
% 06510 Ankara, Turkey
% Phone: +90 (312) 214 1080
%
% -- 2. H. Altay Guvenir, PhD.,
% Bilkent University,
% Department of Computer Engineering and Information Science,
% 06533 Ankara, Turkey
% Phone: +90 (312) 266 4133
% Email: [email protected]
51
%
% (b) Donor: H. Altay Guvenir,
% Bilkent University,
% Department of Computer Engineering and Information Science,
% 06533 Ankara, Turkey
% Phone: +90 (312) 266 4133
% Email: [email protected]
%
% (c) Date: January, 1998
%
% 3. Past Usage:
% 1. G. Demiroz, H. A. Govenir, and N. Ilter,
% "Learning Differential Diagnosis of Eryhemato-Squamous Diseases using
% Voting Feature Intervals", Aritificial Intelligence in Medicine,
%
% The aim is to determine the type of Eryhemato-Squamous Disease.
%
% 4. Relevant Information:
% This database contains 34 attributes, 33 of which are linear
% valued and one of them is nominal.
%
52
% The differential diagnosis of erythemato-squamous diseases is a real
% problem in dermatology. They all share the clinical features of
% erythema and scaling, with very little differences. The diseases in
% this group are psoriasis, seboreic dermatitis, lichen planus,
% pityriasis rosea, cronic dermatitis, and pityriasis rubra pilaris.
% Usually a biopsy is necessary for the diagnosis but unfortunately
% these diseases share many histopathological features as
% well. Another difficulty for the differential diagnosis is that a
% disease may show the features of another disease at the beginning
% stage and may have the characteristic features at the following stages.
% Patients were first evaluated clinically with 12 features.
% Afterwards, skin samples were taken for the evaluation of 22
% histopathological features. The values of the histopathological features
% are determined by an analysis of the samples under a microscope.
%
% In the dataset constructed for this domain, the family history feature
% has the value 1 if any of these diseases has been observed in the
% family, and 0 otherwise. The age feature simply represents the age of
% the patient. Every other feature (clinical and histopathological) was
% given a degree in the range of 0 to 3. Here, 0 indicates that the
% feature was not present, 3 indicates the largest amount possible,
53
% and 1, 2 indicate the relative intermediate values.
%
% The names and id numbers of the patients were recently
% removed from the database.
%
% 5. Number of Instances: 366
%
% 6. Number of Attributes: 34
%
% 7. Attribute Information:
% -- Complete attribute documentation:
% Clinical Attributes: (take values 0, 1, 2, 3, unless otherwise indicated)
% 1: erythema
% 2: scaling
% 3: definite borders
% 4: itching
% 5: koebner phenomenon
% 6: polygonal papules
% 7: follicular papules
% 8: oral mucosal involvement
% 9: knee and elbow involvement
54
% 10: scalp involvement
% 11: family history, (0 or 1)
% 34: Age (linear)
%
% Histopathological Attributes: (take values 0, 1, 2, 3)
% 12: melanin incontinence
% 13: eosinophils in the infiltrate
% 14: PNL infiltrate
% 15: fibrosis of the papillary dermis
% 16: exocytosis
% 17: acanthosis
% 18: hyperkeratosis
% 19: parakeratosis
% 20: clubbing of the rete ridges
% 21: elongation of the rete ridges
% 22: thinning of the suprapapillary epidermis
% 23: spongiform pustule
% 24: munro microabcess
% 25: focal hypergranulosis
% 26: disappearance of the granular layer
% 27: vacuolisation and damage of basal layer
55
% 28: spongiosis
% 29: saw-tooth appearance of retes
% 30: follicular horn plug
% 31: perifollicular parakeratosis
% 32: inflammatory monoluclear inflitrate
% 33: band-like infiltrate
%
% 8. Missing Attribute Values: 8 (in Age attribute). Distinguished with '?'.
%
% 9. Class Distribution:
% Database: Dermatology
%
% Class code: Class: Number of instances:
% 1 psoriasis 112
% 2 seboreic dermatitis 61
% 3 lichen planus 72
% 4 pityriasis rosea 49
% 5 cronic dermatitis 52
% 6 pityriasis rubra pilaris 20
%
% Information about the dataset
56
% CLASSTYPE: nominal
% CLASSINDEX: last
%
@relation dermatology
@attribute erythema {0,1,2,3}
@attribute scaling {0,1,2,3}
@attribute definite_borders {0,1,2,3}
@attribute itching {0,1,2,3}
@attribute koebner_phenomenon {0,1,2,3}
@attribute polygonal_papules {0,1,2,3}
@attribute follicular_papules {0,1,2,3}
@attribute oral_mucosal_involvement {0,1,2,3}
@attribute knee_and_elbow_involvement {0,1,2,3}
@attribute scalp_involvement {0,1,2,3}
@attribute family_history {0,1}
@attribute melanin_incontinence {0,1,2,3}
@attribute eosinophils_in_the_infiltrate {0,1,2}
@attribute PNL_infiltrate {0,1,2,3}
@attribute fibrosis_of_the_papillary_dermis {0,1,2,3}
57
@attribute exocytosis {0,1,2,3}
@attribute acanthosis {0,1,2,3}
@attribute hyperkeratosis {0,1,2,3}
@attribute parakeratosis {0,1,2,3}
@attribute clubbing_of_the_rete_ridges {0,1,2,3}
@attribute elongation_of_the_rete_ridges {0,1,2,3}
@attribute thinning_of_the_suprapapillary_epidermis {0,1,2,3}
@attribute spongiform_pustule {0,1,2,3}
@attribute munro_microabcess {0,1,2,3}
@attribute focal_hypergranulosis {0,1,2,3}
@attribute disappearance_of_the_granular_layer {0,1,2,3}
@attribute vacuolisation_and_damage_of_basal_layer {0,1,2,3}
@attribute spongiosis {0,1,2,3}
@attribute saw-tooth_appearance_of_retes {0,1,2,3}
@attribute follicular_horn_plug {0,1,2,3}
@attribute perifollicular_parakeratosis {0,1,2,3}
@attribute inflammatory_monoluclear_inflitrate {0,1,2,3}
@attribute band-like_infiltrate {0,1,2,3}
@attribute Age INTEGER
@attribute class {1,2,3,4,5,6}
58
ANEXO B
REGLAS GENERADAS POR EL ALGORITMO DE ÁRBOLES DE DECISIÓN
polygonal_papules = 0
| follicular_papules = 0
| | knee_and_elbow_involvement = 0
| | | koebner_phenomenon = 0
| | | | scaling = 0: 5 (7.0/1.0)
| | | | scaling = 1: 5 (35.0/8.0)
| | | | scaling = 2
| | | | | scalp_involvement = 0: 2 (51.0/15.0)
| | | | | scalp_involvement = 1: 1 (7.0/2.0)
| | | | | scalp_involvement = 2: 1 (3.0/1.0)
| | | | | scalp_involvement = 3: 2 (0.0)
| | | | scaling = 3: 2 (13.0/2.0)
| | | koebner_phenomenon = 1
| | | | scalp_involvement = 0: 4 (28.0/3.0)
| | | | scalp_involvement = 1: 1 (4.0)
59
| | | | scalp_involvement = 2: 1 (1.0)
| | | | scalp_involvement = 3: 4 (0.0)
| | | koebner_phenomenon = 2
| | | | itching = 0: 4 (8.0)
| | | | itching = 1: 4 (1.0)
| | | | itching = 2
| | | | | definite_borders = 0: 4 (3.0)
| | | | | definite_borders = 1: 2 (1.0)
| | | | | definite_borders = 2: 1 (4.0)
| | | | | definite_borders = 3: 1 (0.0)
| | | | itching = 3: 1 (2.0)
| | | koebner_phenomenon = 3: 4 (4.0/1.0)
| | knee_and_elbow_involvement = 1
| | | scalp_involvement = 0
| | | | erythema = 0: 2 (0.0)
| | | | erythema = 1: 5 (2.0)
| | | | erythema = 2
| | | | | family_history = 0: 2 (4.0/1.0)
| | | | | family_history = 1: 1 (2.0)
| | | | erythema = 3: 2 (1.0)
| | | scalp_involvement = 1: 1 (7.0)
60
| | | scalp_involvement = 2: 1 (4.0)
| | | scalp_involvement = 3: 1 (0.0)
| | knee_and_elbow_involvement = 2: 1 (52.0)
| | knee_and_elbow_involvement = 3: 1 (20.0)
| follicular_papules = 1
| | knee_and_elbow_involvement = 0: 5 (7.0/1.0)
| | knee_and_elbow_involvement = 1: 6 (2.0)
| | knee_and_elbow_involvement = 2: 1 (2.0)
| | knee_and_elbow_involvement = 3: 5 (0.0)
| follicular_papules = 2
| | Age <= 23: 6 (12.0)
| | Age > 23: 5 (4.0/1.0)
| follicular_papules = 3: 6 (6.0)
polygonal_papules = 1: 3 (1.0)
polygonal_papules = 2: 3 (41.0)
polygonal_papules = 3: 3 (27.0)
61
ANEXO C
INVENTARIO DE TABLAS DE BASE DE DATOS GENERADA POR DRUPAL
N° Tablas de base de datos
1 actions
2 authmap
3 backup_migrate_destinations
4 backup_migrate_profiles
5 backup_migrate_schedules
6 backup_migrate_sources
7 batch
8 block
9 blocked_ips
10 block_custom
11 block_node_type
12 block_role
13 cache
14 cache_block
15 cache_bootstrap
16 cache_field
17 cache_filter
18 cache_form
19 cache_image
20 cache_menu
62
21 cache_page
22 cache_path
23 cache_rules
24 cache_update
25 cache_views
26 cache_views_data
27 comment
28 context
29 ctools_css_cache
30 ctools_object_cache
31 date_formats
32 date_format_locale
33 date_format_type
34 field_config
35 field_config_instance
36 field_data_body
37 field_data_comment_body
38 field_data_field_afectaci_n_de_la_mucosa_bu
39 field_data_field_apellidos_usuario
40 field_data_field_apellido_s_per
41 field_data_field_apellido_s_per_em
42 field_data_field_celular
43 field_data_field_celular_per
44 field_data_field_celular_per_em
45 field_data_field_comez_n
46 field_data_field_correo_electr_nico
47 field_data_field_c_digo_m_dico
63
48 field_data_field_c_i_pasaporte
49 field_data_field_c_i_pasaporte_pa
50 field_data_field_diagn_stico
51 field_data_field_direcci_n_domiciliaria_per
52 field_data_field_direcci_n_domicilio
53 field_data_field_edad
54 field_data_field_eritema
55 field_data_field_escalada
56 field_data_field_especialidad
57 field_data_field_estatura_m_
58 field_data_field_fecha_de_nacimiento
59 field_data_field_fen_meno_de_koebner
60 field_data_field_fronteras_definidas
61 field_data_field_grupo_sangu_neo
62 field_data_field_historial_familiar
63 field_data_field_image
64 field_data_field_nombres_usuario
65 field_data_field_nombre_s_per
66 field_data_field_nombre_s_per_em
67 field_data_field_n_h_c_
68 field_data_field_n_h_c_reg
69 field_data_field_participaci_n_de_cuero_cab
70 field_data_field_participaci_n_de_rodilla_y
71 field_data_field_peso_kg_
72 field_data_field_presi_n_arterial_diast_lic
73 field_data_field_presi_n_arterial_sist_lica
74 field_data_field_p_pulas_foliculares
64
75 field_data_field_p_pulas_poligonales
76 field_data_field_raza_per
77 field_data_field_receta_m_dica
78 field_data_field_recomendaciones_e_indicaci
79 field_data_field_sexo
80 field_data_field_sexo_per
81 field_data_field_tags
82 field_data_field_telefono_fijo
83 field_data_field_tel_fono_per
84 field_data_field_temperatura
85 field_group
86 field_revision_body
87 field_revision_comment_body
88 field_revision_field_afectaci_n_de_la_mucosa_bu
89 field_revision_field_apellidos_usuario
90 field_revision_field_apellido_s_per
91 field_revision_field_apellido_s_per_em
92 field_revision_field_celular
93 field_revision_field_celular_per
94 field_revision_field_celular_per_em
95 field_revision_field_comez_n
96 field_revision_field_correo_electr_nico
97 field_revision_field_c_digo_m_dico
98 field_revision_field_c_i_pasaporte
99 field_revision_field_c_i_pasaporte_pa
100 field_revision_field_diagn_stico
101 field_revision_field_direcci_n_domiciliaria_per
65
102 field_revision_field_direcci_n_domicilio
103 field_revision_field_edad
104 field_revision_field_eritema
105 field_revision_field_escalada
106 field_revision_field_especialidad
107 field_revision_field_estatura_m_
108 field_revision_field_fecha_de_nacimiento
109 field_revision_field_fen_meno_de_koebner
110 field_revision_field_fronteras_definidas
111 field_revision_field_grupo_sangu_neo
112 field_revision_field_historial_familiar
113 field_revision_field_image
114 field_revision_field_nombres_usuario
115 field_revision_field_nombre_s_per
116 field_revision_field_nombre_s_per_em
117 field_revision_field_n_h_c_
118 field_revision_field_n_h_c_reg
119 field_revision_field_participaci_n_de_cuero_cab
120 field_revision_field_participaci_n_de_rodilla_y
121 field_revision_field_peso_kg_
122 field_revision_field_presi_n_arterial_diast_lic
123 field_revision_field_presi_n_arterial_sist_lica
124 field_revision_field_p_pulas_foliculares
125 field_revision_field_p_pulas_poligonales
126 field_revision_field_raza_per
127 field_revision_field_receta_m_dica
128 field_revision_field_recomendaciones_e_indicaci
66
129 field_revision_field_sexo
130 field_revision_field_sexo_per
131 field_revision_field_tags
132 field_revision_field_telefono_fijo
133 field_revision_field_tel_fono_per
134 field_revision_field_temperatura
135 file_managed
136 file_usage
137 filter
138 filter_format
139 flood
140 history
141 image_effects
142 image_styles
143 languages
144 locales_source
145 locales_target
146 menu_custom
147 menu_links
148 menu_per_role
149 menu_router
150 node
151 node_access
152 node_comment_statistics
153 node_revision
154 node_type
55 queue
67
156 rdf_mapping
157 registry
158 registry_file
159 role
160 role_permission
161 rules_config
162 rules_dependencies
163 rules_scheduler
164 rules_tags
165 rules_trigger
166 search_dataset
167 search_index
168 search_node_links
169 search_total
170 semaphore
171 sequences
172 sessions
173 shortcut_set
174 shortcut_set_users
175 system
176 taxonomy_index
177 taxonomy_term_data
178 taxonomy_term_hierarchy
179 taxonomy_vocabulary
180 url_alias
181 users
182 users_roles
68
183 variable
184 views_data_export
185 views_data_export_object_cache
186 views_display
187 views_view
188 watchdog