Sunteți pe pagina 1din 20

Arquitecturas Profundas en AI Una Introducci on a Deep Learning

Diego Acu na Rozas


Universidad T ecnica Federico Santa Mar a

Abstract Recientemente en la comunidad de machine learning se ha comenzado a desarrollar con fuerza el area de deep learning. Ciertos resultados te oricos sugieren que para resolver un conjunto de problemas de inter es en la inteligencia computacional es necesario utilizar arquitecturas y modelos con varios niveles de profundidad. Esto corresponde a un resultado rupturista en contraste con el desarrollo tradicional del machine learning. Es de inter es entonces el conocer la motivaci on y conceptos detr as de las arquitecturas profundas como tambi en los modelos utilizados en deep learning. Se presentan adem as aplicaciones de inter es en el area como tambi en la posible direcci on en que encauzar el trabajo futuro en deep learning.

1. Introducci on La inteligencia ha permitido a los seres humanos el desarrollar un entendimiento muchas veces acabado de fen omenos naturales y articiales cuya aplicaci on pr actica posee una importancia cr tica para el mismo ser humano. El replicar este comportamiento generado por este concepto de inteligencia ha sido uno de los objetivos fundamentales del area de la inteligencia articial desde sus or genes. De una forma m as concreta, podr a decirse que un (posible) objetivo en el area de la inteligencia computacional corresponde a dise nar m aquinas que logren desarrollar un entendimiento sobre fen omenos de inter es para los seres humanos. Es claro que una gran cantidad de informaci on sobre el fen omeno en estudio debe ser cuanticada mediante alg un mecanismo (potencialmente desconocido como es el caso del cerebro humano), ya sea expl cito o impl cito, para lograr un entendimiento a gran escala del fen omeno analizado. En el area de la inteligencia computacional, el almacenamiento expl cito de la informaci on es una tarea desaante tanto desde aspectos computacionales como tambi en el dise nar un proceso eciente de transferencia de conocimiento hacia la m aquina. Es por este motivo que actualmente la investigaci on en el area se centra en en-

Email address: dacuna@alumnos.inf.utfsm.cl (Diego Acu na Rozas)

Preprint submitted to Elsevier

March 1, 2014

contrar algoritmos de aprendizaje que permitan capturar de manera autom atica una cantidad no menor de informaci on sobre los problemas en estudio. Considerando el desarrollo de la inteligencia computacional, es factible proponer el cuestionamiento: Se ha logrado alcanzar el objetivo propuesto para el area? Actualmente, existe una variedad considerable de algoritmos de aprendizaje que han permitido alcanzar un avance importante en conjunto con resolver por completo problem aticas investigadas en el area. A un as , estas problem aticas no alcanzan a reejar por completo el objetivo principal planteado. En otras palabras, el area de la inteligencia computacional a un no logra desarrollar m aquinas que reejen un entendimiento similar al humano (pero con las ventajas del procesamiento computacional) en ciertas tareas de inter es. 1.1. Una mirada al comportamiento humano Si el objetivo de la inteligencia computacional es en cierta medida imitar el comportamiento humano inteligente que converge en un entendimiento de los fen omenos en estudio, entonces el analizar las caracter sticas m as relevantes de dicho comportamiento es sino un ejercicio necesario. Dentro de las siguientes caracter sticas [14] se puede concretar (discutiblemente) una caracterizaci on del entendimiento humano: Descomposici on en subproblemas: al enfrentarse a un problema complejo los seres humanos tienden a descomponer la dicultad enfrentada en subproblemas de menor complejidad. Desarrollo de jerarqu as de abstracciones: los seres humanos en su proceso cognitivo componen el conocimiento a partir de jerarq as de abstracciones las cuales a medida que se sube de nivel adquieren un sentido a un m as abstracto. Por ejemplo, al ver una imagen de una persona (1) primero se visualizan los bordes los cuales componen una gura, dicha gura en conjunto con otras abstracciones en un nivel superior pueden dar origen a una imagen compleja y el reconocimiento de la persona presente en la imagen. Reutilizaci on del conocimiento adquirido: una habilidad conocida del ser humano es utilizar la experiencia pasada como herramienta para construir conocimiento futuro. Habilidades y herramientas especializadas para ciertas tareas (en particular los estudios en primates reejan fuertemente esta caracter stica [32]): estudios principalmente realizados sobre el c ortex visual indican que en la arquitectura de este existen c elulas especializadas para ciertas tareas de reconocimiento visual. Este tipo de arquitectura es repetida en otros elementos del cerebro humano. Una reexi on v alida frente a lo mencionado con anterioridad es que pareciera ser que este comportamiento humano complejo que da origen al entendimiento al intentar ser plasmado en algoritmos de aprendizaje debe requerir de elementos 2

Figure 1: Distintos niveles de representaci on para una imagen. Mientras m as alto el nivel de representaci on se esperar a tener conceptos m as abstractos de la entrada original.

