Line 455: | Line 455: | ||
| style="border-right: 2px solid;" | <math>2</math> | | style="border-right: 2px solid;" | <math>2</math> | ||
| style="border-left: 2px solid;" | <math>0.947</math> | | style="border-left: 2px solid;" | <math>0.947</math> | ||
− | | <math>0.956</math> | <math>0.967</math> | + | | style="border-left: 2px solid;"| <math>0.956</math> |
+ | | style="border-left: 2px solid;"|<math>0.967</math> | ||
|- | |- | ||
| style="border-right: 2px solid;" | <math>3</math> | | style="border-right: 2px solid;" | <math>3</math> | ||
| style="border-left: 2px solid;" | <math>0.973</math> | | style="border-left: 2px solid;" | <math>0.973</math> | ||
− | | <math>0.933</math> | <math>1</math> | + | | style="border-left: 2px solid;"| <math>0.933</math> |
+ | | style="border-left: 2px solid;"| <math>1</math> | ||
|- | |- | ||
| style="border-right: 2px solid;" | <math>4</math> | | style="border-right: 2px solid;" | <math>4</math> | ||
| style="border-left: 2px solid;" | <math>0.987</math> | | style="border-left: 2px solid;" | <math>0.987</math> | ||
− | | <math>0.933</math>| <math>0.966</math> | + | | style="border-left: 2px solid;"| <math>0.933</math> |
+ | | style="border-left: 2px solid;"| <math>0.966</math> | ||
|- | |- | ||
| style="border-right: 2px solid;" | <math>5</math> | | style="border-right: 2px solid;" | <math>5</math> | ||
| style="border-left: 2px solid;" | <math>0.973</math> | | style="border-left: 2px solid;" | <math>0.973</math> | ||
− | | <math>0.8</math> | <math>0.933</math> | + | | style="border-left: 2px solid;"| <math>0.8</math> |
+ | | style="border-left: 2px solid;"| <math>0.933</math> | ||
|- | |- | ||
| style="border-right: 2px solid;" | <math>6</math> | | style="border-right: 2px solid;" | <math>6</math> | ||
| style="border-left: 2px solid;" | <math>0.986</math> | | style="border-left: 2px solid;" | <math>0.986</math> | ||
− | | <math>0.911</math> | <math>0.867</math> | + | | style="border-left: 2px solid;"| <math>0.911</math> |
+ | | style="border-left: 2px solid;"| <math>0.867</math> | ||
|- | |- | ||
| style="border-right: 2px solid;" | <math>7</math> | | style="border-right: 2px solid;" | <math>7</math> | ||
| style="border-left: 2px solid;" | <math>0.987</math> | | style="border-left: 2px solid;" | <math>0.987</math> | ||
− | | <math>0.867</math> | <math>0.867</math> | + | | style="border-left: 2px solid;" | <math>0.867</math> |
+ | | style="border-left: 2px solid;" | <math>0.867</math> | ||
|- | |- | ||
| style="border-right: 2px solid;" | <math>8</math> | | style="border-right: 2px solid;" | <math>8</math> | ||
| style="border-left: 2px solid;" | <math>0.987</math> | | style="border-left: 2px solid;" | <math>0.987</math> | ||
− | | <math>0.8</math> | <math>0.633</math> | + | | style="border-left: 2px solid;" | <math>0.8</math> |
+ | | style="border-left: 2px solid;" | <math>0.633</math> | ||
|- | |- | ||
| style="border-right: 2px solid;" | <math>9</math> | | style="border-right: 2px solid;" | <math>9</math> | ||
| style="border-left: 2px solid;" | <math>0.987</math> | | style="border-left: 2px solid;" | <math>0.987</math> | ||
− | | <math>0.756</math> | <math>0.756</math> | + | | style="border-left: 2px solid;" | <math>0.756</math> |
+ | | style="border-left: 2px solid;" | <math>0.756</math> | ||
|- style="border-bottom: 2px solid;" | |- style="border-bottom: 2px solid;" | ||
| style="border-right: 2px solid;" | <math>10</math> | | style="border-right: 2px solid;" | <math>10</math> | ||
| style="border-left: 2px solid;" | <math>0.987</math> | | style="border-left: 2px solid;" | <math>0.987</math> | ||
− | | <math>0.756</math> | <math>0.6</math> | + | | style="border-left: 2px solid;" | <math>0.756</math> |
+ | | style="border-left: 2px solid;" | <math>0.6</math> | ||
|} | |} |
Fernando Aguilar-Canto
Carlos Brito-Loeza
A pesar de tener un sustento biológico, la regla de Hebb ha encontrado un espacio reducido en las implementaciones de redes neuronales artificiales en las últimas décadas, siendo los métodos basados en el gradiente más utilizados. Esto supone una controversia sobre hasta qué grado entendemos los aspectos computacionales del aprendizaje a nivel neuronal. En este trabajo, abordamos el problema del aprendizaje hebbiano en términos de la existencia de una arquitectura conveniente, tanto a nivel teórico como experimental. En el plano teórico, se demuestra la existencia de un red hebbiana capaz de lograr minimizar el error de clasificación a un mínimo global. Si bien esta arquitectura es poco práctica por la explosión combinatoria, se prueba que el algoritmo de -celdas con entrenamiento hebbiano logra, en buena medida, resolver sus principales problemas. Finalmente se verificó experimentalmente que el método de -celdas supera a los métodos basados en el gradiente en un problema de clasificación de baja dimensionalidad (base de datos Iris) con de exactitud para , lo cual, a pesar de sus limitaciones, indica que el aprendizaje hebbiano puede derivar a un algoritmo de clasificación competente en el contexto de la Inteligencia Artificial moderna.
La Regla de Hebb es un modelo teórico de plasticidad sináptica propuesto originalmente el trabajo de Donald Hebb [1], aunque, como observa [2], autores como Konorski [3] y Ramón y Cajal [4] ya habían concebido ideas semejantes. Unas décadas después, las ideas de Hebb recibieron confirmación experimental al observarse que su conjetura modelaba al fenómeno de Potenciación a Largo Plazo (Long-Term Potentiation, LTP), el cual fue descrita por primera vez en los trabajos de Terje Lmo y Timothy Bliss [5,6].
Computacionalmente, la regla de Hebb señala un método paramétrico de aprendizaje de redes neuronales que ha recibido cierto sustento biológico. Posterior al planteamiento original de la regla de Hebb simple se han propuesto otras reglas de aprendizaje más próximas a experimentos más recientes, como es el caso de la regla BCM [7] o la regla STDP (véase [8] para una formulación), o tratan de resolver problemas computacionales concretos como es el caso de la regla de Oja [9]. Sin embargo, a pesar de los avances, los algoritmos de redes neuronales (incluyendo las profundas) usualmente se entrenan utilizando métodos basados en el gradiente y retropropagación.
¿Qué ventajas proporciona disponer de un aprendizaje basado en el conocimiento disponible de la plasticidad frente a los métodos “artificiales”? ¿Por qué en la actualidad se han descartado a los métodos basados en la regla de Hebb frente a los métodos basados en el gradiente? Estas preguntas forman parte de la discusión general existente entre hasta qué punto se debe tratar de emular a los sistemas biológicos para crear inteligencia artificial, generalmente enmarcado en la discusión del conexionismo contra el enfoque simbólico de la Inteligencia Artificial (véase, por ejemplo [10] para una breve discusión de la situación actual del debate en un área concreto). En este caso, sin embargo, tenemos un caso donde dos enfoques conexionistas entran en debate sobre la forma en que deben aprender las neuronas, siendo en apariencia el modelo basado en el gradiente el de mayor éxito hasta ahora.
No es la primera vez que dos modelos conexionistas entran en conflicto sobre el nivel de plausibilidad biológica que se necesita para alcanzar los resultados. Por ejemplo, en cuestiones relacionadas con la arquitectura, los modelos de redes neuronales profundas han sido señalados por tener un alto grado de abstracción con respecto a las neuronas biológicas [11], siendo modelos como HMAX (véase [12]) preferidos por algunos autores por tener una construcción más relacionada con los experimentos en la Corteza Visual.
La discusión que se plantea en este artículo es diferente: dadas redes neuronales generales, ¿es preferible disponer de aprendizaje hebbiano sobre aprendizaje basado en el gradiente? Una de las acusadas ventajas que disponen las reglas basadas en Hebb se refieren a la capacidad de implementarse en tiempo real [13], pero su principal desventaja es que por lo general no alcanzan el desempeño otorgado por las reglas basadas en el gradiente y en algunos casos la diferencia es muy aguda [14].
¿Por qué un algoritmo biológicamente inspirado no alcanza los resultados de clasificación de un algoritmo aparentemente artificial? Divisamos cinco posibles razones principales por las que esto ocurra:
En apariencia, los esfuerzos por generar algoritmos biológicamente más plausibles para modelos conexionistas parecen acercarse asintóticamente a los resultados logrados vía descenso del gradiente pero sin lograr aún un resultado contundente que los supere. Esto no quiere decir que las propuestas estén mal fundadas, ya que pueden incluir otras ventajas como el aprendizaje en tiempo real. Sin embargo, la pregunta sigue abierta y no creemos que una solución no exista puesto que los seres humanos somos capaces de realizar tales actividades de reconocimiento de imágenes sin dificultad. No obstante, incluso esta idea puede estar mal fundada ya que los modelos de redes profundas pueden superar a la exactitud humana como clama el artículo de [20]. De esta manera, es posible que los algoritmos puedan estar sobrecalificados para tareas específicas y disponer de una buena aproximación a los mismos con arquitecturas convenientes puede llegar a ser una solución conveniente y no tratar de aspirar a entender cómo las redes biológicas logran una mayor capacidad de clasificación.
En este artículo, trataremos de aproximarnos a las preguntas anteriormente planteadas. La aproximación que haremos será referente a la última posible respuesta que se planteó, indicando que la arquitectura que se maneja es insuficiente para resolver los problemas de clasificación. Hemos visto que dada una arquitectura arbitraria, el descenso del gradiente suele obtener mejores resultados. Sin embargo, ¿existirá una arquitectura apropiada para la regla de Hebb con la que se puedan obtener los resultados que se observan con métodos basados en el gradiente? Este acercamiento que se dará será de corte principalmente teórico, pero se mostrará una implementación de las ideas abordadas.
La descripción matemática de la Regla de Hebb estará principalmente basada en [21], salvo donde se indique. Por simplicidad, partiremos del modelo de tasa de disparo para representar a la actividad de cada neurona individual. De manera alternativa, se pueden utilizar spikes (potenciales de acción) para modelar la actividad neuronal, como se realiza en [19]. Sea la actividad de una neurona (usualmente postsináptica) que recibe un vector de señales aferentes , las cuales pueden tener origen sensorial (datos de sensores o de bases) o de otras neuronas. El conjunto puede ser discreto (), un intervalo continuo (), o bien el mismo conjunto de los números reales no negativos. La actividad (tasa de disparo) está modelada por la siguiente ecuación diferencial
|
donde representa el vector de pesos de las entradas, y la constante satisface . Para linealizar la ecuación, se suele tomar , lo cual lo convierte en el modelo estándar de red neuronal artificial y de esta forma se trabajará en este artículo. representa a la función de activación y en este caso se tomará por la función identidad cuando utilicemos o sigmoide si . Para fines prácticos, en este artículo se tomará a la función de activación como la identidad.
Un modelo sencillo de la Regla de Hebb ha sido llamado como Simple o Básico y tiene como objetivo encapsular a las propiedades esenciales de la conjetura hebbiana, resumidas por Shatz [22] como ``cells that fire together, wire together''. La regla de Hebb Simple está dada por
|
Es regla lograr representar bien la idea básica, puesto que si , entonces aumenta (y el aumento es mayor si ambos tienen alta actividad), pero si uno es 0, entonces no se produce ningún cambio. Por ejemplo, si , entonces representan encendidos simultáneos que se traducen en un aumento.
Utilizando el método de Euler podemos discretizar a la regla de Hebb para su implementación:
|
(1) |
donde es la tasa de aprendizaje y puede tomarse como , aunque también puede recibir una inicialización aleatoria, la cual es una opción que evita la inactividad total que podría tener una interneurona si los pesos fueran todos inicializados en cero.
En esta sección, probaremos algunos resultados sobre la regla de Hebb relacionados con la clasificación supervisada, la cual es un tema relevante puesto que en general dada una red arbitraria y de inicialización en ceros, una red de entrenamiento hebbiano no supera a una red neuronal con entrenamiento por descenso de gradiente como se muestra en [14]. Esto quiere decir, que si definimos a nuestro dataset como () y a como la salida de una red neuronal de una capa, el entrenamiento hebbiano no converge a algún mínimo de la función , como sí lo hacen los enfoques basados en el gradiente. No obstante, eso no significa que no exista una arquitectura competente capaz de efectuar adecuadamente el aprendizaje hebbiano.
De esta forma, de la ecuación (1) observamos que, con la base de datos definida,
|
En este caso, redefinimos si y si , teniendo una capa de salida de neuronas. se refiere a los pesos de la -ésima neurona de salida y las entradas. Asimismo, es posible definir , que se refiere a los pesos después de un entrenamiento supervisado. Adicionalmente, añadiremos una capa de clasificación, de tal forma que
|
Comenzaremos nuestra descripción con una red hebbiana construida de la siguiente forma: a cada valor del espacio vectorial , le daremos una representación geométrica de la siguiente forma: consideremos una nueva capa de neuronas dada por
|
Esta capa debe distinguirse de la capa de entrada, consistente en neuronas. En su lugar, está conformada por todos los valores posibles que puede tener. Esto quiere decir que la capa de neuronas tiene valores posibles, lo cual es un número potencialmente grande incluso si , e infinito si lo es. A pesar de lo anterior, dicha capa infinita nos servirá como punto de partida y como un modelo teórico de la importancia de la Regla de Hebb. En términos especulativos, dicha capa puede ser imaginada como la inteligencia de un ser infinito. No obstante, en algún momento tendremos que reducir la dimensionalidad de capa infinita, puesto que no nos interesa estudiar la inteligencia de los seres metafísicos sino de los existentes en el mundo discreto.
La capa de salida para la red hebbiana infinita, la podemos definir expandiendo el concepto de producto punto:
|
Primeramente, demostraremos la existencia de un minimizador global para posteriormente probar que la regla de Hebb induce a uno.
Proposición 1: Sea definida para cada valor como
|
donde es una función de verdad binaria. Sea . Entonces
|
Notemos que . Por lo tanto, existe minimizador global. Supongamos que . Entonces existe tal que y
|
Hagamos para y para , tomemos . Entonces la función cuenta con menor error que , lo cual contradice su minimalidad.
Finalmente probaremos que la red hebbiana infinita es un minimizador global para la función de costo previamente definida:
Teorema 1: Sea una red hebbiana infinita con . Entonces
|
Sea . Entonces
|
de donde vemos que
|
siguiéndose el resultado por la Proposición 1.
A pesar de que la prueba de los anteriores resultados es relativamente directa, las consecuencias son importantes en el contexto de la regla de Hebb simple. A grosso modo, establece que si disponemos de recursos ilimitados, es posible diseñar una red neuronal de aprendizaje hebbiano que minimice global la suma de los errores totales que se cometen. La idea básica resultó ser en crear una capa de representación con todos los valores posibles de entrada y la regla de Hebb cuenta cuántos elementos de la base de datos arrojan dichos valores y realiza una actualización hebbiana cuando encuentra uno.
Por situar un ejemplo, podemos tomar una base de datos consistente en los siguientes datos:
|
El primer elemento de cada vector representa a la entrada y el segundo a la etiqueta . Para dar una interpretación a esta base de datos hipotética, podemos entender a la entrada como una tonalidad en escala de grises y la salida como negro si y blanco si 1. Este problema de clasificación puede resolverse de manera simple con cualquier algoritmo y el la red hebbiana infinita no es la excepción. La segunda capa de la red (representación) estará formada por cada posible valor de , en este caso 255 neuronas. Finalmente el aprendizaje hebbiano se da en la última capa, compuesta por una neurona que clasifica el negro y que clasifica el blanco. Notemos que (y ) para porque para los primeros datos tenemos y para pero a partir de 127 observamos , por lo que para pero . De esta forma, el error el conjunto de entrenamiento será 1, ya que cada valor posible que puede tomar está perfectamente clasificado. Aún más, si suministramos datos difusos, por ejemplo con repetidos varias veces, la red tenderá por el valor más repetido.
No obstante, este ejemplo de juguete muestra algunas de las desventajas propias del método. La primera es la acusada falta de datos, que tiene repercusiones sobre el conjunto de prueba. Si, por ejemplo utilizamos un conjunto de entrenamiento con los datos pares de y un conjunto de prueba con los impares, el error en el conjunto de entrenamiento será 0 pero cerca de la mitad de los datos del conjunto de prueba serán incorrectamente clasificados, ya que no se suministran los ejemplos concretos y por lo tanto todos los pesos están en 0.
Este problema puede pensarse que se puede resolver suministrando aún más datos, pero aparece otro problema en la práctica, que es la explosión combinatoria en la capa de representación. Supongamos ahora que queremos clasificar 7 colores RGB. Entonces tenemos valores posibles, lo cual es una gran cantidad de neuronas incluso para algunos organismos vivos. Una posible solución reside en compactar a la representación reduciendo la dimensión al redondear a unos cuantos valores, lo cual también reduce el problema del conjunto de prueba mencionado previamente. Sin embargo, el problema persiste: si quisiéramos clasificar 10 imágenes en un espacio de que es un caso reducido de MNIST y de entrada binaria, necesitamos un total de neuronas de representación, es decir, más neuronas que las existentes en los cerebros humanos (). Reducir imágenes de caracteres a un tamaño de es incluso excesivo y una reducción mayor simplemente no se puede clasificar fácilmente. Este caso se complica cuando consideramos imágenes RGB de objetos. Por lo tanto, este enfoque es irrealizable en la práctica computacional y en la biología misma, donde formas más eficientes toman lugar.
A pesar de las dos desventajas agudas, el objetivo del Teorema 1 es probar que la existencia de una arquitectura en el que el aprendizaje hebbiano logre una minimización perfecta (global) de la función de costo suma de los errores. Esto responde de alguna manera a la pregunta fundamental planteada en este artículo, señalando que el principal problema del aprendizaje hebbiano recae en la necesidad de hallar una arquitectura conveniente para su ejecución. Al menos sabemos que existe una arquitectura donde opera perfectamente, quizá exista una arquitectura intermedia que resuelva el problema de clasificación de manera efectiva y eficiente.
(1) También podemos distinguir los estados iluminado / poco iluminado para evitar pensar en el gris.
Una posible forma en que se pueden tratar de minimizar los efectos de la red hebbiana infinita en términos prácticos (los seres infinitos pueden ejecutarla sin problemas) consiste en crear dividir a los datos de la capa de representación en -celdas (mejor conocidas en la literatura como -celdas, pero en esta caso ), que es el enfoque que se trató en el artículo de [14], logrando resultados experimentales comparables con otros métodos de clasificación estándares o incluso mejores para datos sintéticos. En esta sección, intentaremos brindar un mejor sustento matemático sobre por qué el método funciona y finalmente lo aplicaremos en datos no sintéticos.
En general la idea de las -celdas se reduce a dividir al espacio primero en un espacio compacto donde se asume que viven los datos y después se subdividen en -celdas de radio . Cada celda se puede entender como una neurona que recibe datos y se activa si los datos de entrada pertenecen a la -celda. Estas celdas forman la capa de representación que se describió en la red hebbiana infinita. Posteriormente, estas celdas se conectan con las neuronas de salida y en la conexión de las celdas con las neuronas de salida se aplica aprendizaje hebbiano.
La siguiente proposición establece que es posible aproximarnos a la medida de Lebesgue de un conjunto abierto y acotado utilizando un número finito de -celdas. La notación que se usará para las celdas es si tiene el índice y radio , o bien .
Proposición 2: Sea un conjunto abierto y acotado, y . Entonces existe tal que existen -celdas de radio tales que
|
El conjunto de -celdas abiertas de tamaño arbitrario forman una base del espacio con la topología de los conjuntos abiertos. Consideremos el conjunto
|
Para cada existe tal que . Consideremos si . Entonces . Así, tenemos una unión contable de -celdas. En particular, los elementos pueden tomarse disjuntos ya que si , podemos definir como la unión de otras -celdas, o aproximarse tan bien como se desee, según el procedimiento que se expone al final de esta prueba. Reindexando y ordenando de mayor a menor :
|
Por lo tanto,
|
Entonces, como es acotado, y para existe tal que
|
Ahora, falta aproximar . Para cada tomemos una aproximación racional de con radio . Notemos que si entonces
|
de donde, para
|
donde es una partición de de tamaño . De esta forma,
|
Así, por la desigualdad del triángulo y tomando
|
De manera similar al último argumento, podemos fragmentar por completo al espacio de tal forma que se aproxime tanto como se puedan a las -celdas encontradas en la prueba anterior. De este modo, al reducir hemos de encontrar una clasificación más fina que permita obtener resultados más precisos.
Para poder realizar clasificación apropiadamente, debemos asumir que los datos se pueden separar en vecindades o conjuntos abiertos, lo cual siempre es posible para cualquier dispersión, pero idealmente los datos deben no estar intercalados entre sí para su correcto funcionamiento en el conjunto de prueba. Este problema también se observa si las distribuciones de los datos coinciden y se superponen, pero en general el conjunto de entrenamiento puede sobreajustarse y resolver el problema en el mismo.
Dado que estamos considerando espacios continuos como , utilizando el supuesto de separación de datos en conjuntos abiertos, definiremos el error como
|
donde es el conjunto abierto donde cada si y sólo si pertenece a la clase y es el conjunto tal que para toda , . Este error se puede reducir tanto como se desee:
Teorema 2: Supongamos que el problema de clasificación se puede separar en conjuntos abiertos y acotados. Para cada , existe una división del espacio en -celdas de tamaño tales que .
Usando la Proposición 1, es posible hallar una partición del espacio en -celdas de tamaño tal que
|
Como cada , para cada , , por lo que . Tomando las clases, tenemos que . (En principio cada de cada partición puede ser diferente, pero podemos seleccionar uno usando una técnica similar a la que aparece en la prueba de la Proposición 2).
En la práctica, la bondad de este resultado (poder minimizar al costo tanto como se quiera) está afectado por varios factores. Primeramente, la superposición de los datos supone un problema, como ya se ha mencionado previamente. Además, cuando tomamos celdas con menor si bien aumentamos la precisión el conjunto de clasificación, se produce un sobreajuste al aparecer celdas sin asignación que pueden aparecer en el conjunto de entrenamiento. Sin embargo, nuevamente este problema puede resolverse con una mayor cantidad de datos. El otro problema recae en la definición de -celdas para dimensiones grandes de , requiere de definir una cantidad creciente de celdas. Estos dos problemas son análogos a los dos problemas de la red hebbiana infinita, pero al menos aparecen atenuados y en bajas dimensiones son perfectamente implementables, como se verá a continuación.
En [14] se implementó el algoritmo de -celdas para datos sintéticos y se comparó con métodos estándares como la regresión logística y kNN. En esta ocasión, probaremos su desempeño frente a redes neuronales con métodos basados en el gradiente y utilizando un dataset no sintético, el cual es la base de datos Iris para la clasificación de flores del género Iris a partir de datos biométricos [23]. En este caso, para entrenamiento se utilizarán únicamente dos dimensiones en cierta medida separables: longitud y ancho de pétalo (véase figura 1).
![]() |
Figura 1: Gráfico de dos variables del dataset Iris. |
Como se puede ver, las tres clases del dataset son en gran medida separables, aunque existe cierto traslape entre las clases I. versicolor e I. virginica. Se tiene un total de 150 datos, de los cuales la mitad se destinaron para entrenamiento y la otra mitad para prueba.
Para contrastar al descenso de gradiente con el aprendizaje hebbiano, se utilizó un esquema de redes neuronales de alimentación hacia adelante (Feedforward Neural Networks o FNNs). El entrenamiento se realizó con la función de costo de entropía cruzada categórica a 25 épocas y se utilizó al optimizador Adam [24], uno de los métodos basados en el gradiente más recientes y ampliamente utilizados en la actualidad para redes neuronales. Para este caso, se utilizaron las cuatro dimensiones de los datos.
Para realizar una exploración sobre el espacio de las FNNs (optimización hiperparamétrica), se utilizó la heurística de evolución descrita en [25], utilizando la variante A con constantes , , y , así como quince generaciones.
La optimización hiperparamétrica arrojó a la arquitectura , la cual logró de exactitud en el conjunto de prueba y en el conjunto de entrenamiento. El esquema de evolución queda patente en la figura 2.
![]() |
Figura 2: Evolución de la exactitud con 15 generaciones. |
En el caso de las -celdas, se tomaron celdas de tamaño y únicamente se tomaron dos dimensiones por simplicidad. Los resultados principales se resumen en la tabla 1 y se obtuvieron al variar .
Entrenamiento | Validación | Prueba | |
Esto confirma experimentalmente el teorema 2, al ampliar la exactitud sobre el conjunto de entrenamiento reduciendo .
Los resultados observados con las -celdas dan sustento a la hipótesis de que la arquitectura tiene una influencia crucial en las redes neuronales con aprendizaje hebbiano, a pesar de que sea un método poco práctico de implementar para dimensiones mayores. En este caso se implementó para , siendo posible ya que se puede no utilizar toda la información de una base de datos, aunque no siempre parece posible lograr resultados de clasificación correctos utilizando pocas dimensiones o reduciéndolas.
En este caso, para la base de datos de iris, se pudieron observar mejores resultados que los que arroja el optimizador Adam (una versión moderna del descenso del gradiente), incluso utilizando un esquema de evolución. Esto supone una primera victoria de los métodos basados en Hebb frente al enfoque predominante y es respaldado por los resultados teóricos. Dichos resultados empíricos también son comparables con otros algoritmos de clasificación modernos, como los aplicados en [26].
No obstante, el optimismo debe tomarse con cautela. Para mayores dimensiones, parece complicada la ejecución del algoritmo de -celdas y el refinamiento del radio requiere de una mayor capacidad de cómputo. De esta forma, quizá sólo se pueda aspirar a celdas burdas para dimensiones medianas, pero parece imposible manejar , que es el caso de las imágenes.
Sin embargo, a pesar de las limitaciones del método propuesto debemos señalar que el logro obtenido tanto a nivel teórico como práctico señala la existencia de una red en donde el aprendizaje hebbiano opera apropiadamente. Esto puede darnos esperanzas para sospechar la existencia de una red óptima en el que el aprendizaje hebbiano no sólo funcione adecuadamente sino que la red sea eficiente para su implementación práctica en dimensiones altas. Tal red puede tener una estructura convolucional y disponer de millones de parámetros. En el trabajo previo de [13] se ha tratado de dar dicha aproximación. Quizá otros componentes como el tercer factor sean necesarios para lograr el delicado balance entre eficacia y eficiencia.
El código principal se puede obtener de https://github.com/Pherjev/hebbian-m-cells/blob/master/HebbMNIST.ipynb. La base de datos se obtuvo directamente de la librería sklearn
.
[1] Hebb, Donald Olding. (1949) "The Organisation of Behaviour: a neuropsychological theory". John Wiley & Sons-Chapman & Hall
[2] Markram, Henry and Gerstner, Wulfram and Sjöström, Per Jesper. (2012) "Spike-timing-dependent plasticity: a comprehensive overview", Volume 4. Frontiers. Frontiers in synaptic neuroscience 2
[3] Konorski, Jerzi. (1948) "Conditioned Reflexes and Neuron Organizaion". Cambridge University Press
[4] Ramón y Cajal, Santiago. (1894) "The Croonian lecture: la fine structure des centres nerveux", Volume 4. Proceedings of the Royal Society of London B Biology Sciences 444-468
[5] Lmo, Terje. (1966) "Frequency potentiation of excitatory synaptic activity in dentate area of hippocampal formation". Blackwell Science. Acta Physiologica Scandinavica 128
[6] Bliss, Tim VP and Lmo, Terje. (1973) "Long-lasting potentiation of synaptic transmission in the dentate area of the anaesthetized rabbit following stimulation of the perforant path", Volume 232. Wiley Online Library. The Journal of Physiology 2 331–356
[7] Bienenstock, Elie L and Cooper, Leon N and Munro, Paul W. (1982) "Theory for the development of neuron selectivity: orientation specificity and binocular interaction in visual cortex", Volume 2. Soc Neuroscience. Journal of Neuroscience 1 32–48
[8] Diehl, Peter U and Cook, Matthew. (2015) "Unsupervised learning of digit recognition using spike-timing-dependent plasticity", Volume 9. Frontiers. Frontiers in computational neuroscience 99
[9] Oja, Erkki. (1982) "Simplified neuron model as a principal component analyzer", Volume 15. Springer. Journal of mathematical biology 3 267–273
[10] Hitzler, Pascal and Bianchi, Federico and Ebrahimi, Monireh and Sarker, Md Kamruzzaman. (2020) "Neural-symbolic integration and the Semantic Web", Volume 11. IOS Press. Semantic Web 1 3–11
[11] Cichy, Radoslaw M and Kaiser, Daniel. (2019) "Deep neural networks as scientific models", Volume 23. Elsevier. Trends in cognitive sciences 4 305–317
[12] Liu, Chang and Sun, Fuchun. (2015) "HMAX model: A survey". IEEE. 2015 International Joint Conference on Neural Networks (IJCNN) 1–7
[13] Aguilar Canto, Fernando Javier. (2020) "Convolutional Neural Networks with Hebbian-Based Rules in Online Transfer Learning". Springer. Mexican International Conference on Artificial Intelligence 35–49
[14] Aguilar Canto, Fernando Javier. (2020) "Eficacia de diferentes reglas hebbianas en el Aprendizaje Supervisado: Efficacy of different Hebbian rules in Supervised Learning", Volume 7. Tecnología Educativa Revista CONAIC 1 92–97
[15] Kumierz, ukasz and Isomura, Takuya and Toyoizumi, Taro. (2017) "Learning with three factors: modulating Hebbian plasticity with errors", Volume 46. Elsevier. Current opinion in neurobiology 170–177
[16] Foncelle, Alexandre and Mendes, Alexandre and Jedrzejewska-Szmek, Joanna and Valtcheva, Silvana and Berry, Hugues and Blackwell, Kim T and Venance, Laurent. (2018) "Modulation of spike-timing dependent plasticity: towards the inclusion of a third factor in computational models", Volume 12. Frontiers. Frontiers in Computational Neuroscience 49
[17] Holca-Lamarre, Raphaël and Lücke, Jörg and Obermayer, Klaus. (2017) "Models of acetylcholine and dopamine signals differentially improve neural representations", Volume 11. Frontiers. Frontiers in computational neuroscience 54
[18] Lillicrap, Timothy P and Santoro, Adam and Marris, Luke and Akerman, Colin J and Hinton, Geoffrey. (2020) "Backpropagation and the brain", Volume 21. Nature Publishing Group. Nature Reviews Neuroscience 6 335–346
[19] Kozdon, Katarzyna and Bentley, Peter. (2018) "The evolution of training parameters for spiking neural networks with hebbian learning". MIT Press. Artificial Life Conference Proceedings 276–283
[20] He, Kaiming and Zhang, Xiangyu and Ren, Shaoqing and Sun, Jian. (2015) "Delving deep into rectifiers: Surpassing human-level performance on imagenet classification". Proceedings of the IEEE international conference on computer vision 1026–1034
[21] Dayan, Peter and Abbott, Laurence F. (2001) "Theoretical neuroscience: computational and mathematical modeling of neural systems". Computational Neuroscience Series
[22] Bliss, Tim VP and Lmo, Terje. (2010) "The developing brain", Volume 267. Sci. Am
[23] Fisher, Ronald A and Marshall, Michael. (1936) "Iris data set", Volume 440. RA Fisher, UC Irvine Machine Learning Repository 87
[24] Kingma, Diederik P and Ba, Jimmy. (2014) "Adam: A method for stochastic optimization". arXiv preprint arXiv:1412.6980
[25] Canto, Fernando Javier Aguilar. (2020) "Redes neuronales evolutivas con modelos de Lotka-Volterra.", Volume 149. Res. Comput. Sci. 8 1179–1194
[26] Wu, Yuanyuan and He, Jing and Ji, Yimu and Huang, Guangli and Yao, Haichang and Zhang, Peng and Xu, Wen and Guo, Mengjiao and Li, Youtao. (2019) "Enhanced classification models for iris dataset", Volume 162. Elsevier. Procedia Computer Science 946–954
Published on 27/12/21
Submitted on 31/10/21
Licence: CC BY-NC-SA license
Are you one of the authors of this document?