decimo semestre de la CIS en la UNL J. Males, F. Loayza, B. Lima, Tutor: H. Paz ResumenMuchos problemas relacionados con estimacio- nes, analisis o evaluacion de abilidad de situaciones que se presentan en el diario convivir, se basan en valores proba- bilsticos e inciertos, y a modo de soluci on se han venido utilizando diferentes metodos y tecnicas estadsticas y so- bre todo la teora de la probabilidad. Actualmente existen otros metodos de solucion a estos tipos de problemas, las denominadas Redes Bayesianas, que son modelos gracos y que combinan la teora de la probabilidad con la teora de grafos. Index TermsRedes Bayesianas, inferencia, nodo. I. Introduccion E L presente artculo esta enfocado a las Redes Bayesia- nas, las cuales se encargan de organizar ciertos casos de problemas aplicando un conjunto de variables y las re- laciones de dependencia que existen entre ellas. En base a este modelo es posible realizar inferencias bayesianas, lo cual signica, que se va a realizar una estimacion de la pro- babilidad de las variables que no se conocen, partiendo de las que si se conocen. La utilidad de aplicar Redes Bayesianas radica en la optima informacion que nos brindan sobre la solucion a problemas, sean estos: de diagnostico, clasicacion o decisi on y que se las podra interpretar como relaciones de causa - efecto. II. Redes Bayesianas Una Red Bayesiana representa un modelo probabilstico que relaciona un conjunto de variables aleatorias mediante un grafo dirigido, son redes gracas sin ciclos en el que se representan variables aleatorias y las relaciones de probabilidad que existan entre ellas que permiten conseguir soluciones a problemas de decision en casos de incertidumbre. Ademas una red bayesiana consiste en una representacion ilustrada de dependencias para razona- miento probabilstico, en la cual los nodos representan variables aleatorias y los arcos simbolizan relaciones de dependencia probabilstica directa entre las variables [1] . Un criterio que se ha utilizado para describir la estruc- tura de una red bayesiana atiende al grado en que sus elementos son visibles para el usuario (Edwards, 1998; Edwards y Fasolo, 2001). En este sentido una red bayesiana sera una estructura compuesta por cuatro niveles. En el nivel superior, una J. Males, Universidad Nacional de Loja, Loja-Ecuador, jama- lesc@unl.edu.ec F. Loayza, Universidad Nacional de Loja, Loja-Ecuador, fploayzaa@unl.edu.ec B. Lima, Universidad Nacional de Loja, Loja-Ecuador, bvlimar@unl.edu.ec H. Paz,Universidad Nacional de Loja, Loja- Ecuador,hpaz@unl.edu.ec red bayesiana sera un conjunto de variables representadas por nodos y un conjunto de echas que relacionan estas variables en terminos de inuencia. En un nivel inferior estaran los niveles o estados, tambien conocidos como espacio de estados (Nadkarni y Shenoy, 2001, 2004), que pueden asumir cada una de las variables del modelo. En tercer lugar, tendramos un conjunto de funciones de probabilidad condicional, una para cada nodo, donde se representara la probabilidad de ocurrencia de cada estado de la variable condicionado a los posibles valores de las variables que determinan el valor de la variable. Por ultimo, en el nivel mas subordinado estaran un conjunto de algoritmos que permitiran que la red re-calcule las probabilidades asignadas a cada uno de sus niveles cuando conocemos alguna evidencia sobre el modelo. Sin embargo, la descripcion mas frecuente de una red bayesiana se basa en dos elementos, una dimension cualitativa y otra cuantitativa, se sustentan en dos grandes pilares de la modelizacion matematica, la teora de grafos y la teora de la probabilidad [2] . A. Dimension Cualitativa El soporte teorico de la dimension cualitativa en las re- des bayesianas lo aporta la teora de grafos. La teora de grafos trata de crear modelos gracos (grafos) que repre- senten los elementos del problema en un sentido holista y fue introducida por Euler para dar solucion al problema de los puentes de Konigsberg (Harary, 1969; Ros, 1995). Una red bayesiana es un grafo, podemos denirla como un par G = (V, E), donde V es un conjunto nito de verti- ces, nodos o variables y E es un subconjunto del conjunto V x V de pares ordenados de vertices llamados enlaces o aristas. Ademas, una red bayesiana es un tipo particular de graco que se denomina grafo dirigido acclico. Dirigido hace referencia a que los enlaces entre los vertices del grafo estan orientados. En una red bayesiana pueden existir tres tipos de cone- xiones basicas (seriales, convergentes y divergentes), cada una con propiedades cualitativas diferentes y que favorecen la propagacion de probabilidades ante una nueva evidencia sobre el modelo [2]. Desde el punto de vista del analisis de datos, las redes bayesianas son una potente herramienta por varios motivos [3]: No suponen un determinado modelo subyacente. Son facilmente interpretables. Son adaptables y permiten la incorporacion de cono- cimiento a priori de forma cualitativa. 2 B. Dimension Cuantitativa Hay tres elementos esenciales que caracterizan la dimen- sion cuantitativa de una red bayesiana: el concepto de pro- babilidad como un grado de creencia subjetiva relativa a la ocurrencia de un evento, el teorema de Bayes como heurstico actualizador de creencias y un conjunto de fun- ciones de probabilidad condicionada. Existen, al menos, cuatro formas de entender la probabi- lidad: la clasica, emprica, axiomatica y la subjetiva. Desde la concepcion clasica, introducida por Laplace, la probabi- lidad de que ocurra un evento de un espacio muestral viene dado por la razon que se establece entre el n umero de casos favorables asociados al suceso y el n umero de casos posibles [2]. III. Modelos basados en Redes Bayesianas Una red bayesiana representa una distribuci on de pro- babilidad multivariante, de manera que las relaciones de independencia entre las variables que la forman quedan identicadas de forma graca mediante el concepto de d- separacion [3]. Dos variables A y B en una red bayesiana se dice que estan d-separadas si todos los caminos entre A y B son como los que aparecen en la fgura 1. Se dice ademas que C d-separa a A y B. El concepto de d-separacion se corresponde con el de independencia condicional, de manera que dos variables (o conjuntos de variables) X e Y seran condicionalmente independientes dada una tercera variable (o conjunto de variables ) Z si y solo si Z d-separa a X e Y [3]. Figura 1 Caracterizaci on gr afica del concepto de d-separaci on [3]. IV. Inferencia Bayesiana Dentro de los metodos de razonamiento se encuentran los Modelos Bayesianos, que simulan diferentes condiciones de incertidumbre cuando no se conoce si es verdadera o falsa la hipotesis enunciada en un rango de variacion [4]. Todos los modelos bayesianos tienen en com un la asig- nacion de la probabilidad como medida de creencia de una hip otesis, as es que, la inferencia es un proceso de reajuste de medidas de creencia al conocerse nuevos axiomas. Cuando se utilizan evidencias y observaciones para esta- blecer que una suposicion sea cierta, es lo que se denomina como Inferencia Bayesiana. La inferencia bayesiana obser- va la evidencia y calcula un valor estimado seg un el grado de creencia planteado en la hipotesis. Esto implica que al tener mayor cantidad de datos disponibles se podra obte- ner resultados mas satisfactorios. La ventaja fundamental del uso de la inferencia baye- siana radica en la utilidad que se le da para la toma de decisiones, actualmente su uso es frecuente porque se obtie- nen resultados mas acertados en el contexto de parametros desconocidos [5]. Aplicando la inferencia Bayesiana es posible identicar distintos tipos de patrones de transicion como estados de ganancias discretas en un gran conjunto de datos adminis- trativos. Ademas, se puede investigar acerca de los efectos y las condiciones del mercado por medio de la estimacion de un modelo probabilstico. El mecanismo de inferencia sobre redes bayesianas per- mite utilizarlas para construir clasicadores. Para que esto se debe crear una red bayesiana en la que las variables se interrelacionen en el grafo. La clase pertenecera a la varia- ble desconocida, objetivo de la inferencia. Proporcionada una instancia cualquiera para la que se conozcan todos sus atributos, la clasicacion se vericara inriendo sobre el grafo la probabilidad posterior de cada uno de los valo- res de la clase, y eligiendo aquel valor que maximize dicha probabilidad. V. Tipos de Redes Bayesianas El problema Principal en el momento de construir una red Bayesiana consiste en el tratamiento de variables dis- cretas y continuas de forma simultanea en la practica, debi- do a las restricciones del modelo condicional que conlleva al proceso de discretizacion. Las redes bayesianas se pueden clasicar seg un en funcion del tipo de variables utilizadas. A. Redes Bayesianas Continuas Las redes bayesianas continuas son aquellas que tienen un n umero innito de posibles valores. En este tipo de re- des resulta complicado determinar explcitamente las pro- babilidades condicionadas para cada valor de las variables, as que las probabilidades condicionadas se representan me- diante una funcion de probabilidad. La mayora de las variables reales son de caracter conti- nuo como por ejemplo la variacion de la temperatura. Una red Bayesiana cuyas variables sean todas continuas y estan todas representadas mediante funciones normales lineales, tiene una distribucion normal multivariada. Este tipo de variables debe ser manejada mediante el proceso de dis- cretizacion debido a la gran cantidad de datos que deben ser modelados por medio de seleccion de rangos y de este modo hacer mas sencillo el proceso de discretizacion [4]. B. Redes Bayesianas Dinamicas Las redes Bayesianas dinamicas consienten en la expo- sicion de procesos que contienen una variable aleatoria en cada intervalo de tiempo. El proceso que se esta estudiando puede entenderse como una serie de procesos en un instante de tiempo. RED BAYESIANA PARA ESTIMAR LA APROBACI
ON DEL D
ECIMO SEMESTRE DE LA CIS EN LA UNL 3
El estado de las variables se representa en un lapso de tiempo para poder representar los procesos dinamicos co- nocidos dentro de la red bayesiana. Las probabilidades con- dicionales de este modelo no cambian con el tiempo. Es decir, se repite las etapas temporales y las relaciones entre dichas etapas. La inferencia en una red bayesiana dinamica es la mis- ma que para una red bayesiana, y por esto se emplean los mismos metodos. Esta inferencia resulta mediante la re- produccion de los intervalos de tiempo, hasta que la red sea lo suciente larga para captar todas las observaciones [6]. VI. Teorema de Bayes Sean A y B dos sucesos aleatorios cuyas probabilidades se denotan por P(A) y P(B) respectivamente, vericandose que P(B)> 0. Conocidas las probabilidades a priori de los sucesos A y B, es decir, P(A) y P(B), as como la proba- bilidad de que se de B dado el suceso A, es decir P(B|A). La probabilidad a posteriori de que se de A dado el suceso B, es decir P(A|B)[7]. El teorema de Bayes, parte de un error:P(A|B)=P(B|A) P(AB)=P(BA) A continuacion presentamos la estruc- Figura 2 F ormula de Bayes tura basica de una Red Bayesiana: Figura 3 Red Bayesiana b asica Donde: X, U1, U2, U3, Un representan cada una de las variables pertenecientes a la Red Bayesiana, y especcamente X representa al nodo padre y U1, U2, U3, Un los nodos hijos. VII. Usos de las Redes Bayesianas La utilizacion de las redes bayesianas ha sido muy di- fundida en diferentes campos como en la manipulacion de sistemas expertos en la medicina, en la depuracion de pro- gramas de inteligencia articial, en la genetica, en proce- sos de produccion; todos estos enfocados a la solucion de problemas y en la identicacion de probabilidades que dis- minuyan riesgo, como es el uso primordial que se le da en la rama nanciera. El uso de las redes bayesiana en el estudio y tratamiento de datos, consiste basicamente con mejorar el esquema de prevencion de riesgo operacional; tal que sirva como siste- ma de ayuda a la toma de decisiones en una situacion de emergencia y realizar mejoras en las estrategias de opera- cionales. Las redes bayesianas como herramienta de gestion de riesgo son de suma importancia para el gremio nanciero debido a sus grandes aportes en la denicion de condicio- nes probabilsticas de inferencia, con un amplio manejo de variables[4]. VIII. Ejemplo Practico Luego de haber realizado un analisis de los conceptos basicos sobre las Redes Bayesianas y el Teorema de Ba- yes, vamos a centrarnos en el ejemplo practico, el cual consiste en desarrollar una Red Bayesiana para conocer la probabilidad que tiene un estudiante en aprobar el deci- mo semestre, en la carrera de Ingeniera en Sistemas del
Area de la Energa, las Industrias y los Recursos Naturales
no Renovables de la Universidad Nacional de Loja. Para el desarrollo de la Red Bayesiana utilizamos la aplicacion Elvira, lo cual es el resultado de un proyecto de investi- gacion nanciado por la CICYT (Centro de Investigacion Cientca y Tecnologica) en conjunto con el Ministerio de Ciencia y Tecnologa, en el que participaron investigado- res de varias universidades espa nolas y de otros centros. Elvira esta escrito y compilado en en el Lenguaje de Pro- gramacion Java, lo cual lo hace multiplataforma, es decir, permite su ejecucion en varios Sistemas Operativos como MS-DOS/Windows, Linux, Solaris. Como requisito, para que el programa Elvira pueda ejecutarse es necesario tener preinstalado Java. Figura 4 Ventana principal de Elvira 4 Bueno, luego de que hayamos conocido de manera ligera sobre el software que nos permitira dise nar Redes Bayesia- nas vamos a mostrar como quedo nuestra red: Figura 5 Red Bayesiana del ejemplo Las consideraciones a tener para el desarrollo de nuestra Red Bayesiana fueron cada una de las seis materias: Siste- mas Expertos, Simulacion, Anteproyectos, Control Auto- matizado, Inteligencia Articial,
Etica Profesional, y para cada una de ellas estimamos estadsticamente los prome- dios de las lecciones, los talleres, los deberes y sobre todo las evaluaciones. Cabe recalcar que para obtener mejores resultados es necesario considerar muchos factores, para lo cual tambien tuvimos en cuenta las asistencias, que cons- tituyen un factor muy importante en el proceso de acredi- tacion. Examenes Lecciones Talleres Deberes Asistencias 70% 10% 10% 10% 80% Tabla 1. Tabla de valores a considerar para construir la Red Bayesiana. Por ejemplo la conguracion que se realizo en el nodo prom evaluaciones 1 fue la siguiente: Figura 6 Configuraci on de valores en el nodo prom evaluaciones 1 Los valores iniciales del nodo semiestado son una com- binacion de los posibles valores de los nodos anteriores: Figura 7 Valores iniciales del nodo semiestado Los valores iniciales del nodo estado nal son una combinacion de los posibles valores de los nodos anteriores, incluido el estado semiestado: Figura 8 Valores iniciales del nodo estado nal En la Figura 9 podemos apreciar como quedo la Red Ba- yesiana, luego de aplicar las consideraciones establecidas en los 33 nodos y asumiendo los valores objetivos correspon- dientes a cada una de las variables: RED BAYESIANA PARA ESTIMAR LA APROBACI
ON DEL D
ECIMO SEMESTRE DE LA CIS EN LA UNL 5
Figura 9 Red Bayesiana aplicando inferencia Como es evidente luego de aplicar la inferencia a nues- tra Red Bayesiana podemos observar que en cada nodo, las variables nos muestran valores estadsticos de los cuales de- pendera la salida, o mejor dicho la probabilidad de que un estudiante de la Carrera de Ingeniera en Sistemas aprue- be el modulo. Si deseamos obtener una explicaci on en cada nodo, unicamente hacemos click derecho y seleccionamos la opcion Explicar nodo y obtendremos una explicacion sobre la razon de probabilidad: Figura 10 Explicaci on de un nodo de la Red Bayesiana Pero tal y como nos muestra la informacion nuestra Red Bayesiana no es de gran utilidad y para lo cual es necesario utilizar el archivo que contiene nuestra red e integrarlo en un proyecto hecho en el Lenguaje de Programacion Java y poder tener un mejor entendimiento sobre el problema que estamos tratando de solucionar mediante la aplicacion de Redes Bayesianas. Para el desarrollo de nuestro programa utilizamos el Entorno de Desarrollo (IDE) Netbeans y para facilitar- nos la utilizacion de la amplia gama de metodos que nos proporciona Elvira y hacerlo de una manera mas sencilla utilizamos el software OpenMarkov (.jar), que es similar a Elvira, practicamente hace lo mismo. Entonces una vez que hayamos creado nuestro proyecto en Java utilizando Netbeans, lo que debemos hacer es a nadir la li- brera OpenMarkov.jar y hacer uso de los metodos que nos proporciona el mismo y que mas adelante seran detallados. Para vericar que el software OpenMarkov hace lo mis- mo que Elvira, abrimos OpenMarkov y buscamos el archivo .elv hecho en Elvira y nos aparecera lo siguiente: Figura 11 Red Bayesiana en OpenMarkov Como podemos ver en la Figura 11 se muestra una Red Bayesiana con el software OpenMarkov igual a la de la Figura 5 con el software Elvira y deducimos que los dos softwares nos permiten hacer lo mismo, lo unico que cambian son sus metodos, y para hacerlo mas corto y sencillo de programar y obtener los resultados deseados es recomendable utilizar OpenMarkov. Ahora debemos guardar este archivo con el formato de OpenMarkov (.pgmx). Es recomendable almacenar este ar- chivo en el directorio donde se halla nuestro proyecto hecho en Java para luego en el codigo fuente indicar la ruta de este archivo, tal y como se muestra en la siguiente gura: Figura 12 C odigo fuente donde se muestra la ruta del archivo exameprobar2.pgmx En la Figura 13 podemos ver la ejecucion de nuestro pro- grama, pero ya utilizando una Interfaz Graca de Usuario (GUI): 6 Figura 13 Ejecuci on del programa Finalmente vamos a detallar algunos de los metodos que se utilizaron para el desarrollo del presente programa mediante la utilizacion de Redes Bayesianas en la solucion del problema de estimar la probabilidad que tiene un estudiante de la carrera de Ingeniera en Sistemas de la UNL en aprobar el decimo modulo. Los metodos pertenecen a la librera org.openmarkov.core.model.network: public boolean isParent(ProbNode node) Verdadero si el nodo es el padre de este nodo. getApproximateMaximumUtilityFunction Se aproxima al maximo de la funcion de utilidad de la ProbNode. Se calcula de forma recursiva mediante el uso de la funcion de utilidad de los nodos primarios. Para un calculo exacto del maximo de la funcion de utilidad entonces se requiere para utilizar el metodo getUtilityFunction y calcula el maximo sobre el potencial resultante. getApproximateMinimumUtilityFunction Se aproxima al mnimo de la funcion de utilidad de la ProbNode. Se calcula de forma recursiva mediante el uso de la funcion de utilidad de los nodos primarios. Para un calculo exacto del maximo de la funcion de utilidad entonces se requiere para utilizar el metodo getUtilityFunction y calcula el maximo sobre el potencial resultante. getUtilityFunction La funcion de utilidad de una variable de utilidad. Si se trata de un nodo de super-valor, entonces opera las funciones de utilidad de sus padres de forma recursiva. isSuperValueNode Verdadero si la variable es un nodo de valor s uper. Falso si no lo hace. public List<ProbNode> getUtilityParents() Una lista con los padres de utilidad. public boolean checkOnlyUtilityparents() Cierto si un nodo tiene solo los padres de utilidad. public boolean removePotential(Potential potential) Cierto si el potencial de lista contiene el elemento especicado; false en caso contrario. public List<Potential> getPotentials(Variable variable) Potenciales asociados a este ProbNode que contiene la variable recibida. ArrayList de potente. public Map<String,String> additionalProper- ties Este objeto contiene toda la informacion que el analizador lee desde el disco que no tiene una cone- xion directa con los atributos almacenados en el objeto ProbNode. IX. Conclusiones Luego de haber realizado la Red Bayesiana utilizando el Lenguaje de Programacion Java, mediante la utilizacion de las libreras (.jar) Elvira y OpenMarkov llegamos a las siguientes conclusiones: Luego de entender la teora de las redes bayesianas es importante su utilizacion de para la clasicacion o decisiones, los cuales se conoce la causa y el efecto. Es muy importante tener en cuenta que cuando desarrollamos una Red Bayesiana y estimamos los valores que creemos convenientes aplicarlos en cada uno de los nodos, sean estos padres o hijos, debemos tener la cantidad maxima de datos para obtener mejores resultados. Las Redes Bayesianas son de gran importancia para determinar las probabilidades con mayor certeza, as mismo OpenMarkov es una librera de gran ayuda que nos permite realizar la comunicacion con java para realizar la manipulacion de los datos obtenidos del archivo creado por la libreria OpenMarkov. Para poder obtener el codigo fuente y la documentacion favor de dirigirse al siguiente enlace: https : / / github . com / byrvin17 / redes _ bayesianas . git Referencias [1] Daniel Rodrguez, Javier Dolado Redes Bayesianas en la Inge- niera de Software,Universidad de Alcala,Universidad del Pas Basco, Disponible en: http : / / www . cc . uah . es / drg / b / RodriguezDolado . BBN . 2007 . pdf [2] Lopez Puga, Jorge Las redes bayesianas como herramientas de modelado en psicologa (Espa na), 2007, Disponible en: http : / / digitum . um . es / xmlui / handle / 10201 / 8128 [3] Cespedes, Antonio J, Analisis del sector agrario del poniente almeriense mediante redes bayesianas(Espa na), 2003 Disponible en: http : //repositorio.ual.es : 8080/jspui/handle/10835/ 1541 # .U454C _ l5O3s [4] Rivera L, Miller, El papel de las redes bayesianas en la toma de decisiones. (Colombia),2011, Disponible en: http : RED BAYESIANA PARA ESTIMAR LA APROBACI
ON DEL D
ECIMO SEMESTRE DE LA CIS EN LA UNL 7
/ / www . urosario . edu . co / Administracion / documentos / investigacion / laboratorio / miller _ 2 _ 3 . pdf [5] Zellner, A, Introduccion a la inferencia bayesiana en Econometra, 1987 [6] Chow, C. and Liu, C Approximating discrete probability distribu- tions with dependence trees, 1968, IEEE Trans, on Info, Theory, [7] Lic. Enrique Jose Fernandez An alisis de Clasicadores Baye- sianos, Disponible en: http : / / www2 . itba . edu . ar / nuevo / archivos/secciones/fernadez-trabajofinaldeespecialidad. pdf [8] Jorge Valverde Rebaza, pedro Shiguihara Juarez Red Baye- siana con Inferencia por Eliminaci on de Variables, Universidad Nacional de Trujillo, Disponible en: http : //joshi.ueuo.com/ laboratorio . php ? &idart = 29 Jorge Anibal Males Chalan Nacio en Quito el 25 de febrero de 1991. Sus estudios primarios los realizo en la escuela Jose Toro y Guzman de la provincia de Lo- ja, canton Saraguro y sus estudios secundarios los cumplio en el Instituto Tecnologico Superior C elina Vivar Espinosadel mismo canton. Actualmente se encuentra cursando el decimo semestre de la carrera de ingeniera en Sistemas de la Universidad Nacional de Loja. Ha participado en proyectos de modulo, refe- rentes a BPMs, Aplicaciones con Java, Matlab. Byron Lima Actualmente se encuentra cursando el decimo semestre de la carrera de ingeniera en Sistemas de la Universidad Nacional de Loja. Ha realizado proyectos de desarrollo de softwa- re, relacionados con los lenguajes de programa- cion Java, Python, Matlab, Aplicaciones para dispositivos moviles. Ademas es conocer de Re- des de computadoras y Analista de Sistemas. Freddy Loayza Actualmente se encuentra cursando el decimo semestre de la carrera de ingeniera en Sistemas de la Universidad Nacional de Loja. Ha realizado proyectos de desarrollo de software, relacionados con los lenguajes de programacion Java, Matlab, Actualmente se encuentra desa- rrollando un proyecto para dispositivos moviles.