que sean capaces de representar dicha complejidad (m ultiples niveles de representaci on, especializaci on de componentes, etc.), es decir, para tareas donde se realiza un uso elevado de dichas cualidades al dise nar algoritmos de aprendizaje puede ser que se requiera de funciones matem aticas altamente no lineales (o de alta variabilidad) dada la alta expresividad de dichas funciones [2]. 1.2. Funciones de alta variabilidad Al considerar funciones de alta variabilidad en algoritmos de aprendizaje el objetivo buscado es representar con mayor precisi on las caracter sticas que denen el entendimiento humano. Considere un problema de aprendizaje donde se posee un conjunto de datos de entrada espec co. Al requerir de una funci on de alta variabilidad se busca generar un conjunto de niveles de representaci on donde a medida que se aumenta el nivel entonces este debe ser constru do mediante combinaciones altamente no lineales de los datos del conjunto de entrada. Adem as, para problemas que requieren de un comportamiento complejo como el presente en el ser humano, es factible considerar la hip otesis de que los datos de entrada en dichos problemas est an compuestos por una gran cantidad de variables (posiblemente desconocidas) las cuales a su vez est an relacionadas por fen omenos estad sticos desconocidos. A este conjunto de variables se les conocer a por factores de variaci on. Por ejemplo, en una imagen los factores de variaci on pueden corresponder a la posici on de un objeto en la imagen, la orientaci on de la imagen y la luminosidad presente en esta.

Si bien no todo el aprendizaje buscado en la inteligencia computacional es de este tipo, en el presente informe el foco es en problemas que siguen dicha tendencia. De manera m as formal, el inter es de estudio radica en problemas donde la distribuci on de los datos de entrada sigue una estructura como la siguiente: p(x) =
1 ,...,m

p(x|1 , . . . , m )p(1 , . . . , m )

donde p(1 , . . . , m ) es de alta variabilidad para una gran cantidad de combinaciones (posiblemente exponencial) de valores de los factores de variabilidad i . En la pr actica este tipo de estructura puede ser encontrada en problemas tales como: Handwritten digit recognition : i { angulo de rotaci on, luminosidad, fondo, etc.} Clasicaci on de documentos : i { topics, estilo, etc.} Speech recognition : i { g enero de quien habla, ruido, etc.} Para este tipo de problemas, es deseable que un algoritmo de aprendizaje logre aprender representaciones (en distintos niveles) de manera autom atica. Este objetivo tiene su origen en el area del aprendizaje de representaciones [3] la cual busca desarrollar algoritmos que permitan un aprendizaje autom atico de transformaciones de los datos en estudio que permitan reducir la complejidad de la tarea de extraer informaci on valiosa y u til al construir clasicadores y predictores. En el coraz on de este objetivo se encuentra la l nea de investigaci on cubierta por el area conocida como Deep Learning. El foco de estudio del Deep Learning puede resumirse en la tarea de encontrar autom aticamente niveles de abstracci on en los datos en estudio, desde niveles bajos de caracter sticas (niveles de luminosidad en una imagen) hasta conceptos de alto nivel en dichos datos (reconocimiento de una persona en una imagen), idealmente se desea lograr este objetivo con la menor intervenci on humana posible. Lo anterior implica el evitar denir manualmente los niveles de abstracci on buscados (el algoritmo debe encontrarlos por s mismo) y adem as el indicar un conjunto de datos de entrada relevantes sin la necesidad de un etiquetado manual (como en el arreglo supervisado cl asico en m aquinas de aprendizaje). Adem as, en similitud con el comportamiento inteligente humano, se busca desarrollar m aquinas que posean componentes especializados para resolver distintas tareas, esto implica tambi en una posibilidad de reutilizaci on de dichos componentes para el desarrollo de otros algoritmos de aprendizaje que as lo requieran. Bajo este u ltimo concepto, Deep Learning posee una similitud con el problema conocido como Multi-task Learning [10, 25]. 1.3. Objetivos del aprendizaje en inteligencia articial En resumen, en el desarrollo de algoritmos de aprendizaje es posible cuanticar los siguientes objetivos al resolver problemas de alta variabilidad: 4

