arbol de decision en vb.net

22
FACULTAD INFORMÁTICA Y TELECOMUNICACIONES ESCUELA DE INFORMÁTICA TEMA TEOREMA DE BAYES ASIGANATURA SISTEMAS EXPERTOS PROFESORA ING. MARIUXI DE LA CRUZ INTEGRANTES GONZABAY DE LA ROSA JUAN GONZALEZ SOLEDISPA EDUARDO TOMALA REYES JUAN NIVEL 5/2 AÑO LECTIVO

Upload: 086598594

Post on 30-Dec-2015

100 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Arbol de Decision en Vb.net

FACULTAD INFORMÁTICA Y TELECOMUNICACIONESESCUELA DE INFORMÁTICA

TEMA

TEOREMA DE BAYES

ASIGANATURA

SISTEMAS EXPERTOS

PROFESORA

ING. MARIUXI DE LA CRUZ

INTEGRANTES

GONZABAY DE LA ROSA JUAN GONZALEZ SOLEDISPA EDUARDO

TOMALA REYES JUAN

NIVEL

5/2

AÑO LECTIVO

2013– 2014

Page 2: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

INTRODUCCION

El presente trabajo consiste en el desarrollo de un Sistema Experto aplicado a la toma de decisiones que se propone como herramienta informática para asistir al médico en el diagnóstico de enfermedades en el paciente.

Realizando un proceso internamente de probabilidades usando la aplicación del teorema de Bayes que es una útil formula que nos permite dar la vuelta a las probabilidades condicionadas y resolver casos prácticos en los que la información disponible a priori no permite realizar el cálculo de forma directa. Este sistema, además, ofrece la opción de mostrar una lista sobre las enfermedades que tienen los pacientes con sus respectivos datos. El diagnóstico consiste en establecer la enfermedad de un paciente E: Diabetes, a partir de una serie de síntomas. S1: Orina con frecuencia; S2: Mucha hambre; S3: Pérdida de peso; S4: Aumento de sed.

Las herramientas utilizadas para modelar y desarrollar el sistema son: SQL Server 2008 y Visual Studio Professional 2008, respectivamente. Como resultado final, se presenta una aplicación práctica para determinar si tienen o no el paciente dicha enfermedad a través del ingreso de los síntomas de la persona y además nos permitirá almacenar la información para luego obtener los resultados de todos los pacientes con sus respectivos datos.

OBJETIVO GENERAL

Page 3: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

Desarrollar una aplicación de Teorema de Bayes aplicado en Visual Studio 2008 para determinar el tipo de enfermedad de un paciente y posteriormente realizar el almacenamiento de los datos en SQL Server 2008.

OBJETIVOS ESPECÍFICOS

Recopilar datos necesarios para su posterior análisis. Identificar variables que serán utilizados para la toma de decisión. Realizar los diferentes procesos para el almacenamiento respectivo de los datos como

síntomas del paciente, entre otros Visualizar una especie de historial con datos del paciente. Realizar el proceso del Teorema Bayes manualmente. Analizar y realizar una lógica apropiada para el proceso. Obtener el resultado si el paciente tiene o no la enfermedad. Presentar el gráfico de árbol de decisión.

JUSTIFICACIÓN

Mediante el uso del conocimiento adquirido sobre el Teorema de Bayes se tratara de realizar una aplicación para determinar el tipo de enfermedad de una persona con el ingreso de los síntomas.

MARCO TEORICO

Page 4: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

El Teorema de Bayes viene a seguir el proceso inverso al que hemos visto en el Teorema de la probabilidad total:

Teorema de la probabilidad total: a partir de las probabilidades del suceso A (probabilidad de que llueva o de que haga buen tiempo) deducimos la probabilidad del suceso B (que ocurra un accidente).

Teorema de Bayes: a partir de que ha ocurrido el suceso B (ha ocurrido un accidente) deducimos las probabilidades del suceso A (¿estaba lloviendo o hacía buen tiempo?).

La fórmula del Teorema de Bayes es:

Tratar de explicar estar fórmula con palabras es un galimatías, así que vamos a intentar explicarla con un ejemplo. De todos modos, antes de entrar en el ejercicio, recordar que este teorema también exige que el suceso A forme un sistema completo.

 

Ejercicio 1º: El parte meteorológico ha anunciado tres posibilidades para el fin de semana:

a) Que llueva: probabilidad del 50%.b) Que nieve: probabilidad del 30%c) Que haya niebla: probabilidad del 20%.

Según estos posibles estados meteorológicos, la posibilidad de que ocurra un accidente es la siguiente:

