Una red Hopfield (o modelo Ising de una red neuronal o modelo Ising-Lenz-Little ) es una forma de red neuronal artificial recurrente y un tipo de sistema de vidrio giratorio popularizado por John Hopfield en 1982 [1] como lo describió anteriormente Little en 1974 [2] basado en el trabajo de Ernst Ising con Wilhelm Lenz en el modelo Ising . [3] Las redes Hopfield sirven como sistemas de memoria direccionables por contenido ("asociativas") con nodos de umbral binarios.. Las redes de Hopfield también proporcionan un modelo para comprender la memoria humana. [4] [5]
Orígenes
El modelo Ising de una red neuronal como modelo de memoria fue propuesto por primera vez por William A. Little en 1974, [2] que es reconocido por Hopfield en su artículo de 1982. [1]
Estructura
Las unidades en las redes de Hopfield son unidades de umbral binarias, es decir, las unidades solo toman dos valores diferentes para sus estados y el valor se determina en función de si la entrada de las unidades supera o no su umbral. . Las redes de Hopfield discretas describen las relaciones entre las neuronas binarias (activadas o no activadas). [1] En un momento determinado, el estado de la red neuronal se describe mediante un vector, que registra qué neuronas se activan en una palabra binaria de N bits.
Las interacciones entre neuronas tienen unidades que normalmente toman valores de 1 o -1, y esta convención se utilizará a lo largo de este artículo. Sin embargo, otra literatura podría usar unidades que toman valores de 0 y 1. Estas interacciones se "aprenden" a través de la ley de asociación de Hebb, de modo que, para un determinado estado
pero .
(Tenga en cuenta que la regla de aprendizaje hebbiana toma la forma cuando las unidades asumen valores en {0, 1}.)
Una vez que la red esté capacitada, ya no evoluciona. Si un nuevo estado de neuronas se introduce en la red neuronal, la red actúa sobre las neuronas de manera que
- Si
- Si
De esta forma, las redes de Hopfield tienen la capacidad de "recordar" estados almacenados en la matriz de interacción, porque si un nuevo estado está sujeto a la matriz de interacción, cada neurona cambiará hasta que coincida con el estado original (consulte la sección Actualizaciones a continuación).
Las conexiones en una red Hopfield suelen tener las siguientes restricciones:
- (ninguna unidad tiene una conexión consigo misma)
- (las conexiones son simétricas)
La restricción de que los pesos son simétricos garantiza que la función de energía disminuya monótonamente mientras se siguen las reglas de activación. [6] Una red con pesos asimétricos puede exhibir algún comportamiento periódico o caótico; sin embargo, Hopfield descubrió que este comportamiento se limita a partes relativamente pequeñas del espacio de fase y no afecta la capacidad de la red para actuar como un sistema de memoria asociativa direccionable por contenido.
Hopfield también modeló redes neuronales para valores continuos, en las que la salida eléctrica de cada neurona no es binaria sino un valor entre 0 y 1. [7] Descubrió que este tipo de red también podía almacenar y reproducir estados memorizados.
Observe que cada par de unidades i y j en una red Hopfield tiene una conexión que se describe por el peso de la conectividad. En este sentido, la red de Hopfield se puede describir formalmente como un gráfico completo no dirigido, dónde es un conjunto de neuronas McCulloch-Pitts y es una función que vincula pares de unidades a un valor real, el peso de conectividad.
Actualizando
La actualización de una unidad (nodo en el gráfico que simula la neurona artificial) en la red de Hopfield se realiza utilizando la siguiente regla:
dónde:
- es la fuerza del peso de la conexión de la unidad j a la unidad i (el peso de la conexión).
- es el estado de la unidad i.
- es el umbral de la unidad i.
Las actualizaciones en la red Hopfield se pueden realizar de dos formas diferentes:
- Asincrónico : solo se actualiza una unidad a la vez. Esta unidad se puede elegir al azar o se puede imponer un orden predefinido desde el principio.
- Sincrónico : todas las unidades se actualizan al mismo tiempo. Esto requiere un reloj central para el sistema para mantener la sincronización. Algunos consideran que este método es menos realista, debido a la ausencia de un reloj global observado que influya en sistemas de interés biológicos o físicos análogos.
Las neuronas "se atraen o repelen entre sí" en el espacio de estados
El peso entre dos unidades tiene un impacto poderoso sobre los valores de las neuronas. Considere el peso de la conexiónentre dos neuronas i y j. Si, la regla de actualización implica que:
- Cuándo , la contribución de j en la suma ponderada es positiva. Por lo tanto, es arrastrado por j hacia su valor
- Cuándo , la contribución de j en la suma ponderada es negativa. Entonces otra vez es empujado por j hacia su valor
Por tanto, los valores de las neuronas i y j convergerán si el peso entre ellas es positivo. Del mismo modo, divergirán si el peso es negativo.
Principios de funcionamiento de las redes Hopfield discretas y continuas
Bruck arrojó luz sobre el comportamiento de una neurona en la red discreta de Hopfield cuando demostró su convergencia en su artículo de 1990. [8] Un artículo posterior [9] investigó más a fondo el comportamiento de cualquier neurona tanto en tiempo discreto como en tiempo continuo Hopfield. redes cuando la función energética correspondiente se minimiza durante un proceso de optimización. Bruck muestra [8] que la neurona j cambia de estado si y solo si disminuye aún más el siguiente pseudocorte sesgado . La red de Hopfield discreta minimiza el siguiente pseudocorte sesgado [9] para la matriz de peso sináptica de la red de Hopfield.
dónde y representa el conjunto de neuronas que son -1 y +1, respectivamente, en el momento . Para obtener más detalles, consulte el artículo reciente. [9]
El tiempo-discreto Hopfield la red siempre minimiza exactamente el siguiente pseudo corte (, [8] [9] )
La red Hopfield de tiempo continuo siempre minimiza un límite superior al siguiente corte ponderado [9]
dónde es una función sigmoidea centrada en cero.
La compleja red de Hopfield, por otro lado, tiende generalmente a minimizar el llamado corte de sombra de la compleja matriz de pesos de la red. [10]
Energía
Las redes de Hopfield tienen un valor escalar asociado con cada estado de la red, denominado "energía", E, de la red, donde:
Esta cantidad se llama "energía" porque disminuye o permanece igual cuando se actualizan las unidades de red. Además, con una actualización repetida, la red eventualmente convergerá a un estado que es un mínimo local en la función de energía (que se considera una función de Lyapunov ). [1] Por lo tanto, si un estado es un mínimo local en la función de energía, es un estado estable para la red. Tenga en cuenta que esta función de energía pertenece a una clase general de modelos en física bajo el nombre de modelos de Ising ; éstos, a su vez, son un caso especial de redes de Markov , ya que la medida de probabilidad asociada , la medida de Gibbs , tiene la propiedad de Markov .
Red Hopfield en optimización
Hopfield y Tank presentaron la aplicación de la red Hopfield para resolver el problema clásico del viajante de comercio en 1985. [11] Desde entonces, la red Hopfield se ha utilizado ampliamente para la optimización. La idea de usar la red de Hopfield en problemas de optimización es sencilla: si una función de costo restringida / no restringida se puede escribir en la forma de la función de energía de Hopfield E, entonces existe una red de Hopfield cuyos puntos de equilibrio representan soluciones a la optimización restringida / no restringida problema. Minimizar la función de energía de Hopfield minimiza la función objetivo y satisface las restricciones también, ya que las restricciones están "incrustadas" en los pesos sinápticos de la red. Aunque incluir las restricciones de optimización en los pesos sinápticos de la mejor manera posible es una tarea desafiante, de hecho, muchos problemas de optimización difíciles con restricciones en diferentes disciplinas se han convertido a la función de energía de Hopfield: sistemas de memoria asociativa, conversión de analógico a digital, problema de programación del taller de trabajo, asignación cuadrática y otros problemas NP-completos relacionados, problema de asignación de canales en redes inalámbricas, problema de enrutamiento de redes móviles ad-hoc, restauración de imágenes, identificación del sistema, optimización combinatoria, etc. Se pueden encontrar más detalles en, por ejemplo, el documento. [9]
Inicialización y ejecución
La inicialización de las redes Hopfield se realiza estableciendo los valores de las unidades en el patrón de inicio deseado. A continuación, se realizan actualizaciones repetidas hasta que la red converge en un patrón de atracción. La convergencia está generalmente asegurada, ya que Hopfield demostró que los atractores de este sistema dinámico no lineal son estables, no periódicos o caóticos como en algunos otros sistemas [ cita requerida ] . Por lo tanto, en el contexto de las redes de Hopfield, un patrón atractor es un estado estable final, un patrón que no puede cambiar ningún valor dentro de él bajo actualización [ cita requerida ] .
Capacitación
Entrenar una red Hopfield implica reducir la energía de los estados que la red debería "recordar". Esto permite que la red sirva como un sistema de memoria direccionable de contenido, es decir, la red convergerá a un estado "recordado" si se le da solo una parte del estado. La red se puede usar para recuperarse de una entrada distorsionada al estado entrenado que es más similar a esa entrada. A esto se le llama memoria asociativa porque recupera recuerdos sobre la base de la similitud. Por ejemplo, si entrenamos una red Hopfield con cinco unidades para que el estado (1, -1, 1, -1, 1) sea un mínimo de energía, y le damos a la red el estado (1, -1, -1, -1, 1) convergerá a (1, -1, 1, -1, 1). Así, la red está debidamente entrenada cuando la energía de los estados que la red debe recordar son mínimos locales. Tenga en cuenta que, a diferencia del entrenamiento de Perceptron , los umbrales de las neuronas nunca se actualizan.
Reglas de aprendizaje
Hay varias reglas de aprendizaje diferentes que se pueden utilizar para almacenar información en la memoria de la red Hopfield. Es deseable que una regla de aprendizaje tenga las dos propiedades siguientes:
- Local : una regla de aprendizaje es local si cada peso se actualiza utilizando la información disponible para las neuronas en cualquier lado de la conexión que está asociada con ese peso en particular.
- Incremental : se pueden aprender nuevos patrones sin utilizar información de los patrones antiguos que también se han utilizado para el entrenamiento. Es decir, cuando se utiliza un nuevo patrón para el entrenamiento, los nuevos valores para los pesos solo dependen de los valores antiguos y del nuevo patrón. [12]
Estas propiedades son deseables, ya que una regla de aprendizaje que las satisfaga es biológicamente más plausible. Por ejemplo, dado que el cerebro humano siempre está aprendiendo nuevos conceptos, se puede razonar que el aprendizaje humano es incremental. Un sistema de aprendizaje que no fuera incremental generalmente se entrenaría solo una vez, con una gran cantidad de datos de entrenamiento.
Regla de aprendizaje de Hebb para las redes Hopfield
La teoría de Hebbian fue introducida por Donald Hebb en 1949 para explicar el "aprendizaje asociativo", en el que la activación simultánea de células neuronales conduce a aumentos pronunciados de la fuerza sináptica entre esas células. [13] A menudo se resume como "Neuronas que disparan juntas, se conectan juntas. Las neuronas que disparan fuera de sincronía, no se enlazan".
La regla de Hebbian es tanto local como incremental. Para las redes Hopfield, se implementa de la siguiente manera, al aprender patrones binarios:
dónde representa el bit i del patrón .
Si los bits correspondientes a las neuronas i y j son iguales en patrón , luego el producto será positivo. Esto, a su vez, tendría un efecto positivo en el pesoy los valores de i y j tenderán a ser iguales. Ocurre lo contrario si los bits correspondientes a las neuronas i y j son diferentes.
La regla de aprendizaje de Storkey
Esta regla fue introducida por Amos Storkey en 1997 y es tanto local como incremental. Storkey también demostró que una red de Hopfield entrenada con esta regla tiene una mayor capacidad que una red correspondiente entrenada con la regla de Hebbian. [14] Se dice que la matriz de peso de una red neuronal atractora [ aclaración necesaria ] sigue la regla de aprendizaje de Storkey si obedece:
dónde es una forma de campo local [12] en la neurona i.
Esta regla de aprendizaje es local, ya que las sinapsis solo tienen en cuenta las neuronas a sus lados. La regla hace uso de más información de los patrones y pesos que la regla generalizada de Hebb, debido al efecto del campo local.
Patrones espurios
Los patrones que utiliza la red para el entrenamiento (llamados estados de recuperación ) se convierten en atractores del sistema. Las actualizaciones repetidas eventualmente conducirían a la convergencia a uno de los estados de recuperación. Sin embargo, a veces la red convergerá en patrones espurios (diferentes de los patrones de entrenamiento). [15] La energía en estos patrones espurios también es un mínimo local. Para cada patrón x almacenado, la negación -x también es un patrón espurio.
Un estado espurio también puede ser una combinación lineal de un número impar de estados de recuperación. Por ejemplo, cuando se utilizan 3 patrones, se puede obtener el siguiente estado falso:
Los patrones espurios que tienen un número par de estados no pueden existir, ya que pueden sumar cero [15]
Capacidad
La capacidad de red del modelo de red de Hopfield está determinada por la cantidad de neuronas y las conexiones dentro de una red determinada. Por lo tanto, la cantidad de recuerdos que se pueden almacenar depende de las neuronas y las conexiones. Además, se demostró que la precisión de recuperación entre vectores y nodos era de 0,138 (se pueden recuperar aproximadamente 138 vectores del almacenamiento por cada 1000 nodos) (Hertz et al., 1991). Por lo tanto, es evidente que se producirán muchos errores si se intenta almacenar una gran cantidad de vectores. Cuando el modelo de Hopfield no recuerda el patrón correcto, es posible que se haya producido una intrusión, ya que los elementos relacionados semánticamente tienden a confundir al individuo y se produce el recuerdo del patrón incorrecto. Por lo tanto, se muestra que el modelo de red de Hopfield confunde un elemento almacenado con el de otro al recuperarlo. Las recuperaciones perfectas y la alta capacidad,> 0,14, se pueden cargar en la red mediante el método de aprendizaje Storkey; ETAM, [16] [17] Experimentos con ETAM también en. [18] Posteriormente se diseñaron modelos posteriores inspirados en la red Hopfield para aumentar el límite de almacenamiento y reducir la tasa de error de recuperación, y algunos son capaces de aprendizaje de una sola vez . [19]
La capacidad de almacenamiento se puede dar como dónde es el número de neuronas en la red
Memoria humana
El modelo de Hopfield da cuenta de la memoria asociativa mediante la incorporación de vectores de memoria. Los vectores de memoria se pueden usar ligeramente, y esto provocaría la recuperación del vector más similar en la red. Sin embargo, descubriremos que debido a este proceso, pueden ocurrir intrusiones. En la memoria asociativa para la red de Hopfield, existen dos tipos de operaciones: autoasociación y heteroasociación. El primero es cuando un vector está asociado a sí mismo, y el último cuando dos vectores diferentes están asociados en el almacenamiento. Además, ambos tipos de operaciones se pueden almacenar dentro de una única matriz de memoria, pero solo si esa matriz de representación dada no es una u otra de las operaciones, sino la combinación (autoasociativa y heteroasociativa) de las dos. Es importante señalar que el modelo de red de Hopfield utiliza la misma regla de aprendizaje que la regla de aprendizaje de Hebb (1949) , que básicamente trató de mostrar que el aprendizaje ocurre como resultado del fortalecimiento de los pesos cuando ocurre la actividad.
Rizzuto y Kahana (2001) pudieron demostrar que el modelo de red neuronal puede explicar la repetición en la precisión de la memoria mediante la incorporación de un algoritmo de aprendizaje probabilístico. Durante el proceso de recuperación, no se produce ningún aprendizaje. Como resultado, los pesos de la red permanecen fijos, lo que demuestra que el modelo puede pasar de una etapa de aprendizaje a una etapa de recuperación. Al agregar la deriva contextual, pudieron mostrar el rápido olvido que ocurre en un modelo de Hopfield durante una tarea de recuerdo con claves. Toda la red contribuye al cambio en la activación de cualquier nodo.
La regla dinámica de McCulloch y Pitts (1943), que describe el comportamiento de las neuronas, lo hace de una manera que muestra cómo las activaciones de múltiples neuronas se asignan a la activación de la tasa de activación de una nueva neurona, y cómo los pesos de las neuronas fortalecen la conexiones sinápticas entre la nueva neurona activada (y las que la activaron). Hopfield usaría la regla dinámica de McCulloch-Pitts para mostrar cómo la recuperación es posible en la red de Hopfield. Sin embargo, es importante señalar que Hopfield lo haría de forma repetitiva. Hopfield usaría una función de activación no lineal, en lugar de usar una función lineal. Por lo tanto, esto crearía la regla dinámica de Hopfield y con esto, Hopfield pudo demostrar que con la función de activación no lineal, la regla dinámica siempre modificará los valores del vector de estado en la dirección de uno de los patrones almacenados.
Ver también
- Memoria asociativa (desambiguación)
- Memoria autoasociativa
- Máquina de Boltzmann : como una red Hopfield pero utiliza muestreo de Gibbs recocido en lugar del descenso de gradiente
- Modelo de sistemas dinámicos de cognición
- Modelo de ising
- Teoría hebbiana
Referencias
- ↑ a b c d Hopfield, JJ (1982). "Redes neuronales y sistemas físicos con habilidades computacionales colectivas emergentes" . Actas de la Academia Nacional de Ciencias . 79 (8): 2554-2558. Código Bibliográfico : 1982PNAS ... 79.2554H . doi : 10.1073 / pnas.79.8.2554 . PMC 346238 . PMID 6953413 .
- ^ a b Little, WA (1974). "La existencia de estados persistentes en el cerebro". Biociencias matemáticas . 19 (1–2): 101–120. doi : 10.1016 / 0025-5564 (74) 90031-5 .
- ^ Pincel, Stephen G. (1967). "Historia del modelo Lenz-Ising". Reseñas de Física Moderna . 39 (4): 883–893. Código Bibliográfico : 1967RvMP ... 39..883B . doi : 10.1103 / RevModPhys.39.883 .
- ^ Amit, Daniel J. Modelado de la función cerebral: el mundo de las redes neuronales atractoras. Prensa de la Universidad de Cambridge, 1992
- ^ Rolls, Edmund T. Corteza cerebral: principios de funcionamiento. Prensa de la Universidad de Oxford, 2016
- ^ MacKay, David JC (2003). "42. Hopfield Networks". Teoría de la información, Inferencia y Algoritmos de aprendizaje . Prensa de la Universidad de Cambridge . pag. 508 . ISBN 978-0521642989.
Esta prueba de convergencia depende fundamentalmente del hecho de que las conexiones de la red Hopfield son simétricas . También depende de que las actualizaciones se realicen de forma asincrónica.
- ^ Hopfield, JJ (1984). "Las neuronas con respuesta graduada tienen propiedades computacionales colectivas como las de las neuronas de dos estados" . Actas de la Academia Nacional de Ciencias . 81 (10): 3088–3092. Código bibliográfico : 1984PNAS ... 81.3088H . doi : 10.1073 / pnas.81.10.3088 . PMID 6587342 .
- ^ a b c J. Bruck, "Sobre las propiedades de convergencia del modelo de Hopfield", Proc. IEEE, vol. 78, págs. 1579-1585, octubre de 1990.
- ^ a b c d e f Z. Uykan. "Sobre el principio de funcionamiento de las redes neuronales de Hopfield y su equivalencia con GADIA en optimización", Transacciones IEEE sobre redes neuronales y sistemas de aprendizaje, vol. 31, no. 9, págs. 3294-3304, septiembre de 2020, doi: 10.1109 / TNNLS.2019.2940920 (enlace)
- ^ Z. Uykan, "Minimización / maximización de cortes de sombra y redes neuronales complejas de Hopfield", Transacciones IEEE en redes neuronales y sistemas de aprendizaje, vol. 32, no. 3, págs. 1096-1109, marzo de 2021, doi: 10.1109 / TNNLS.2020.2980237. (Acceso abierto)
- ^ JJ Hopfield y DW Tank. "Cálculo neuronal de decisiones en problemas de optimización". Biological Cybernetics 55, págs: 141-146, (1985).
- ^ a b Storkey, Amos J. y Romain Valabregue. "Las cuencas de atracción de una nueva regla de aprendizaje de Hopfield". Redes neuronales 12.6 (1999): 869-876 .
- ^ Hebb, Donald Olding. La organización del comportamiento: una teoría neuropsicológica. Lawrence Erlbaum, 2002.
- ^ Storkey, Amos. "Aumentar la capacidad de una red Hopfield sin sacrificar la funcionalidad". Redes neuronales artificiales - ICANN'97 (1997): 451-456 .
- ^ a b Hertz, John A., Anders S. Krogh y Richard G. Palmer. Introducción a la teoría de la computación neuronal. Vol. 1. Prensa de Westview, 1991.
- ^ Liou, C.-Y .; Lin, S.-L. (2006). "Carga de memoria finita en neuronas peludas" (PDF) . Computación natural . 5 (1): 15–42. doi : 10.1007 / s11047-004-5490-x . S2CID 35025761 .
- ^ Liou, C.-Y .; Yuan, S.-K. (1999). "Memoria asociativa tolerante a errores". Cibernética biológica . 81 (4): 331–342. doi : 10.1007 / s004220050566 . PMID 10541936 . S2CID 6168346 .
- ^ Yuan, S.-K. (Junio de 1997). Ampliación de cuencas de atracción de la memoria asociativa (Tesis de maestría). Universidad Nacional de Taiwán. 991010725609704786.
- ^ ABOUDIB, Ala; GRIPON, Vincent; JIANG, Xiaoran (2014). "Un estudio de algoritmos de recuperación de mensajes dispersos en redes de camarillas neuronales" . COGNITIVO 2014: La 6ª Conferencia Internacional sobre Tecnologías y Aplicaciones Cognitivas Avanzadas : 140–146. arXiv : 1308.4506 . Código bibliográfico : 2013arXiv1308.4506A .
- Hebb, DO (1949). Organización del comportamiento. Nueva York: Wiley
- Hertz, J., Krogh, A. y Palmer, RG (1991). Introducción a la teoría de la computación neuronal. Redwood City, CA: Addison-Wesley.
- McCulloch, WS; Pitts, WH (1943). "Un cálculo lógico de las ideas inmanentes en la actividad nerviosa". Boletín de Biofísica Matemática . 5 (4): 115-133. doi : 10.1007 / BF02478259 .
- Polyn, SM; Kahana, MJ (2008). "Búsqueda de memoria y representación neuronal del contexto" . Tendencias en ciencias cognitivas . 12 (1): 24–30. doi : 10.1016 / j.tics.2007.10.010 . PMC 2839453 . PMID 18069046 .
- Rizzuto, DS; Kahana, MJ (2001). "Un modelo de red neuronal autoasociativa de aprendizaje emparejado-asociado". Computación neuronal . 13 (9): 2075-2092. CiteSeerX 10.1.1.45.7929 . doi : 10.1162 / 089976601750399317 . PMID 11516358 . S2CID 7675117 .
- Kruse, Borgelt, Klawonn, Moewes, Russ, Steinbrecher (2011). Inteligencia Computacional.
enlaces externos
- Capítulo 13 El modelo Hopfield de redes neuronales: una introducción sistemática de Raúl Rojas ( ISBN 978-3-540-60505-8 )
- Hopfield Network Javascript
- El problema del vendedor ambulante - Applet JAVA de la red neuronal de Hopfield
- scholarpedia.org- Hopfield network - Artículo sobre Hopfield Networks por John Hopfield
- Aprendizaje en red de Hopfield mediante el uso de variables latentes deterministas - Tutorial de Tristan Fletcher
- Interfaz gráfica de laboratorio neuronal: interfaz gráfica de red neuronal Hopfield (Python y gtk)