Aprender funciones complejas con un n umero elevado de factores de variaci on posiblemente mayor que el tama no del conjunto de entrenamiento Aprender con la menor cantidad de intervenci on humana posible distintos niveles de abstracci on que sean u tiles para representar las funciones complejas necesarias para las tareas en AI Aprender mayormente de datos no etiquetados, es decir, en una conguraci on semi-supervisada Explotar las sinergias entre distintas tareas en AI, es decir, multi-task learning Aprendizaje de representaciones expresivas para los fen omenos en estudio y de inter es en AI En las siguientes secciones se expondr a como el area de reciente desarrollo conocidad como Deep Learning provee de modelos y herramientas que permiten alcanzar en cierta medida los objetivos buscados. La organizaci on del presente documento corresponde a la siguiente estructura: en la secci on 2 se presentan deniciones b asicas sobre conceptos y elementos utilizados en Deep Learning los cuales ser an de utilidad para comprender los modelos desarrollados en el area presentados en la secci on 3. En la secci on 4, se presentan diversos ejemplos donde Deep Learning ha sido utilizado obteniendo resultados satisfactorios. Por u ltimo, en la secci on 5 se presentan conclusiones del trabajo como tambi en posibles l neas de investigaci on futuras en el area. 2. Deep Learning: Motivaci on y Outline Hist orico 2.1. Motivaci on El desarrollo del area de Deep Learning es consecuencia de una serie de resultados te oricos como tambi en de elementos intuitivos presentados en la literatura. A continuaci on, se revisan los resultados m as relevantes que motivan el origen del area. Insuciencia de profundidad en la arquitectura utilizada: Si se considera el n umero de c alculos involucrados para transformar una entrada de datos en una salida efectuados por un algoritmo de aprendizaje, este ujo de operaciones puede ser representado por un grafo. Por ejemplo, la b puede ser representada mediante un grafo compuesto funci on sin(a2 + a por: Un nodo a y un nodo b tomando los datos a y b como entrada
b Un nodo tomando a y b como entrada para calcular la divisi on de a . Un nodo para calcular el cuadrado de a tomando a como entrada

Un nodo para la suma a2 +

b a

Figure 2: Profundidad para una red neuronal con una capa oculta y para una SVM.

Finalmente un nodo de salida que calcula el seno de la suma anterior Considerando entonces esta representaci on de un ujo de operaciones como un grafo, se puede denir el concepto de profundidad (depth ) como el camino m as largo en el grafo de operaciones desde un input a un output [4]. Para algunos algoritmos de aprendizajes cl asicos la profundidad es conocida (ver esquema 2): Para las redes neuronales feedforward se tiene una profundidad igual al n umero de capas (capas ocultas m as capa de salida) Para las SVM se puede considerar que posee profundidad dos, una para la salida de la funci on de kernel y otra para la combinaci on lineal que produce la salida Considerando el concepto de profundidad, es posible distinguir dos tipos de arquitecturas de aprendizaje: Shallow architectures : arquitecturas con una profundidad baja. En general se consideran arquitecturas de profundidad baja a aquellas que posean 2 o 3 niveles en su ujo de operaciones. Deep architectures : arquitecturas de profundidad elevada potencialmente mucho mayor que la presente en las shallow architectures. Ciertos resultados te oricos [2] muestran que ciertas funciones no pueden ser ecientemente representadas (eciencia en t erminos de los elementos que deben ser sintonizados por el algoritmo) por arquitecturas con una profundidad baja. Estos resultados sugieren que explorar algoritmos que utilicen arquitecturas profundas puede ser un ejercicio valioso abriendo la posibilidad de representar funciones que no pueden ser representadas ecientemente en arreglos de baja profundidad. 6

Una representaci on de una funci on se denomina compacta cuando posee pocos elementos de computaci on (pocos grados de libertad que necesitan ser sintonizados por el algoritmo de aprendizaje) [2]. A una representaci on que cumpla con dicha condici on es considerada una representaci on con alta expresividad. Por ejemplo, en la gura 2.1 la representaci on utilizada para la funci on objetivo es de alta expresividad ya que utiliza una arquitectura profunda. Visto desde otro punto de vista, una arquitectura profunda puede ser vista como una factorizaci on eciente de una arquitectura shallow. Al considerar una cantidad menor de elementos de computaci on, para un conjunto jo de datos de entrada es de esperar que una representaci on compacta conlleve a una mejor generalizaci on. Como se mencion o con anterioridad, os resultados te oricos sugieren que funciones que son representadas de manera compacta por un modelo de profundidad k pueden requerir un n umero exponencial de elementos de computaci on en un modelo de profundidad k 1[2]. Esto est a demostrado para: Unidades l ogicas [16] Multi-layer neural networks with linear treshold units and positive weights [17] Estos resultados permiten el presentar la siguiente reexi on Poseen las arquitecturas con profundidad baja una capacidad de expresi on muy reducida para representar las funciones complejas (de alta variabilidad) necesarias en el aprendizaje en inteligencia articial? Si bien, los resultados anteriormente presentados no incluyen la totalidad de algoritmos de aprendizaje conocidos a la fecha, son sin duda una motivaci on para la investigaci on sobre la capacidad y expresividad que puedan aportar las arquitecturas profundas.

Figure 3: Contraste entre una m aquina basada en local generalization (k -means) y una basada en distributed representations (Restricted Boltzmann Machine )

Generalizaci on local: Un estimador es denominado local en su espacio de entrada si es que para obtener una buena generalizaci on para un nuevo elemento x de entrada explota la similitud de x con los vecinos en el espacio de entrada conocidos de x. Los estimadores locales impl cita o expl citamente particionan el espacio de entrada en regiones y requieren de distintos par ametros o grados de libertad para dar cuenta de la forma de la funci on buscada en cada una de las regiones. Un algoritmo basado en generalizaci on local podr a generalizar bien u nicamente si es que posee una cantidad suciente de ejemplos de entrada que permitan cubrir todas las regiones que deben ser distinguidas para representar la funci on objetivo [4, 5]. En contraste las representaciones distribuidas [20] permiten representar con alta expresividad la funci on objetivo, es decir, una arquitectura que utilizar una representaci on distribuida posee un tama no razonable (en comparaci on con el n umero de regiones utilizadas en un generalizador local) y que puede capturar un gran n umero de posibles conguraciones de entrada. Si la funci on que se desea aprender es de alta variabilidad, entonces un generalizador local requerir a de muchos ejemplos para lograr una buena generalizaci on. Este no es el caso para un algoritmo que utilice una representaci on distribuida. Para ejemplicar lo comentado anteriormente, en la gura 3 se puede observar una comparaci on entre un generalizador local (k-means) y un algoritmo que utiliza una representaci on distribuida (Restricted Boltzmann Machine [22]). Met aforas desde la neurociencia: Fuera de considerar los resultados te oricos expuestos con anterioridad, existen un conjunto de investigaciones provenientes del area de la neurociencia que de una u otra forma motivan de manera intuitiva la noci on de aprendizaje profundo expuesta por los algoritmos de deep learning. Algunos resultados de dichas investigaciones

corresponden a: El cerebro pareciera estar formado por una arquitectura profunda [2]: bas andose en el conocimiento actual de la anatom a cerebral [32], pareciera ser que el c ortex visual puede ser visto como una arquitectura profunda, en particular compuesta por entre 5 y 10 capas para las tareas visuales m as simples. Los procesos cognitivos parecen provenir de arquitecturas profundas ya que se construyen a partir de m ultiples niveles de abstracci on y procesamiento: es natural para los seres humanos el representar conceptos en un cierto nivel de abstracci on como la composici on de conceptos en niveles inferiores. Esto conlleva impl citamente una noci on de reuso del conocimiento. Los algoritmos de deep Learning toman en consideraci on esta noci on permiti endo adem as su aplicaci on en problem aticas relacionadas con transfer learning y multi-task learning ([9]). 2.2. Outline hist orico Los modelos utilizados com unmente para el desarrollo de t ecnicas de deep learning corresponden principalmente a los siguientes: Restricted Boltzmann Machine (Smolensky, 1986) [33] Auto-Encoders (Hinton, 1994) [23] Convolutional Neural Networks (LeCunn 1995) [26] Para el buen observador, dichos modelos fueron desarrollados hace ya bastante tiempo. Queda entonces preguntarse el porqu e solo hace solo unos pocos a nos el area de deep learning tuvo su realce y comenz o a atraer la atenci on del p ublico (a nos posteriores a 2006). La respuesta recae en que los modelos mencionados correspond an solo a modelos te oricos (con excepci on de las redes convolucionales) que en la pr actica eran infactibles de entrenar. Esto cambi o el a no 2006-2007 con la publicaci on de los siguientes trabajos: Hinton, G. E., Osindero, S. and Teh, Y., A fast learning algorithm for deep belief nets [22], 2006 Yoshua Bengio, Pascal Lamblin, Dan Popovici and Hugo Larochelle, Greedy Layer-Wise Training of Deep Networks [6], 2007 Marc Aurelio Ranzato, Christopher Poultney, Sumit Chopra and Yann LeCun Ecient Learning of Sparse Representations with an Energy-Based Model [30], 2006 En conjunto, en dichos trabajos se desarrollan algoritmos que ecientemente permiten entrenar modelos de arquitecturas profundas obteniendo resultados alentadores. Estos fueron los resultados principales que comenzaron un desarrollo potente para el area. 9

3. Modelos en Deep Learning 3.1. Restricted Boltzmann Machine Uno de los modelos m as utilizados en deep learning corresponde a la Restricted Boltzmann Machine (RBM desde ahora en adelante) propuesta inicialmente por Smolensky [33] y trabajadas por G. Hinton en diversas publicaciones [21, 22]. Estas corresponden a un grupo de modelos englobados bajo la denominaci on de modelos basados en energ a [27] los cuales se caracterizan por asociar un valor escalar (denominado energ a) a distintas conguraciones de las variables en estudio asociadas al problema. Esta energ a puede ser entendida como un medida de compatibilidad entre las variables. En general se asocia un valor peque no al escalar de energ a para representar una alta compatibilidad (i.e. similitud) entre las variables en estudio y un valor elevado para conguraciones de variables que son altamente incompatibles. El aprendizaje en este tipo de modelos consiste principalmente en encontrar una funci on de energ a tal que para conguraciones correctas de las variables analizadas la energ a sea m nima (por conguraciones correctas se entiende un modelo que logre encontrar valores para variables desconocidas y que dichas variables logren valores correctos para el fenomeno en estudio). Para ejemplicar, considere un problema con dos variables X e Y (ver gura 4. X podr a ser un vector que represente una imagen, Y puede ser la categor a de dicha imagen. El objetivo es encontrar una funci on de energ a E (Y, X ) (en los modelos basados en energ a en tambi en existe un funcional de p erdida. Este permite medir la calidad entre distintas funciones de energ as disponibles en un tiempo t). En particular, el modelo debe predecir un valor Y tal que: Y = argminY Y E (Y, X ) Si el conjunto Y es peque no solo se debe calcular el valor de E (Y, X ) para todos los posibles valores de Y y seleccionar el que de origen al m nimo de la energ a. Lamentablemente, para la gran mayor a de problemas encontrados en la realidad el conjunto Y es de gran tama no por lo que la opci on anterior es intratable. Hasta este punto en un modelo de energ a solo interesa que la energ a de una conguraci on sea m nima para que esta sea seleccionada como la optima. El resto de conguraciones de variables son irrelevantes mientras su energ a sea elevada. Cuando se consideran distintos sistemas basados en energ a, es necesario utilizar una medida de energ a que sea comparable entre ambos sistemas. Siguiendo la denici on entregada anteriormente para la energ a del sistema, no hay garant a de que las escalas de energ a entre sistemas sean comparables. Para resolver esta problem atica se utiliza un modelo de energ a calibrado mediante una distribuci on de probabilidad normalizada [27] (distribuci on de Gibbs): P (Y |X ) = eE (Y,X ) eE (y,X ) y Y

10

Figure 4: Medida de compatibilidad de un modelo de energ a para una variable X y una variable Y utilizando una funci on de energ a E (Y, X ).

En la pr actica, (considerando un conjunto x de variables de inter es) se utiliza la siguiente expresi on: P (x) = eE (x) E (x) xe

El denominador de P (x) se denomina funci on de partici on haciendo una analog a con la mec anica estad stica. La RBM es un modelo basado en el modelo de energ a denominado Boltzmann Machine [1] (BM). En una BM se posee un conjunto de variables xi que representan los datos de entrada de un problema en estudio recoletadas en un vector x. Adem as, se posee un conjunto de variables ocultas recolectadas en un vector h que pueden ser entendidos como detectores de caracter sticas de los datos de entrada. El conjunto x es el conjunto de variables visibles del modelo y como se mencion o anteriormente el conjunto h corresponde al conjunto de variables ocultas. Con estas consideraciones, se tiene (recordar la funci on de energ a): eE (x,h) Z Donde Z = x,h eE (x) es la funci on de partici on del modelo. La probabilidad asignada por el modelo a un vector visible x viene dada por: P (x, h) = P (x) = 1 Z 11 eE (x,h)
h

Para mayor comodidad, es posible denir adem as la energ a libre de un vector x: F reeEnergy (x) = log
h

eE (x,h)

Esto nuevamente haciendo una met afora al area de la mec anica estad stica. Considerando la denici on de energ a libre, se tiene: 1 F reeEnergy(x) e Z Una m aquina de Boltzmann cumple con un modelo de energ a que es un polinomio de segundo grado en x, h: P (x) = E (x, h) = h W x + h U h + x V x + b h + c x Con un vector de coecientes = (W, U, V, b, c) donde W representa la interacci on entre variables visibles y ocultas. U la interacci on entre variables ocultas. V la interacci on entre variables visibles y b, c el bias de h y x respectivamente. Siendo la Boltzmann Machine y los EBM modelos probabilisticos, para entrenar los par ametros del modelo se busca maximizar la log-verosimilitud de los datos de entrada [19]: logP (x) F reeEnergy (x) 1 + Z F reeEnergy ( x)

= =

x) eF reeEnergy( x

F reeEnergy (x) +

P ( x)
x

F reeEnergy ( x)

Tomando la expectaci on: logP (x) ] F reeEnergy (x) F reeEnergy (x) ] + EP [ ]