a) Si llueve: probabilidad de accidente del 10%.b) Si nieva: probabilidad de accidente del 20%c) Si hay niebla: probabilidad de accidente del 5%.

Resulta que efectivamente ocurre un accidente y como no estábamos en la ciudad no sabemos qué tiempo hizo (nevó, llovió o hubo niebla). El teorema de Bayes nos permite calcular estas probabilidades:

Las probabilidades que manejamos antes de conocer que ha ocurrido un accidente se denominan "probabilidades a priori" (lluvia con el 60%, nieve con el 30% y niebla con el 10%).

Page 5: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

Una vez que incorporamos la información de que ha ocurrido un accidente, las probabilidades del suceso A cambian: son probabilidades condicionadas P (A/B), que se denominan "probabilidades a posteriori".

Vamos a aplicar la fórmula:

a) Probabilidad de que estuviera lloviendo:

La probabilidad de que efectivamente estuviera lloviendo el día del accidente (probabilidad a posteriori) es del 71,4%.

b) Probabilidad de que estuviera nevando:

La probabilidad de que estuviera nevando es del 21,4%.

c) Probabilidad de que hubiera niebla:

La probabilidad de que hubiera niebla es del 7,1%.

Page 6: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

ANALISIS DE LOS DATOS RECOPILADOS

A continuación se muestra una tabla con los datos que se logró recoger inicialmente con la investigación donde se puede apreciar 5 enfermedades con sus respectivos síntomas, para el desarrollo de nuestra aplicación se ha considerado la enfermedad de diabetes. Con la investigación realizada se llegó a la conclusión de que si el paciente tiene por lo menos tres síntomas o los cuatros simultáneamente deben tener la enfermedad.

ENFERMEDADES

SINTOMAS Diabetes

Glaucoma agudo

Litiasis

Renal

Úlcera corne

al

Hipotiroidismo

Orina con frecuencia xMucha hambre xPérdida de peso xAumento de sed x

Dolor frec. en los ojos x xEnrojecimiento en ojos x x

Dism. de Visión x xDolor de cabeza x

Náusea x xVómito x x

Dolor lumbar xCistitis x

Infección vía urinaria xDepresión x

Palidez xDisminuye la concent. x

Caida de cabello y poco brillo xFatiga x

Anemia secundaria x

En la siguiente tabla se muestra el número de personas con las enfermedades que presentaban en el período del 2013.

ENFERMEDADES

Diabetes Glaucoma agudo

Litiasis Renal

Úlcera corneal

Hipotiroidismo

Número de personas 30 30 35 27 12

Page 7: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

Cabe recalcar que se han considerado un total de 61 pacientes en los cuales constan 30 pacientes enfermos y 31 no enfermos La base de conocimientos investigados y que serán de gran ayuda para realizar los procesos que se llevaran a cabo para la aplicación del método son los siguientes.

DIABETES DIABETESEnfer

.Orina con frecuencia

Mucha hambre

Pérdida de peso

Aumento de sed

Enfer.

Orina con frecuencia

Mucha hambre

Pérdida de peso

Aumento de sed

P 1 e 1 1 1 1 P 32 ne 1 0 1 0P 2 e 1 0 1 1 P 33 ne 1 0 0 1P 3 e 1 0 1 1 P 34 ne 1 1 0 0P 4 e 0 1 1 1 P 35 ne 1 0 0 0P 5 e 0 1 1 1 P 36 ne 1 0 1 0P 6 e 0 1 1 1 P 37 ne 0 1 1 0P 7 e 0 1 1 1 P 38 ne 1 1 0 0P 8 e 1 1 1 0 P 39 ne 0 1 0 1P 9 e 1 0 1 1 P 40 ne 1 0 0 0

P 10 e 0 1 1 1 P 41 ne 1 1 0 0P 11 e 1 1 1 0 P 42 ne 1 0 0 1P 12 e 0 1 1 1 P 43 ne 0 1 0 1P 13 e 0 1 1 1 P 44 ne 0 1 1 0P 14 e 0 1 1 1 P 45 ne 1 0 1 0P 15 e 0 1 1 1 P 46 ne 1 0 0 0P 16 e 1 1 1 0 P 47 ne 0 1 0 0P 17 e 0 1 1 1 P 48 ne 1 1 0 0P 18 e 0 1 1 1 P 49 ne 0 1 1 0P 19 1 0 1 1 P 50 ne 1 0 0 0P 20 e 1 1 1 1 P 51 ne 0 0 1 0P 21 e 0 1 1 1 P 52 ne 0 1 1 0P 22 e 1 1 0 1 P 53 ne 0 1 0 1P 23 e 0 1 1 1 P 54 ne 0 0 1 0P 24 e 0 1 1 1 P 55 ne 0 0 1 1P 25 e 1 0 1 1 P 56 ne 0 1 1 0P 26 e 1 1 1 0 P 57 ne 0 1 0 0P 27 e 0 1 1 1 P 58 ne 1 0 1 0P 28 e 0 1 1 1 P 59 ne 0 0 1 0P 29 e 1 1 1 0 P 60 ne 0 0 1 1P 30 e 0 1 1 1 P 61 ne 0 1 0 0P 31 ne 1 1 0 0

