Deep Learning Feature Learning Representation Learning Generative Learning

  • Slides: 24
Download presentation
Deep Learning Feature Learning Representation Learning Generative Learning Angel Navia Vázquez MLG/18 -02 -2013

Deep Learning Feature Learning Representation Learning Generative Learning Angel Navia Vázquez MLG/18 -02 -2013

Contenido • • Sobre las características Sobre las arquitecturas Cronología Deep Learning Casos de

Contenido • • Sobre las características Sobre las arquitecturas Cronología Deep Learning Casos de éxito Deep Belief Nets (Restricted) Boltzman Machines Autoencoders Ejemplos y aplicaciones

Sobre las características • Esquema habitual: extracción manual de características (feature engineering) + ML

Sobre las características • Esquema habitual: extracción manual de características (feature engineering) + ML (clasificación, agrupamiento, estimación, …) • La calidad de las características es clave en las prestaciones • Muchos métodos ML fracasan en la extracción automática de buenas características • Métodos ML vs. características. Ej Caltech-256 Object Category Dataset • Multi Kernel Learning sólo mejora levemente al promediado de características • Son las características las que hacen la mayor aportación

Sobre las arquitecturas • Profundidad 2 (SVMs, RBF, MLP(2)) es suficiente en muchos casos,

Sobre las arquitecturas • Profundidad 2 (SVMs, RBF, MLP(2)) es suficiente en muchos casos, pero puede ser necesario un número excesivo de nodos (crecimiento exponencial para algunas familias) • La existencia de una representación profunda y compacta indica existencia de una estructura interna que permitirá una muy buena generalización • Cerebro (cortex visual) tiene esta estructura: jerárquico con diferentes niveles de abstracción, pasando de características más simples a más complejas • Antes de 2006 no funcionaba el entrenamiento con capas profundas, hasta el desarrollo de las Deep Belief Networks (DBN), Hinton.

Sobre las arquitecturas (II) • En general: – Se usa aprendizaje no supervisado de

Sobre las arquitecturas (II) • En general: – Se usa aprendizaje no supervisado de representaciones para un preentrenamiento de cada capa, y acumulación de capas – Aprendizaje supervisado para ajuste fino de todas las capas (ocultas y de salida para predicciones) • Se puede demostrar que cada vez que se añade una capa de características se mejora una cota inferior variacional sobre la log probabilidad de los datos de entrenamiento.

Cronología • Hinton, G. E. , Osindero, S. and Teh, Y. , A fast

Cronología • Hinton, G. E. , Osindero, S. and Teh, Y. , A fast learning algorithm for deep belief nets Neural Computation 18: 1527 -1554, 2006 – Uso de RBMs para el entrenamiento de capas internas • Yoshua Bengio, Pascal Lamblin, Dan Popovici and Hugo Larochelle, Greedy Layer-Wise Training of Deep Networks, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems 19 (NIPS 2006), pp. 153 -160, MIT Press, 2007 – Comparación de RBMs y autoencoders. • Marc’Aurelio Ranzato, Christopher Poultney, Sumit Chopra and Yann Le. Cun Efficient Learning of Sparse Representations with an Energy-Based Model, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems (NIPS 2006), MIT Press, 2007 – Uso de sparse autoencoder en una estructura convolucional • Bengio, Y. Learning deep architectures for {AI}. Foundations and Trends in Machine Learning, vol 2, no 1 , 2009. • Yoshua Bengio, Aaron Courville, Pascal Vincent. Representation Learning: A Review and New Perspectives. (draft? )

Ejemplos de éxito DL • Reconocimiento de voz. Microsoft usa DL en su MAVIS

Ejemplos de éxito DL • Reconocimiento de voz. Microsoft usa DL en su MAVIS (Microsoft Audio Video Indexing Service), reducción de un 30% el error. • Procesamiento musical (transcripción polifónica): mejora entre 5% y 30% • Dígitos manuscritos (MNIST): 0. 27% vs SVM 1. 4% • Reconocimiento de objetos en imágenes naturales: 26. 1% -> 15. 3% • Procesamiento Lenguaje Natural: SENNA system (NEC labs) comparte tareas como POS tagging, chunking, NER, semantic role labeling y syntactic parsing, mejorando estado del arte con coste computacional menor. También en word sense disambiguation (acierto de 67. 8% -> 70. 2%) y mejora estado del arte en sentiment analysis.

