redes bayesianas

7
Redes Bayesianas - Análisis probabilístico de aprobación de un módulo Faicán Rosa Japa Lauro Martínez Jhymer UNL CIS-loja UNL CIS-loja UNL CIS-loja Aliation El presente artículo tiene como finalidad dar a conocer los conceptos más relevantes de Redes Bayesianas, asi como también el funcionamiento de la herramienta Elvira en conjunto con la herramienta netbeans en la demostración de un ejemplo para la predicción de aprobación de un módulo, tomando en cuenta las materias, sus respectivas calificaciones y las asistencias de un alumno. Palabras Clave: Redes bayesianas, Teorema de Bayes, Probabilidad, Inferencia Introducción Las redes bayesianas son modelos gráficos probabilísticos que permiten organizar un conjunto de variables y las relaciones existentes entre ellas, se puede hacer también inferencia bayesiana es decir estimar la probabilidad posterior en base a las variables ya conocidas, estos modelos poseen diferentes aplicaciones que permiten el diagnostico, clasificación y la toma de decisiones, estas informaciones pueden ser interpretadas como relaciones causa – efecto.(Constantino Malagon Luque, n.d.) Estas redes eran hechas a mano basándose en el conocimiento de un experto ahora las redes bayesianas son elaboradas desarrollando diversas técnicas para que el aprendizaje pueda llevarse a cabo a partir de ciertos datos, asi mismo es posible compartir estos datos como un caso de estudio. Permite representar el conocimiento con incertidumbre, además se puede manipular el razonamiento y la toma de decisiones con multiples variables. La reglas o probabilidades se pueden estimar a partir de datos con una interpretación clara y bien estructurada teniendo en la actualidad un gran desarrollo.(Bedoya, n.d.) História Thomas Bayes, matemático británico del siglo XVIII, mundialmente conocido por su Teorema de Bayes.(Puga, Agosto de 2007) Este teorema solucionaba un problema que hasta el momento no tenía una solución: el cálculo de la probabil- idad de las causas que interfieren en un suceso, dadas las Figure 1. Thomas Bayes probabilidades de este. Figure 2. Fórmula de Bayes Si bien tenemos conocimiento de las probabilidades de un suceso, dado que se producen otros sucesos, con este teorema se calcula la probabilidad de que unos sucesos dado que han originado un suceso determinado. Más técnicamente, este teorema trata de obtener la probabilidad inversa de una probabilidad.(Larrañaga, n.d.) El término "redes bayesianas" fue acuñado por Judea Pearl en 1985 a quien a su vez se le considera el padre de las redes bayesianas. A finales de 1980 los textos seminales Razonamiento Probabilístico en Sistemas Inteligentes y Razonamiento Probabilístico en Sistemas Expertos resumen las propiedades de las redes Bayesianas y ayudó a establecer las mismas

description

Interesante trabajo de investigacion