PROCESO MANUAL DEL TEOREMA DE BAYES

Page 8: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

Para realizar las pruebas en nuestra aplicación y evaluar si cumple con los objetivos para lo cual fue desarrollada que es la de determinar si una persona tiene o no la enfermedad cuando se ingresa un paciente nuevo en el registro. Este proceso para identificar la aplicación lo realiza internamente aplicando el conocido Teorema de Bayes.

La tabla anterior es la que se utilizará para empezar con el proceso del teorema de Bayes, hemos considerado las variables para los síntomas y enfermedad:

Diabetes: e No tiene diabetes: ne Orina con frecuencia: s1 Mucha hambre: s2 Pérdida de peso: s3 Aumento de sed: s4

Las fórmulas que se utilizarán se detallaran a continuación:

Dónde:

P (e ) : Es la probabilidad de que tenga la enfermedad.

P( s1/e ): Es la probabilidad de que tenga el síntoma 1 y de que tenga la enfermedad.

P( s1): Probabilidad de que tenga el síntoma 1.

Calculo de la probabilidad de la enfermedad:

Calculo de la probabilidad que no tenga la enfermedad:

Calculo de la probabilidad de que tenga el síntoma 1 y cuando tiene la enfermedad.

P(e /s 1)=P(s 1/e )P( e )

P(s1 )

P(e )= N °eN ° total de personas

P(ne )=1−P(e )

P( S1/e )=N °P( S1∩e )N °P( e )

Page 9: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

Calculo de la probabilidad de que tenga el síntoma 1.

Por ejemplo:

Se tiene un paciente con el síntoma 1. Determinar si tiene o no la persona la enfermedad.

Conclusión: Con los síntomas de orina con frecuencia el nuevo paciente tiene la probabilidad del 0.54 que equivale al 54% de no padecer la enfermedad de diabetes según los resultados mostrados anteriormente.

Con los nuevos datos calculados se nos registraría un nuevo paciente que no tiene la enfermedad.

DIABETES

Enfer.Orina con frecuencia

Mucha hambre

Pérdida de peso

Aumento de sed

P 62 ne 1 0 0 0

P( S1)=N° P(S 1)

N °total de personas

P( S1/e )=N °P( S1∩e )N °P( e )

=1330

=0 . 43

P(e )= N °eN ° total de personas

=3061

=0 . 49

P( S1)=N° P(S 1)

N °total de personas=28

61=0 . 46

P(e /s 1)=P(s 1/e )P( e )

P(s1 )=0 . 43∗0 . 49

0.46=0 . 46

P(ne )=1−P(e )=1−0 .46=0 .54

Page 10: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

DESARROLLO DE LA APLICACIÓN EN SQL SERVER 2008

Se utilizó SQL Server 2008 para el almacenamiento de la información al momento que se quiere ingresar, actualizarlos datos de un nuevo paciente.

Nuestra entidad relación utilizada para todo el proceso será la siguiente:

Page 11: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

En la utilización de SQL Server 2008 se han desarrollado procesos que permita insertar, llenar con información algún elemento de visual, actualizar datos para luego hacer la llamada en visual de manera inmediata para que se ejecuten y cada uno de ellos realice la tarea programada que deben de realizar. Además de los procesos que se utilizaron también se realizaron funciones para ayudar a tener una nueva presentación.

Además de los procesos de insertar, actualizar; también hemos realizada a aquellos que son utilizados para realizar los respectivos cálculos para el Teorema de Bayes que son de importancia para determinar la probabilidad de que un nuevo paciente con ciertos síntomas tengan la posible enfermedad.

DESARROLLO DE LA APLICACIÓN EN VISUAL 2008

La aplicación fue desarrollada en la plataforma .Net, utilizando como a Microsoft Visual Basic 2008, para representar los conocimientos adquiridos del experto a través de una programación estructurada. Maneja una Base de Datos levantada en Microsoft SQL Server Express 2008 que leerá y escribirá según las circunstancias.

Para la conexión a la base de datos se han creado clases para la respectiva conexión y realizar los procesos para ejecutar procedimientos realizados en SQL Server 2008.