EP [

= EP [

corresponde a la Donde las expectaciones son tomadas con respecto a x. P distribuci on emp rica del conjunto de entrada y P la distribuci on del modelo de energ a. Para este tipo de modelos el problema de entrenamiento es intratable (calcular la verosimilitud P (x) es intratable excepto cuando h y x tienen pocas componentes debido principalmente al c alculo de P (h|x)) [2]. Sin embargo, si se eliminan las conexiones entre los nodos visibles (conjunt x) junto a las conexiones entre nodos ocultos (conjunto h), es decir, U, V = 0 el problema se vuelve tratable dado que P (h|x) se puede factorizar en i P (hi |x). Este nuevo modelo (considerando U, V = 0) es denominado Restricted Boltzmann Machine (RBM). Las RBM son entrenadas mediante una estimaci on del gradiente de la log-verosimilitud. El algoritmo que realiza el entrenamiento es denominado Contrastive Divergence [22] y fue propuesto por G. Hinton dando origen al realce del area de deep learning. 12

Figure 5: Esquema de una Deep Belief Network

Para la formaci on de arquitecturas profundas, las RBM pueden ser utilizadas como elementos bases de construcci on de la arquitectura. Estos modelos pueden ser apilados en capas de gran profundidad para posteriormente ser entrenadas ecientemente mediante un enfoque greedy [22]. Este nuevo modelo es denominado Deep Belief Network (ver gura 5) las que han sido utilizadas de manera exitosa en un conjunto de aplicaciones (para mayor detalle ver secci on 4). 3.2. Convolutional Neural Networks Los modelos convolucionales (CNN desde ahora en adelante) fueron desarrollados inicialmente por K. Fukushima [15] y luego perfeccionados por Y. LeCunn [26] y corresponden principalmente a una variaci on del perceptr on multicapa. El dise no de la arquitectura de las CNN encuentra su inspiraci on en la biolog a en particular en el funcionamiento del c ortex visual (seg un los trabajos de Hubel y Wiesel sobre el c ortex visual en felinos [24]). B asicamente n el c ortex visual existen c elulas especializadas que son sensibles solo a una peque na regi on del espacio de entrada. A esta regi on se le denomina campo de recepci on. Estos campos de recepci on son reunidos de tal forma que en conjunto cubren el campo visual del individuo por completo. Esta caracter stica permite explotar la localidad en la informaci on que se recibe de entrada, en otras palabras, cada campo de recepci on es local en alg un sector del espacio de informaci on de entrada. La idea que da origen a las CNN consiste en imitar este funcionamiento del c ortex visual para resolver (en un principio) problemas relacionados a im agenes mediante algoritmos de aprendizaje [18] explotando el concepto de que en im agenes existe una fuerte correlaci on entre pixeles cercanos, es decir, hay una fuerte correlaci on local. Esto sugiere el implementar una red neuronal que siga la noci on de los campos de recepci on del c ortex visual para as explotar la alta correlaci on local presente en los problemas de im agenes. 13

Figure 6: Esquema de una red neuronal convolucional

En su estructura general, las CNN son similares a las redes neuronales tradicionales (ver gura 6) con la diferencia que se imponen ciertas restricciones a la uni on entre nodos lo que permite obtener una arquitectura particular que las caracteriza. A grandes rasgos, se componen de capas de convoluci on las que efect uan una operaci on basada en un ltro lineal en los datos que reciben de entrada y de capas de subsampling las que permiten aumentar el poder de generalizaci on del modelo. Esta arquitectura permite explotar 3 caracter sticas del modelo [8, 18]: Capacidad de extraer caracter sticas de los datos de entrada: cada neurona obtiene sus entradas desde un campo receptivo en la capa anterior, esto permite extraer caracter sticas locales. Feature Mapping : cada capa de la red est a compuesta de m ultiples features maps donde cada feature map es un plano de neuronas las cuales tienen la restricci on de compartir los mismos pesos. Esto permite agregar ventajas de invarianza a la posici on de cada feature y una reducci on del n umero de par ametros del modelo. Subsampling : A cada capa de convoluci on le sigue una capa que realiza un promedio de una sub-regi on de la entrada desde la capa de convoluci on y realiza una multiplicaci on con los pesos de la capa para nalmente pasar por una funci on de activaci on sigmoidal. Esto tiene el efecto de reducir la sensibilidad del feature map desde donde provienen los datos ante efectos de ruido y distorsi on. Para explotar la correlaci on local de manera similar a lo encontrado en el c ortex visual, se utiliza un concepto denominado sparse connectivity el cual consiste en conectar neuronas de la capa m con un subconjunto local de neuronas en la capa m 1 en particular las que poseen un campo receptivo contiguo (ver

14

Figure 7: Sparse connectivity en una red neuronal convolucional

Figure 8: Propiedad de Shared Weights en una red convolucional

gura 7). De esta forma los campos receptivos solo observan caracter sticas locales de la imagen en estudio. Adem as,las neuronas dentro de un mismo feature map comparten los pesos de conexi on (ver gura 8). Esto permite detectar features independiente de su posici on en el campo visual dado que un mismo detector es trasladado a otra posici on del campo visual. Adem as, se reduce el n umero de par ametros libres del modelo. La operaci on de convoluci on aplicada a las entradas en cada capa da origen a capas de convoluci on y principalmente consiste en un ltro lineal sumado a un t ermino de bias. Finalmente al resultado se le aplica una funci on no lineal. Con nes ilustrativos, considere el k feature map para una capa l como hk . El ltro a aplicar viene determinado por los pesos W k y el bias bk . Entonces, hk viene dado por:
k hk ij = tanh((W x)ij + bk )

Para aumentar la expresividad, cada capa posee m ultiples features maps : [h(k) , k = 0..K ] Lo anterior puede ser entendido gr acamente observando la operaci on de convoluci on mostrada en la gura 9. Para ejemplicar, considere la red convolucional presentada en la gura 10. A continuaci on, se desglosar a paso a paso explicando la arquitectura de dicha red: La primera capa realiza una convoluci on. 4 feature maps de 24x24 neuronas. A cada neurona se le asigna un campo receptivo de 5x5 15

Figure 9: Aplicaci on de convoluci on en una imagen de 6x6

Figure 10: Ejemplo de una red convolucional para el problema de handwritten recognition

La segunda capa realiza subsampling. 4 feature maps de 12x12 neuronas. Cada neurona tiene un campo receptivo de 2x2 ... Por u ltimo, la u ltima capa (capa de salida) realiza un u ltimo paso de convoluci on. Consiste de 26 neuronas donde a cada neurona se le asigna uno de 26 posibles caracteres. Cada neurona tiene un campo receptivo de 4x4. Para obtener el resultado nal, se compara la salida de las neuronas de la capa de salida para obtener una neurona ganadora. El arreglo convolucional ha logrado resultados exitosos en problemas asociados a im agenes y recientemente ha sido utilizado como esquema para crear redes convolucionales profundas utilizando componentes como RBM [28]. 4. Aplicaciones de Deep Learning Desde la publicaci on de los 3 trabajos fundacionales (ver secci on 2) en el area de deep learning, muchas han sido las aplicaciones de los modelos profundos a problemas de inter es en la inteligencia computacional. En esta secci on se describen brevemente algunas de dichas aplicaciones. 16

Speech Recognition and Signal Processing : La aplicaci on de modelos profundos a este tipo de problemas logr o resultados de gran exito en datasets cl asicos utilizados en la literatura. Las investigaciones llevadas a cabo principalmente entre los a nos 2011 y 2012 [13, 31, 29] lograron reducir la tasa de error en 4 benchmarks importantes en cerca de un 15 20% (ejemplo: de un 27.4% a un 18.5% en el benchmark RT03S). En 2012, Microsoft lanza la nueva versi on de su servicio de speech recognition denominado MAVIS (Microsoft Audio Video Indexing Service) el cual est a fuertemente basado en t ecnicas de Deep Learning [31]. Object Recognition : Principalmente ha exisito un enfoque de resolver el problema de clasicaci on de d gitos MNIST1 . El 2006 [22] y 2007 [6] se logra romper la supremacia de las SVM en dicho problema Actualmente, el estado del arte lo posee una red profunda de arquitectura convolucional (2012) [11]. Natural Language Processing : la aplicaci on se basa en el aprendizaje distribuido para representaci on de palabras, denominado word embedding [7]. El 2011 [12] se aplica esta idea en conjunto con una arquitectura convolucional para desarrollar el sistema SENNA el cual iguala o sobrepasa al estado del arte en tareas de syntatic parsing, part-of-speech tagging, entre otros. La ventaja es que es mucho m as veloz que otros resultados del estado del arte. Para un listado m as exhaustivo y detallado de aplicaciones de arquitecturas profundas el lector puede referirse a [3]. 5. Conclusiones y Trabajo Futuro Las arquitecturas y el aprendizaje profundo han permitido desarrollar nuevos modelos para algoritmos de aprendizaje los cuales han demostrado obtener resultados importantes en una no menor cantidad de problemas de inter es para la inteligencia computacional. Ciertos resultados te oricos en conjunto con analog as provenientes del mundo de la neurociencia los modelos profundos parecen abrir un nuevo camino en el avance a cumplir los objetivos principales de la inteligencia computacional. Sin embargo, el area de deep learning es reciente y a un quedan cuestiones tanto te oricas como pr acticas que resolver. En particular, el encontrar soluci on y respuesta a algunas de las siguientes interrogantes puede ser una l nea interesante de investigaci on: Se puede generalizar el resultado de la profundidad (que motiva el area de deep learning) a otras arquitecturas? Existe un profundidad suciente para alcanzar computacionalmente el nivel humano en tareas de AI?
1 http://yann.lecun.com/exdb/mnist/

17

Pueden ser reemplazadas las RBM y los autoencoders por algoritmos que sean igualmente ecientes en tareas de extracci on de representaciones pero que involucren problemas de optimizaci on m as sencillos? Proponer mejoras en los algoritmos de aprendizajes para modelos profundos en particular que aumenten la eciencia de estos. Existen mejores m etodos de tracking en el entrenamiento de RBM y DBN? Analizar la factibilidad de aplicabilidad de modelos de deep learning a nuevos problemas que surgen en la inteligencia computacional. References [1] David H Ackley, Georey E Hinton, and Terrence J Sejnowski. A learning algorithm for boltzmann machines*. Cognitive science, 9(1):147169, 1985. [2] Yoshua Bengio. Learning deep architectures for ai. trends R in Machine Learning, 2(1):1127, 2009. Foundations and

[3] Yoshua Bengio, Aaron Courville, and Pascal Vincent. Representation learning: A review and new perspectives. 2013. [4] Yoshua Bengio and Olivier Delalleau. On the expressive power of deep architectures. In Algorithmic Learning Theory, pages 1836. Springer, 2011. [5] Yoshua Bengio, Olivier Delalleau, and Clarence Simard. Decision trees do not generalize to new variations. Computational Intelligence, 26(4):449 467, 2010. [6] Yoshua Bengio, Pascal Lamblin, Dan Popovici, Hugo Larochelle, et al. Greedy layer-wise training of deep networks. Advances in neural information processing systems, 19:153, 2007. [7] Yoshua Bengio, Holger Schwenk, Jean-S ebastien Sen ecal, Fr ederic Morin, and Jean-Luc Gauvain. Neural probabilistic language models. In Innovations in Machine Learning, pages 137186. Springer, 2006. [8] Christopher M Bishop et al. Pattern recognition and machine learning, volume 1. springer New York, 2006. [9] Rich Caruana. Learning many related tasks at the same time with backpropagation. Advances in neural information processing systems, pages 657664, 1995. [10] Richard A Caruana. Multitask connectionist learning. In In Proceedings of the 1993 Connectionist Models Summer School. Citeseer, 1993.

18

[11] Dan Ciresan, Ueli Meier, and J urgen Schmidhuber. Multi-column deep neural networks for image classication. In Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on, pages 36423649. IEEE, 2012. [12] Ronan Collobert, Jason Weston, L eon Bottou, Michael Karlen, Koray Kavukcuoglu, and Pavel Kuksa. Natural language processing (almost) from scratch. The Journal of Machine Learning Research, 12:24932537, 2011. [13] George E Dahl, Abdel-rahman Mohamed MarcAurelio Ranzato, Abdelrahman Mohamed, and Georey E Hinton. Phone recognition with the mean-covariance restricted boltzmann machine. In NIPS, pages 469477, 2010. [14] Edward A Feigenbaum. Some challenges and grand challenges for computational intelligence. Journal of the ACM (JACM), 50(1):3240, 2003. [15] Kunihiko Fukushima. Neocognitron: A self-organizing neural network model for a mechanism of pattern recognition unaected by shift in position. Biological cybernetics, 36(4):193202, 1980. [16] Johan Hastad. Almost optimal lower bounds for small depth circuits. In Proceedings of the eighteenth annual ACM symposium on Theory of computing, pages 620. ACM, 1986. [17] Johan H astad and Mikael Goldmann. On the power of small-depth threshold circuits. Computational Complexity, 1(2):113129, 1991. [18] Simon S Haykin, Simon S Haykin, Simon S Haykin, and Simon S Haykin. Neural networks and learning machines, volume 3. Pearson Education Upper Saddle River, 2009. [19] Georey Hinton. A practical guide to training restricted boltzmann machines. Momentum, 9(1):926, 2010. [20] Georey E Hinton. Learning distributed representations of concepts. In Proceedings of the eighth annual conference of the cognitive science society, pages 112. Amherst, MA, 1986. [21] Georey E Hinton. Training products of experts by minimizing contrastive divergence. Neural computation, 14(8):17711800, 2002. [22] Georey E Hinton, Simon Osindero, and Yee-Whye Teh. A fast learning algorithm for deep belief nets. Neural computation, 18(7):15271554, 2006. [23] Georey E Hinton and Richard S Zemel. Autoencoders, minimum description length, and helmholtz free energy. Advances in neural information processing systems, pages 33, 1994.

19

[24] David H Hubel and Torsten N Wiesel. Receptive elds, binocular interaction and functional architecture in the cats visual cortex. The Journal of physiology, 160(1):106, 1962. [25] Nathan Intrator. Making a low-dimensional representation suitable for diverse tasks. Connection Science, 8(2):205224, 1996. [26] Yann LeCun and Yoshua Bengio. Convolutional networks for images, speech, and time series. The handbook of brain theory and neural networks, 3361, 1995. [27] Yann LeCun, Sumit Chopra, Raia Hadsell, M Ranzato, and F Huang. A tutorial on energy-based learning. Predicting structured data, 2006. [28] Honglak Lee, Roger Grosse, Rajesh Ranganath, and Andrew Y Ng. Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations. In Proceedings of the 26th Annual International Conference on Machine Learning, pages 609616. ACM, 2009. [29] Abdel-rahman Mohamed, George E Dahl, and Georey Hinton. Acoustic modeling using deep belief networks. Audio, Speech, and Language Processing, IEEE Transactions on, 20(1):1422, 2012. [30] Christopher Poultney, Sumit Chopra, Yann L Cun, et al. Ecient learning of sparse representations with an energy-based model. In Advances in neural information processing systems, pages 11371144, 2006. [31] Frank Seide, Gang Li, and Dong Yu. Conversational speech transcription using context-dependent deep neural networks. In Interspeech, pages 437 440, 2011. [32] Thomas Serre, Gabriel Kreiman, Minjoon Kouh, Charles Cadieu, Ulf Knoblich, and Tomaso Poggio. A quantitative theory of immediate visual recognition. Progress in brain research, 165:3356, 2007. [33] Paul Smolensky. Information processing in dynamical systems: Foundations of harmony theory. 1986.

20

S-ar putea să vă placă și