Deep Belief Nets (DBN) • Hinton, Osindero, Teh 2006 • Algoritmo rápido, “greedy” y

Deep Belief Nets (DBN) • Hinton, Osindero, Teh 2006 • Algoritmo rápido, “greedy” y escalable que usa priors complementarios para entrenar una a una las capas ocultas de una red profunda. Es no supervisado, pero puede aprender un modelo {datos, etiquetas}. • Uso para inicializar la red y luego hacer un ajuste más fino de los pesos • Aplicación: una red de 3 capas produce un modelo generativo de la distribución conjunta de dígitos manuscritos y sus etiquetas que es más preciso que el mejor modelo discriminativo disponible (SVMs). 2000 top-level neurons 10 label neurons 500 neurons 28 x 28 pixel image • Las dos últimas capas forman una memoria asociativa (Restricted Boltzman Machine, RBM). • Las demás capas forman un DAG (Belief network ) • DEMO: http: //www. cs. toronto. edu/~hinton/adi/index. htm

Boltzman Machine • • Un tipo de red neuronal recurrente (Hinton, Sejnowski, 1986) Las

Boltzman Machine • • Un tipo de red neuronal recurrente (Hinton, Sejnowski, 1986) Las unidades son de dos tipos: visibles y ocultas Análogas a las redes de Hopfield, pero las unidades son estocásticas Cuando no tienen restricciones en la conectividad son difíciles de manejar y de utilidad limitada El entrenamiento es mediante ascenso de gradiente en log-verosimilitud de los datos observados Problema: dicho entrenamiento deja de funcionar para redes mayores que ejemplos triviales Solución: RBM (restricted Boltzman Machine) 1 0 0

Restricted Boltzmann machine • • Red neuronal generativa estocástica que puede aprender una distribución

Restricted Boltzmann machine • • Red neuronal generativa estocástica que puede aprender una distribución de probabilidad asociada a sus entradas No permite conexiones intracapa (tanto en las visibles como en las ocultas): son un grafo bipartito Permiten acumular múltiples capas, usando los nodos ocultos como entrada para la siguiente capa Hay extensiones para valores reales en vez de binarios El algoritmo de entrenamiento es la divergencia de contraste (Contrastive Divergence, CD), una forma de Gibbs sampling dentro de un procedimiento de descenso según gradiente Pesos -> Energía -> Probabilidad (log Prob es una función lineal de los pesos). El mapa de energía tiene valles, y si se usan etiquetas, cada clase tendrá su valle. Función de energía: ocultas j i visibles

Aprendizaje Máxima Verosimilitud en RBM j i j j i t=0 t=1 i t=2

Aprendizaje Máxima Verosimilitud en RBM j i j j i t=0 t=1 i t=2 j i t = infinity (100) Comenzar con un vector de entrenamiento en las unidades visibles Alternar entre actualizar todas las unidades ocultas en paralelo y actualizar todas las unidades visibles en paralelo

Versión rápida j i t=0 data j i t=1 reconstrucción Comenzar con un vector

Versión rápida j i t=0 data j i t=1 reconstrucción Comenzar con un vector de entrenamiento en las unidades visibles. Actualizar todas las unidades ocultas en paralelo Actualizar todas las unidades visibles para obtener una “reconstrucción”. Actualizar las ocultas de nuevo. No sigue el gradiente de la log verosimilitud pero funciona bien. Sigue de forma aproximada el gradiente de otra función objetivo (Contrastive Divergence) (Carreira-Perpinan & Hinton, 2005).

Entrenando una red profunda • En primer lugar, entrenar una capa de características que

Entrenando una red profunda • En primer lugar, entrenar una capa de características que reciben entradas directamente de los píxeles • Luego tomar activaciones de las características entrenadas como si fueran píxeles y aprender una segunda capa de características. • Finalmente, usar backpropagation para un ajuste fino de los pesos: – Tiene sentido cuando las capas intermedias están preentrenadas, de otro modo no produce resultados – La información de las etiquetas de clase se usa para este ajuste fino, no necesita redescubrir características, sólo las refina. – Este esquema funciona bien aún cuando buena parte de los datos son no etiquetados • También se puede usar “contrastive wake-sleep” para el ajuste fino.