Transcript of redes bayesianas

  • Redes Bayesianas - Anlisis probabilstico de aprobacin de un mdulo

    Faicn Rosa Japa Lauro Martnez JhymerUNL CIS-loja UNL CIS-loja UNL CIS-loja

    Affiliation

    El presente artculo tiene como finalidad dar a conocer los conceptos ms relevantes de RedesBayesianas, asi como tambin el funcionamiento de la herramienta Elvira en conjunto con laherramienta netbeans en la demostracin de un ejemplo para la prediccin de aprobacin deun mdulo, tomando en cuenta las materias, sus respectivas calificaciones y las asistencias deun alumno.

    Palabras Clave: Redes bayesianas, Teorema de Bayes, Probabilidad, Inferencia

    Introduccin

    Las redes bayesianas son modelos grficos probabilsticosque permiten organizar un conjunto de variables y lasrelaciones existentes entre ellas, se puede hacer tambininferencia bayesiana es decir estimar la probabilidadposterior en base a las variables ya conocidas, estosmodelos poseen diferentes aplicaciones que permiten eldiagnostico, clasificacin y la toma de decisiones, estasinformaciones pueden ser interpretadas como relacionescausa efecto.(Constantino Malagon Luque, n.d.)

    Estas redes eran hechas a mano basndose en elconocimiento de un experto ahora las redes bayesianasson elaboradas desarrollando diversas tcnicas para que elaprendizaje pueda llevarse a cabo a partir de ciertos datos,asi mismo es posible compartir estos datos como un caso deestudio.

    Permite representar el conocimiento con incertidumbre,adems se puede manipular el razonamiento y la toma dedecisiones con multiples variables.

    La reglas o probabilidades se pueden estimar a partirde datos con una interpretacin clara y bien estructuradateniendo en la actualidad un gran desarrollo.(Bedoya, n.d.)

    Histria

    Thomas Bayes, matemtico britnico del siglo XVIII,mundialmente conocido por su Teorema de Bayes.(Puga,Agosto de 2007)

    Este teorema solucionaba un problema que hasta elmomento no tena una solucin: el clculo de la probabil-idad de las causas que interfieren en un suceso, dadas las

    Figure 1. Thomas Bayes

    probabilidades de este.

    Figure 2. Frmula de Bayes

    Si bien tenemos conocimiento de las probabilidades deun suceso, dado que se producen otros sucesos, con esteteorema se calcula la probabilidad de que unos sucesosdado que han originado un suceso determinado. Mstcnicamente, este teorema trata de obtener la probabilidadinversa de una probabilidad.(Larraaga, n.d.)

    El trmino "redes bayesianas" fue acuado por JudeaPearl en 1985 a quien a su vez se le considera el padre de lasredes bayesianas.

    A finales de 1980 los textos seminales RazonamientoProbabilstico en Sistemas Inteligentes y RazonamientoProbabilstico en Sistemas Expertos resumen las propiedadesde las redes Bayesianas y ayud a establecer las mismas

  • Faicn Rosa-Japa Lauro-Martnez Jhymer Tutor: Ing. Henry Paz

    como un campo de estudio.

    Variantes informales de este tipo de redes fueron uti-lizadas por el jurista John Henry Wigmore, en forma degrafos de Wigmore, para analizar la evidencia en un juicioen 1913 y el llamado diagrama de rutas que fue desarrolladopor el genetista Sewall Wright y utilizado en ciencias de laconducta y sociales.(Sucar, INAOE 2011)

    Concepto

    Las redes bayesianas son grafos aciclicos dirigdos quedescriben la distribucin de probabilidad, en la cual los no-dos representan variables aleatorias y los arcos representanrelaciones de dependencia directa entre las variables.

    Son un conjunto de variables proposicionales definidascomo V, un conjunto de relaciones binarias y una distribu-cin de probabilidad conjunta definidas sobre las variablesV,E.(Larragaa, 26 de julio de 2002)

    Los nodos de una red bayesiana deben ser variablesproposicionales (toman un conjunto exhaustivo y excluyentede valores).

    Ejemplo de una red:

    Figure 3. Ejemplo de una red bayesiana. Los nodos repre-sentan variables aleatorias y los arcos relaciones de depen-dencia.

    (Fernndez, n.d.)

    Estructura de uns Red Bayesiana

    Bsqueda (score).- Permite medir la estructura de lared y el conocimiento que se puede adquirir, proced-imiento de bsqueda para determinar el mejor modelode datos.

    Anlisis de Dependencia.- Determinar el grado de de-pendencia usando pruebas estadsticas.

    Aprendizaje

    Paramtrico.- Aprende las probabilidades de la red enbase a casos dados.

    Estructural.- Son algoritmos capaces de aprenderenlaces.(Ricardo Conejo, Valencia Espaa, 2001)

    Inferencia, Desicin y Aprendizaje

    La informacin proporcionada por una o ms variablesque se observan (evidencia) se propaga por la red y seactualiza a esto se le llama inferencia.

    Es posible aprender las probabilidades condicionalesque describen las relaciones entre las variables a partirde los datos. Incluso es posible aprender la estructuracompleta de la red a partir de datos completos o conalgunos de sus valores desconocidos a esto se le denominaAprendizaje.(Nava, n.d.)

    Las Redes Bayesianas pueden utilizarse para tomardecisiones ptimas introduciendo posibles acciones y lautilidad de sus resultados utilizada en la toma de decisiones.

    Inferencia

    Tiene por objeto hallar la distribucin de probabilidad dedeterminadas variables de inters dados lo valores de otrasvariables.

    Diagnstico

    Figure 4. Tipo de inferencia

    Frmula: P(X|Y)

    Prediccin Frmula: P(Y|X)

    IntercausalFrmula: P(Y|A,-B)(Lozano, n.d.)

  • Faicn Rosa-Japa Lauro-Martnez Jhymer Tutor: Ing. Henry Paz

    Figure 5. Tipo de inferencia

    Figure 6. Tipo de inferencia

    Dimensin Cualitativa

    La dimensin cualitativa de una red bayesiana se basaen la teora de grafos. Aunque la definicin de grafo puedevariar en funcin de los autores (p. e. Harary, 1969; Ronald,1988; Spirtes, Glymour, y Scheines, 2000; Tutte, 1984;Xiang, 2002), un grafo puede definirse como un conjuntode nodos (variables o vrtices) y un conjunto de aristas (oenlaces).(Moral, n.d.)

    Sin embargo, una red bayesiana es un tipo especial degrafo, o lo que se conoce como grafo dirigido acclico(o GDA). En un GDA las aristas o enlaces que unen lasvariables estn orientados y se representan grficamentecomo flechas. Los enlaces dirigidos de una red bayesianaindican influencia causal o dependencia entre las variables.

    As pues, el grafo A => B indica influencia directade A sobre B; o lo que es lo mismo, que B depende deA. En trminos causales diramos que A causa a B o queB es el efecto de A. En una red bayesiana la estructuragrfica codifica relaciones de dependencia e independenciacondicional entre las variables que son usadas para agilizar laactualizacin de probabilidades y la inferencia estadstica.(yJavier Dolado, n.d.)

    Dimensin Cuantitativa

    En la dimensin cuantitativa una red bayesiana constade tres elementos importantes: el concepto de probabilidadcomo un grado de creencia subjetiva relativa a la ocur-rencia de un evento, el teorema de Bayes como heursticoactualizador de creencias y un conjunto de funciones deprobabilidad condicionada.

    En primer lugar, la probabilidad puede ser entendida, al

    menos, de cuatro formas: clsicamente, como frecuenciarelativa cuando los ensayos tienden a infinito, axiomtica-mente o subjetivamente.

    Las tres primeras son compatibles y se las ha englobadobajo el nombre de perspectiva clsica de la probabilidado frecuentista y suele contraponerse a la cuarta que se hadenominado perspectiva bayesiana de la probabilidad

    Es en esta cuarta acepcin en la que se basan las redesbayesianas al asumir que la probabilidad es un grado decreencia atribuible a la ocurrencia de sucesos.

    Utilizacin de las Redes Bayesianas

    El uso de las redes bayesianas ha sido muy difundidaen diferentes campos como en la manipulacin de sistemasexpertos en la medicina, en la depuracin de programas deinteligencia artificial, en la gentica, en procesos de produc-cin; todos estos enfocados a la solucin de problemas y enla identificacin de probabilidades que disminuyan riesgos.

    El uso que se le da a las redes bayesiana en el estu-dio y tratamiento de datos, consiste bsicamente en mejo-rar el esquema de prevencin de riesgo operacional, tal quesirva como sistema de ayuda a la toma de decisiones en unasituacin de emergencia y realizar mejoras en las estrategiasde operacionales.(Lozano, n.d.)

    Encriptacin del disco, archivos o correo electrnico. Prevencin de fraudes.- Monitorear las transacciones

    y actividades llevadas a cabo por el usuario despues dela autenticacin al iniciar la sesin.

    Demanda de acceso desde cualquier lugar y encualquier momento.- adaptar el acceso de ususariosdesde ubicaciones remotas.

    Adaptar el acceso de usuarios desde sistemas descono-cidos como: cabinas pblicas, sistemas de hotelera oestaciones de trabajo compartidas.

    El programa Elvira

    El 1997 se plantea un proyecto con el objetivo de crearun entorno que sirviera, por un lado, para la investigacin denuevos mtodos y algoritmos de razonamiento probabilsticoy, por otro, para la implementacin de sistemas expertosbayesianos. El programa resultante se llam Elvira,tomando el antiguo nombre de la ciudad de Granada, a cuyaUniversidad estn vinculados en mayor o menor medidavarios de los investigadores del proyecto.(Garca, n.d.)

  • Faicn Rosa-Japa Lauro-Martnez Jhymer Tutor: Ing. Henry Paz

    Figure 7. Programa Elvira

    Cabe resaltar que en marzo de 2001, un grupo formado porcasi todos los mismos investigadores del Proyecto Elvira,plantea un nuevo proyecto titulado Elvira II: Aplicacionesde los Modelos Grficos Probabilsticos, que fue concedidopor el Ministerio de Ciencia y Tecnologa a finales de esemismo ao. Sus objetivos principales son dos: mejorarlas caractersticas del programa Elvira actual y desarrollaraplicaciones en diversos campos, como la medicina, lagentica, la agricultura y el comercio inteligente.

    Aplicacin de Redes Bayesianas con Elvira

    Ejemplo Prctico

    La Red Bayesiana utilizada para el ejemplo tiene comofinalidad simular el proceso de aprobacin del ciclo delos estudiantes pertenecientes del Dcimo Mdulo dela Carrera de Ingeniera en Sistemas de la UniversidadNacional de Loja, la misma se estructura de la siguientemanera:(Faicn R, n.d.)

    30 Nodos de los cuales se tiene:

    1 Nodo central que indica aprobacin o no del mdulo 6 Nodos que conforman las materias a aprobar 1 Nodo de Asistencia a clases 22 Nodos con parmetros de calificacin en las distin-

    tas materias.

    29 Enlaces:

    7 del tipo Si No 22 del tipo Alto Medio Bajo

    A continuacin la grfica de la Red Bayesiana.

    Figure 8. Red - Aprobacin de Mdulo

    Figure 9. Inferencia - Aprobacin de Mdulo

    Cada parmetro de calificacin tendr un tipo de valorentre alto (s2), medio (s1) y bajo (s0). Para el ejemplorealizaremos la explicacin basndonos en la materia deInteligencia_Artificial con la siguiente tabla de probabili-dades:

    Figure 10. Parametros a calificar en Inteligencia Artificial

    En el nodo Inteligencia_Artificial posee solo dos tipos devalores si (s0) y no (s1) debido a que solo se presenta unaoportunidad de aprobar o no el mdulo.A su vez tiene como padres los parametros anteriormenteanalizados los mismos que convinados generan una tablarelacional con 244 posibles combinaciones.

  • Faicn Rosa-Japa Lauro-Martnez Jhymer Tutor: Ing. Henry Paz

    Figure 11. Padres del nodo Inteligencia Artificial

    Debido a la dimensin de la tabla resultante se tomaron los10 primeros valores para la explicacin

    Figure 12. Relacin en nodo Inteligencia Artificial

    Asignacin de rangos de las calificaciones

    Esta distribucin se utiliza para asignar los valores decalificacion en las materias.

    Figure 13. Inteligencia Artificial, Simulacin, Sistemas Ex-pertos, tica y Control Automatizado

    Presentacin del ejemplo en Java

    Presentacin del Programa.:

    Figure 14. Pantalla Principal

    Figure 15. Pantalla con datos

    Cdigo en Java

    Para realizar una correcta implementacin del codigoprimeramente se utilizo una libreria intermedia para lalectura de los datos desde Java. Dicha libreria se denominaOpenMarkov, la misma da la posibilidad de leer los ficherosde Elvira con extensin .elv y guardarlos en .pgmx.Dentro del cdigo implementado para obtener la informacinde la red bayesiana creada con Elvira directamente desdeuna aplicacin Java utilizaremos el metodo denominadoiniciar:

    public void iniciar() {try {

    // Abrimos el archivo//que contiene la redInputStream file =new FileInputStream(new File("Modulo.pgmx"));

    // Cargamos la red//Bayesiana

  • Faicn Rosa-Japa Lauro-Martnez Jhymer Tutor: Ing. Henry Paz

    PGMXReader pgmxReader =new PGMXReader();ProbNet redPrueba =pgmxReader.loadProbNet(file, bayesNetworkName).getProbNet();

    List listPro =redPrueba.getProbNodes();

    for (int i = 0;i < listPro.size();i++) {ProbNode probNode =listPro.get(i);}

    ///////////////////////

    EvidenceCase evidence =new EvidenceCase();InferenceAlgorithm variableElimination =new VariableElimination(redPrueba);variableElimination.setPreResolutionEvidence(evidence);

    // Obtenemos el nodo// principal Pase_ModuloVariable paseModulo =redPrueba.getVariable("Pase_Modulo");ArrayList variablesOfInterest =new ArrayList ();variablesOfInterest.add(paseModulo);

    // Computo de las posteriores probabilidadesHashMapposteriorProbabilities =variableElimination.getProbsAndUtilities();

    // Impresion de los resultados en consolaprintResults(evidence,variablesOfInterest ,posteriorProbabilities);

    String inte=String.valueOf(this.inteligencia.getSelectedItem());evidence.addFinding(redPrueba ,"Inteligencia_Artificial",inte);

    String ante=String.valueOf(this.anteproyectos.getSelectedItem());evidence.addFinding(redPrueba ,"Anteproyectos",ante);

    String control=String.valueOf(this.conAutomatico.getSelectedItem());evidence.addFinding(redPrueba ,"Control_Automatizado",control);

    String eti=String.valueOf(this.etica.getSelectedItem());evidence.addFinding(redPrueba ,"Etica",eti);

    String exper=String.valueOf(this.sisExpertos.getSelectedItem());evidence.addFinding(redPrueba ,"Sistemas_Expertos",exper);

    String simu=String.valueOf(this.simulacion.getSelectedItem());evidence.addFinding(redPrueba ,"Simulacion",simu);

    String asis=String.valueOf(this.asistencias.getSelectedItem());evidence.addFinding(redPrueba ,"ASISTENCIAS",asis);

    posteriorProbabilities =variableElimination.

  • Faicn Rosa-Japa Lauro-Martnez Jhymer Tutor: Ing. Henry Paz

    getProbsAndUtilities(variablesOfInterest);printResults(evidence,variablesOfInterest ,posteriorProbabilities);

    } catch (Exception e) {System.err.println(e.getMessage());e.printStackTrace();}}

    public void printResults(EvidenceCase evidence,ArrayList variablesOfInterest ,HashMapposteriorProbabilities) {

    String evidencias="Evidencias: \n";for (Finding finding :evidence.getFindings()) {evidencias=evidencias+finding.getVariable()+ ": "+finding.getState()+"\n";}this.consola.setText(evidencias);

    for (Variable variable :variablesOfInterest) {double value;TablePotentialposteriorProbabilitiesPotential =posteriorProbabilities.get(variable);int stateIndex = -1;try {stateIndex =variable.getStateIndex("si");value =posteriorProbabilitiesPotential.values[stateIndex];this.resultado.setText(Util.roundedString(value, "0.001"));} catch (InvalidStateException e) {e.printStackTrace();}}}

    Conclusiones

    Las redes Bayesianas son modelos que combinan lateora de grafos y de probabilidades, son aplicadas a latoma de decisiones en dominios donde la incertidum-

    bre representa un papel importante.

    Estos modelos se han aplicado al desarrollo de nuevosalgoritmos que permiten la propagacin de nuevasprobabilidades en redes que representan problemasreales.

    Dentro del estudio de las redes bayesianas se encuen-tran algoritmos que podran considerarse como partede la minera de datos.

    El uso de las redes bayesianas como tcnica es muyutilizada en la prediccn de probabilidades y la tomade decisiones en el rea financiera.

    Recomendaciones

    Se recomienda desarrollar distintas aplicaciones paradistintos entornos ya sean web, mviles o de escrito-rio, con el fin de resolver distintos problemas medianteel uso de redes bayesianas.

    La redes bayesianas han sido de gran utilidad en lamedicina por lo que sera recomendable buscar nuevoscampos de aplicacin en distintas reas.

    References

    Bedoya, O. (n.d.). Inteligencia Artificial. Retrieved from http://eisc.univalle.edu.co/~oscarbed/IA

    Constantino Malagon Luque, t. . (n.d.).

    Faicn R, M. J., Japa L. (n.d.). Cdigo en Java. Retrievedfrom http://mundial-ag.googlecode.com/svn/trunk/\\PredicciC3B3nMundialAlgoritmosGenC3A9ticos/

    Fernndez, E. (n.d.). Anlisis de Clasificadores Bayesianos. Re-trieved from www.fi.uba.ar/laboratorios/lsi

    Garca, A. M. (n.d.). Redes Bayesianas y aplicaciones.Retrieved from http://redesbayesianasyaplicaciones.weebly.com/historia.html

    Larragaa, P. (26 de julio de 2002). Redes Bayesianas.Larraaga, P. (n.d.). Clasificadores Bayesianos.Lozano, M. R. (n.d.). El papel de las Redes Bayesianas

    en la toma de decisiones. Retrieved from http://www.urosario.edu.co/Administracion/documentos/investigacion/laboratorio/miller_2_3.pdf

    Moral, S. (n.d.). Una introduccin a las Redes Bayesianas. Re-trieved from decsai.ugr.es/~smc/redesia2.pdf

    Nava, F. P. (n.d.). Redes Bayesianas e Inteligencia Artificial: Apli-caciones en Educacin.

    Puga, J. L. (Agosto de 2007). Modelados con una Red Bayesiana.Ricardo Conejo, E. M. (Valencia Espaa, 2001). Modelado del

    alumno: Un enfoque bayesiano.Sucar, L. E. (INAOE 2011). Clasificadores Bayesianos.y Javier Dolado, D. R. (n.d.). Redes Bayesianas en la Ingeniera

    de Software. Retrieved from http://www.cc.uah.es/drg/