INTERFAZ CON EL USUARIO

Mediante este componente se realiza la interacción entre un Sistema Experto y un usuario. Es altamente interactiva, para conducir este proceso de manera aceptable para el usuario, es especialmente importante el diseño adecuado del interfaz de usuario. Esto puede requerir diseñar el interfaz usando menús o gráficos. Debe ser intuitivo, fácil de manejar. No se debe olvidar que el sistema experto simula el comportamiento de un experto. Debe ser cómodo y relativamente sencillo en cuanto al manejo, ya que el usuario debe tener la máxima facilidad para manejar el software. La interfaz debe ser amigable en la entrada y salida de información. VENTANA DE USUARIO: Se muestra una ventana de acceso para el usuario para que este pueda ingresar a través de su usuario y contraseña.

Page 12: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

VENTANA PRINCIPAL: La ventana siguiente nos muestra una interfaz agradable para el usuario y fácil de utilizar la cual nos presenta un menú con varias alternativas de opción. Existen opciones que no estarán disponibles para el usuario debido a que el paciente no tiene la posibilidad de ver el funcionamiento total del sistema.

VENTANA INGRESO DE DATOS DEL DOCTOR: La ventana siguiente nos muestra una interfaz agradable para el usuario y fácil de utilizar que nos permitirá ingresar los datos del doctor como apellidos, nombres, fecha de nacimiento, etc; con botones que son fáciles de identificar como es el botón guardar y cancelar. Además nos adicional a esto nos muestra una ventana cuando se guarda los datos del médico permitiéndonos elegir si se desea generar un usuario y contraseña para el acceso al sistema.

Page 13: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

VENTANA INGRESO DE DATOS DEL PACIENTE: La ventana siguiente nos muestra una interfaz agradable para el usuario y fácil de utilizar que nos permitirá ingresar los datos del paciente como apellidos, nombres, fecha de nacimiento, etc; con botones que son fáciles de identificar como es el botón síntomas y cancelar. Cuando se da clic en el botón síntomas nos mostrara una nueva ventana que nos permitirá seleccionar los síntomas que tendrá el nuevo paciente y adicional a esto nos muestra una ventana cuando se guarda los datos del paciente permitiéndonos elegir si se desea generar un usuario y contraseña para el acceso al sistema.

Page 14: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

VENTANA CONSULTA DE DATOS DEL PACIENTE: La siguiente ventana nos muestra una consulta de usuarios con datos mediante el cual la búsqueda se podrá realizar por medio de cédula o apellidos y nombre del usuario. Este formulario tendrá un botón donde el usuario podrá realizar una consulta sí que tiene la enfermedad cuando posee dichos síntomas mostrándonos un diagnóstico. Además esta ventana esta validada para que el usuario cuando desee realizar una nueva consulta a sus datos y ya posee la enfermedad no me permita realizar este proceso. Se generara un reporte cuando se dé clic en el botón de reporte.

VENTANA CONSULTA DE PROBABILIDAD: La ventana que se muestra a continuación muestra datos generales de los pacientes con sus respectivos síntomas y probabilidades que obtuvieron cuando se realizó el ingreso.

Page 15: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

VENTANA CONSULTA DEL ARBOL DE PROBABILIDADES: El siguiente gráfico muestra el árbol con sus respectivas probabilidades permitiéndonos imprimir cuando se dé clic en el botón reportes.

VENTANA DE ACTUALIZAR

En los siguientes gráficos se aprecian las ventanas de actualizar los datos del paciente y el doctor respectivamente.

Page 16: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

VENTANA DE CAMBIAR USUARIO Y CONTRASEÑA

La ventana siguiente la persona podrá realizar un cambio de usuario y contraseña para que pueda acceder al sistema, permitiéndole establecer información que sea fácil de recordar y que no pueda tener problemas durante el ingreso.

Page 17: Arbol de Decision en Vb.net

9

UNIVERSIDAD ESTATAL PENINSULA DE SANTA ELENAFACULTAD DE SISTEMAS Y TELECOMUNICACIONES

Escuela de Informática

VENTANA DE REPORTE

En la opción de reporte del menú principal se presenta una opción que permitirá visualizar un informe de los pacientes con sus datos.

CONCLUSIONES

Se necesitó conocer el proceso adecuado para el correcto desarrollo de la aplicación.

Se pueden desarrollar aplicaciones para la colaboración a especialistas de diferentes áreas en el proceso de toma de decisiones, sobre todo a médicos para diagnosticar enfermedades.

El desarrollo de esta aplicación permite administrar la información del paciente y ayuda al médico a diagnosticar si el paciente tiene o no la enfermedad.