1TECIMster en Tratamiento Estadstico-Computacional de la Informacin
EDES BAYESIANAS CON R
Paloma Main YaqueUniversidad Complutense de Madrid
Paloma Main - UCM2
Ir a www.r-project.org y a CRAN, elegir mirror
Ir a Task Views y a gR (gRaphical Models in R)
Paquetes para manipular y representar grafos igraph graph Rgraphviz RBGL
Paquetes para representar modelos grficos probabilsticos y propagacin de la evidencia grBase gRain ggm
Paquetes para aprender modelos grficos probabilsticos pcalg bnlearn
Paquete para manejar HUGIN desde R RHugin
2Paloma Main - UCM3
PAQUETES
Instalar igraph grBase gRain ggm pcalg bnlearnInstalacin de paquetes de BIOCONDUCTOR graph
Rgraphviz RBGLhttp://www.bioconductor.org/
ir a Install Bioconductor Packages
o directamente desde R
source("http://bioconductor.org/biocLite.R")biocLite("graph")biocLite("Rgraphviz")biocLite("RBGL")
Paloma Main - UCM
REPRESENTACIN
Funciones del grBase para crear objetos graphNEL (lista de nodos y enlaces)
Grafos No Dirigidos ug( )
Grafos Dirigidos dag( )
4
3Paloma Main - UCM
Ejemplo (tres)
5
a f
b
c
d
e
g
Paloma Main - UCM
Ejemplo: Moralizacin
6
a f
b
c
d
e
g
4Paloma Main - UCM
Ejemplo: Separacin
En el grafo moral tres.mo e y b separados por c y a?
En tres a d-sep de d dado c?, y dado c y e?
7
Paloma Main - UCM
Representacin como matriz
Paquete ggm funcin DAG( )Por ejemploDAG(v ~ v, y ~ x + z, z ~ w + u) es
v y x z w uv 0 0 0 0 0 0y 0 0 0 0 0 0 y el grafo x 0 1 0 0 0 0z 0 1 0 0 0 0w 0 0 0 1 0 0u 0 0 0 1 0 0
8
v
y
x z
w u
5Paloma Main - UCM
Paquete gRain
Para redes Bayesianas Implementa el algoritmo de propagacin de
Lauritzen and Spiegehalter (1988) Local Computations with Probabilities on Graphical Structures and Their Application to Expert SystemsJournal of the Royal Statistical Society. Series B (Methodological), Vol. 50, No. 2(1988), pp. 157-224
Inferencia Especificacin de las tablas de probabilidad con cptable( ) y compileCPT( ) Crear un objeto grain y compilar con compile( )
9
Paloma Main - UCM
Propagacin con propagate( ) Obtener probabilidades con querygrain( ) Introducir evidencia con setFinding( )
creando un nuevo objeto grain. Con getFinding( ) pFinding( ) se obtiene la evidencia y su probabilidad
Simulacin con simulate( ) Prediccin con predict( )
10
Paquete gRain
6Paloma Main - UCM
Paquete RHuginInstalar R (32/64-bit)Instalar HuginLite 8.0ftp://download.hugin.com/Licenses/8.0/HuginLiteR80.msiInstalar RHuginhttp://rhugin.r-forge.r-project.org/binary/Windows/RHugin_8.0.zip
11
Proporciona un API (Application Programmers Interface) para HUGIN en el lenguaje RLa funcionalidad de HUGIN accesible desde RTambin funciones como gRainInicio hay que crear un hugin.domain( ) y luego
add.node( ) add.edge( ) get.table( )
compile( ) set.finding( ) propagate( ) get.belief( ) initialize( )
Paloma Main - UCM
Configuracin ms probable propagate("RHuginDomain",equilibrium="max") get.belief("RHuginDomain",nodo")aparece un 1 en los estados ms probable
La probabilidad conjunta de la evidencia y la configuracin ms probable
get.normalization.constant("RHuginDomain",)
12
Paquete RHugin
7Paloma Main - UCM
Ejercicio
13
Utilizando Ra) Determinar P(Rain / Sprinkler=T, WetGrass=T)b) La configuracin ms probable para Sprinkler=T, WetGrass=T