Aprendizaje Automático sobre
Grandes Volúmenes de Datos

Clase 14

Pablo Ariel Duboue, PhD

Universidad Nacional de Córdoba,
Facultad de Matemática, Astronomía y Física
figura escudo.png

None.1 Décima Cuarta Clase: Paralelizando Naive Bayes

None.1.1 Clase anterior

Material de lectura
Preguntas
Recordatorio

None.2 Clase Anterior

Filmínas de la defensa de Jingen Xiang
Zinkevich et al., NIPS 2010
Algoritmo en nodo worker
figura algoritmo1.png
(adaptado de Zinkevich et al, 2010)
Algoritmo en nodo central
figura algoritmo2.png
(adaptado de Zinkevich et al, 2010)
Dirección Alternada de Multiplicadores
minimizar f(x) + g(z) dado que Ax + Bz = c
MPI
MPI vs. MapReduce
Message Queues
AMQP vs. MapReduce

None.3 Paralelizando Naive Bayes

Naive Bayes
P(y|f⃗) = (P(f⃗|y)P(y))/(P(f⃗))
yNB = maxyP(f1, ..., fn|y)P(y) = maxyP(f1|y)...P(fn|y)P(y)
NB: de conteos a probabilidades
Ejemplo: Contar Palabras
Naive Bayes en MapReduce
En python
Implementación Alternativa
Calculando valores independientes de las instancias
figura LabelMR.png
(Adaptado de http://spectrallyclustered.wordpress.com/2013/02/20/naive-bayes-on-hadoop/)
Calculando valores dependientes de las instancias
figura WordMR.png
(Adaptado de http://spectrallyclustered.wordpress.com/2013/02/20/naive-bayes-on-hadoop/)
Corrigiendo los errores de Naive Bayes
Algoritmo mejorado
figura table4.png
(Adaptado de Rennie et al., 2003)