Variantes • Deep Belief Network (Hinton et al. , 2006): la capa superior es

Variantes • Deep Belief Network (Hinton et al. , 2006): la capa superior es un RBM y las inferiores son “Belief networks” dirigidas y sigmoidales. • Deep Autoencoder (Salakhutdinov, Hinton 2006): apilar RBMs o autoencoders. • Deep Boltzman Machine (Salakhutdinov, Hinton 2009): se combinan RBM en una DBM desdoblando pesos y luego se ajusta por ML aproximada. • Free energy function (Ngiam et al. 2011): construcción iterativa sin variables latentes explícitas.

Ejemplos • Deep autoencoders – Visualización documentos – Hash documentos – Recuperación información •

Ejemplos • Deep autoencoders – Visualización documentos – Hash documentos – Recuperación información • • RBM para filtrado colaborativo (Netflix) Generación musical con RBM Modelado de estilos de movimiento Transfer Learning

Deep autoencoders • Arquitectura interesante para reducción de dimensionalidad • Imposible optimizar usando backprop:

Deep autoencoders • Arquitectura interesante para reducción de dimensionalidad • Imposible optimizar usando backprop: – Si iniciamos con pesos pequeños, los gradientes se diluyen – Con pesos grandes, fijamos un mínimo local del que es muy difícil salr • Factible si – entrenamos 4 pilas de RBMs – Las “desenrollamos” – Ajustamos fino con backprop

Ejemplo con vectores de documentos LSI

Ejemplo con vectores de documentos LSI

Document retrieval • El ruido inyectado fuerza representaciones binarias • Se obtiene una función

Document retrieval • El ruido inyectado fuerza representaciones binarias • Se obtiene una función hash aprendida de los datos • Se puede usar para encontrar documentos similares (“bit-flip”) • Mejores curvas P-R que TF-IDF y es mejor y 50 veces más rápido que “locality sensitive hashing”

RBM para filtrado colaborativo (Netflix) • Cada usuario es un caso de entrenamiento, definido

RBM para filtrado colaborativo (Netflix) • Cada usuario es un caso de entrenamiento, definido por el vector de ratings. • Hay una unidad visible por película y 100 ocultas binarias (5 -way softmax) • Una RBM para cada usuario, sólo tiene unidades visibles de las películas que ese usuario ha puntuado • Todas las RBM comparten pesos. • El grupo ganador ha usado el promedio de 100 modelos RBM y de factorización de matrices.

Generación musical • Partimos de un fichero MIDI y se discretiza el tiempo en

Generación musical • Partimos de un fichero MIDI y se discretiza el tiempo en fracciones 1/32 • Se fragmenta en trozos de 64 notas • Se alimenta un RBM de tamaño N-800 -400 -2 • Las dos unidades finales se sincronizan con las coordenadas (x, y) del ratón. • http: //www. youtube. com/watch? v=_Gpk 64 QC 22 E (Generation min. 1: 38)

Modelado de estilos de movimiento • RBM factorizada y condicionada • Se entrena con

Modelado de estilos de movimiento • RBM factorizada y condicionada • Se entrena con el sujeto 137 de CMU Motion Capture Database: 10 estilos: cat, chicken, dinosaur, drunk, gangly, graceful, normal, old-man, sexy and strong. • Las variables de estilo permiten controlar el resultado del modelo • DEMO: • http: //www. uoguelph. ca/~gwtaylor/publicatio ns/icml 2009/

Transfer learning • Explota información común entre diferentes tareas sobre los mismos datos •

Transfer learning • Explota información común entre diferentes tareas sobre los mismos datos • Transfer Learning Challenges 2011: ambos los ganaron algoritmos de DL

Conclusiones • DL parece funcionar muy bien en determinados problemas (manifold) • La clave

Conclusiones • DL parece funcionar muy bien en determinados problemas (manifold) • La clave es la extracción no supervisada de características (multicapa) y el uso de etiquetas para un ajuste fino • La compartición de pesos y el promediado de modelos es beneficioso (boosting)

Gracias!

Gracias!