Escolar Documentos
Profissional Documentos
Cultura Documentos
Federico Castanedo
CONTENIDOS
QU ES DEEP LEARNING?
EJEMPLOS:
Autoencoders.
Stacking Autoencoders
Restricted Boltzmann Machine
Deep Belief Network
PAQUETES DE R:
DeepNet
H2O
QU ES DEEP LEARNING?
DeepLearning = NN + IA + GM + Optimizacin + PR + SP.
Neuronal Inteligencia Graph Procesamiento Procesamiento
Network Artificial Modeling Patrones
Seales.
- Niveles de abstraccin que nos permitan dar sentido a imgenes, sonidos y texto.
EJEMPLOS
Deep Belief Network (DBN): modelos probabilsticos generativos compuestos por muchas capas, y variables ocultas.
Boltzmann Machine (BM): una red conectada de forma simtrica, con neuronas como unidades que toman la decisin de
estar conectadas o no.
Restricted Boltzmann Machine (RBM): tipo especial de BM donde no se permiten interrelacin entre neuronas del
mismo tipo.
Deep Neural Network (DNN): perceptrn multicapa con varias capas ocultas, cuyos pesos estn conectados y suelen ser
iniciados usando por otro modelo supervisado o no de tcnica de entrenamiento.
Deep Autoencoders: modelo discriminativo DNN que toma como salida los propios valores de entrada, se trata por tanto
de un modelo no supervisado. Cuando el objetivo es eliminar ruido se comporta como un modelo generativo.
NO SUPERVISADOS: AUTOENCODERS
PAQUETES R
Deep Net
Autor: Xiao Rong
Link: https://github.com/cran/deepnet
Paquete en el que hay implementado varios modelos y algoritmos
de Deep Learning. Aunque de utilidad para entender bien los modelos, ya que aplica
una muestra bastante representativa de todos ellos, su BP, RBM, DBM, Autoencoder.
Su lentitud, debido a la no paralelizacin, ha hecho que no sea el utilizado
para obtener los resultados. S para realizar pruebas y adentrarnos en el mundo de
DeepLearning por la fcil accesibilidad de cdigo.
FUNCIONES
Utilidad
Dbn.dnn.train
Implementa una Deep Neural Network, con pre-entrenamiento dado por una
DBN formada por RBM acopladas.
Load.mnist
nn.predict
Funcin que nos permite clasificar nuevos datos a partir del modelo entrenado.
Ya sea DBN o NN.
nn.test
nn.train
Funcin para entrenar una red neuronal ya sea de una o varas capas. Por
medio de BP.
Rbm.down
Rbm.train
Rbm.up
Sae.dnn.train
ARGUMENTOS
Argumentos
Utilidad
Parmetros
Matriz de entrenamiento
Clasificacin
hidden
activationfun
sigm
learningrate
0.09
momentun
0.5
Nmero de iteraciones.
30
Argumentos
Utilidad
Parmetros
batchsize
Tamaos de minibatch.
100
output
Sae_output
Hidden_dropout
Visible_dropout
cd
cd
PAQUETES R
H2O
Autor: Oxdata
Link: https://github.com/0xdata/h2o/tree/master/docs/deeplearning
Software desarrollado por OXDATA, con un paquete en R a modo de framework.
Engloba distintas estrategias de anlisis de datos. Entre ellas varios modelos de Deep
Learning, DNN, Autoencoders.
Permite observar resultados intermedios de convergencia y tiene la posibilidad
desde la plataforma online de conexin al servidor lanzado, de parar y guardar
modelos intermedios, continuando el entrenamiento a posteriori y observar el comportamiento de
los distintos nodos del clster, as como exportar datos desde distintas plataformas y formatos.
Opciones de Uso
Sparkling Water
R +Hadoop
Cluster EC2
Interface Grfica
GLM
Decision Tree
Random Forest
GBM
K-MEANS
Anomaly Detection
Deep Learning
Nave Bayes
Gride Search
http://www.slideshare.net/0xdata/h2-odeeplearningarnocandel052114?related=1
FUNCIONES
Utilidad
h2o.init
Funcin para iniciar h2o, en nuestro caso slo lo hemos aplicado de manera
local.
h2o.uploadFile
Funcin para cargar la base de datos, en funcin de PATH, ser desde S3,
HDFS, o URLs.
h2o.deeplearning
@model$option
Eligiendo sobre el modelo nos indican distintas opciones: params los parmetros
usados, varimp importancia de las variables.
h2o.predict
Dado el modelo nos proporcionas las puntuaciones sobre los datos de test.
h2o.saveModel
h2o.loadModel
h2o.anomaly
as.h2o
h2o.performance
Funcin que nos permite medir la validez de las puntuaciones sobre datos de
referencia.
ARGUMENTOS
Argumentos
Utilidad
Parmetros
Funciones
ip
Localhost.
h2o.init
port
Puerto de conexin.
Clasificacin.
h2o.init
nthreads
-1 indica todos
h2o.init
starH2O
h2o.init
data
key
epochs
Nmero de iteraciones.
Balance_class
es
Train/Validation/Te as.h2o
st
h2o.deeplearning
h2o.deeplearning
Argumentos
Utilidad
Parmetros
Funcin
h2o.deeplearning
h2o.deeplearning
data
h2o.deeplearning
autoencoder
classificacion
activation
Funcin de activacin.
Tanh/TanhDropout
h2o.deeplearning
hidden
h2o.deeplearning
T en el Autoencoder
h2o.deeplearning
h2o.deeplearning
Argumentos
Utilidad
Parmetros
Funcin
Override_with_
best_model
h2o.deeplearning
Checkpoint
h2o.deeplearning
Reference
h2o.performance
Measure
Accuary.
h2o.performance
Thresholds
Frontera.
0.5
h2o.performance
APLICACIN: WISEATHENA
o
OBJETIVO:
APLICACIN
PROCEDIMIENTO
1 Comenzar seleccionando parmetros.
2 Aplicar el modelo con la funcin dbn.dnn.train/h2o.deeplearning.
3 Variarlos en funcin de los resultados obtenidos sobre training.
4 Usar nn.test/h2o.predict para valorar los resultados con los pesos
entrenados sobre Validation.
5 Valorar la posibilidad de aplicar tcnicas de reduccin de sobreajuste si
este se da. Usar mediciones como curva ROC, usando la librera ROCR.
6 Una vez elegido aplicar sobre el conjunto de test.
Datos
SOLUCIN DEEPNET
SOLUCIN H2O
BIBLIOGRAFA
http://cran.r-project.org/web/packages/deepnet/deepnet.pdf
http://0xdata.com/
deepLearning.net
https://www.youtube.com/watch?v=n6hpQwq7Inw
https://www.youtube.com/watch?v=dMVLd5URpvs#t=602
http://www.cs.ubc.ca/~nando/540-2013/lectures/l13.pdf
http://www.cs.ubc.ca/~nando/540-2013/lectures.html
http://digital.csic.es/bitstream/10261/84753/1/RED%20NEURONAL.pdf
http://books.google.es/books?id=4OgOJLGGrzcC&pg=PA145&lpg=PA145&dq=gato+barra+horizontal&source=bl&ots=
Z4tEuFrkYF&sig=bWjETKt_2RPxLL8O3-B9DIORXYs&hl=es&sa=X&ei=uXTRUSWLeOc0QXWzYCYDw&ved=0CFwQ6AEwCw#v=onepage&q&f=false
http://vimeo.com/101582001
http://nbviewer.ipython.org/github/BVLC/caffe/blob/master/examples/filter_visualization.ipynb
GRACIAS
Para mayor informacin:
http://www.slideshare.net/vlopezlo/deep-learning-r-by-gabriel-valverde
Email:
gabrielvalverdecastilla@gmail.com
gabriel.valverde@zippingcare.com
www.tecnologiaucm.es