stringtranslate.com

Memoria distribuida dispersa

La memoria distribuida dispersa ( SDM ) es un modelo matemático de la memoria humana a largo plazo introducido por Pentti Kanerva en 1988 mientras estaba en el Centro de Investigación Ames de la NASA . [1]

Esta memoria exhibe comportamientos, tanto en teoría como en experimentos, que se asemejan a aquellos que las máquinas no habían abordado previamente, por ejemplo, reconocimiento rápido de rostros u olores, descubrimiento de nuevas conexiones entre ideas aparentemente no relacionadas, etc. La memoria distribuida dispersa se utiliza para almacenar y recuperar grandes cantidades ( bits ) de información sin centrarse en la precisión sino en la similitud de la información. [2] Hay algunas aplicaciones recientes en la navegación de robots [3] y la manipulación de robots basada en la experiencia. [4]

Principio general

Es una memoria de acceso aleatorio (RAM) generalizada para palabras binarias largas (por ejemplo, de 1000 bits). Estas palabras sirven como direcciones y como datos para la memoria. El atributo principal de la memoria es la sensibilidad a la similitud. Esto significa que una palabra puede volver a leerse no solo dando la dirección de escritura original, sino también dando una cercana a ella, medida por el número de bits no coincidentes (es decir, la distancia de Hamming entre direcciones de memoria ). [1]

SDM implementa la transformación del espacio lógico al espacio físico utilizando la representación y el almacenamiento de datos distribuidos, de manera similar a los procesos de codificación en la memoria humana. [5] Un valor correspondiente a una dirección lógica se almacena en muchas direcciones físicas. Esta forma de almacenamiento es robusta y no determinista. Una celda de memoria no se direcciona directamente. Si los datos de entrada (direcciones lógicas) están parcialmente dañados, aún podemos obtener datos de salida correctos. [6]

La teoría de la memoria es matemáticamente completa [1] y ha sido verificada mediante simulación por computadora . Surgió de la observación de que las distancias entre puntos de un espacio de alta dimensión se asemejan a las relaciones de proximidad entre conceptos en la memoria humana. La teoría también es práctica en el sentido de que las memorias basadas en ella pueden implementarse con elementos de memoria de acceso aleatorio convencionales . [7]

Definición

La memoria humana tiene una tendencia a agrupar recuerdos en función de las similitudes entre ellos (aunque pueden no estar relacionados), como "los camiones de bomberos son rojos y las manzanas son rojas". [8] La memoria distribuida dispersa es una representación matemática de la memoria humana y utiliza un espacio de alta dimensión para ayudar a modelar las grandes cantidades de memoria que imitan la de la red neuronal humana. [9] [10] Una propiedad importante de estos espacios de alta dimensión es que dos vectores elegidos aleatoriamente están relativamente lejos uno del otro, lo que significa que no están correlacionados. [11] La SDM puede considerarse una realización del hash sensible a la localidad .

La idea subyacente detrás de un SDM es la asignación de una gran memoria binaria a un conjunto más pequeño de ubicaciones físicas, llamadas ubicaciones duras . Como regla general, esas ubicaciones duras deben distribuirse uniformemente en el espacio virtual , para imitar la existencia del espacio virtual más grande con la mayor precisión posible. Cada dato se almacena distribuido por un conjunto de ubicaciones duras y se recupera promediando esas ubicaciones. Por lo tanto, la recuperación puede no ser perfecta, ya que la precisión depende de la saturación de la memoria.

La propuesta de Kanerva se basa en cuatro ideas básicas: [12]

  1. El espacio booleano , o puntos en dimensiones, exhibe propiedades similares a las nociones intuitivas de los humanos sobre las relaciones entre los conceptos. Esto significa que tiene sentido almacenar datos como puntos del espacio mencionado, donde cada elemento de memoria se almacena como un vector de n bits.
  2. Las neuronas con n entradas se pueden utilizar como decodificadores de direcciones de una memoria de acceso aleatorio.
  3. Principio unificador: los datos almacenados en la memoria se pueden utilizar como direcciones de la misma memoria. La distancia entre dos puntos es una medida de similitud entre dos elementos de la memoria. Cuanto más cercanos estén los puntos, más similares serán los vectores almacenados.
  4. El tiempo se puede rastrear en la memoria en función de dónde se almacenan los datos, si estos están organizados como secuencias de eventos.

El espacio binario N

El SDM trabaja con vectores n-dimensionales con componentes binarios. Dependiendo del contexto, los vectores se denominan puntos, patrones, direcciones, palabras, elementos de memoria, datos o eventos. Esta sección trata principalmente de las propiedades del espacio vectorial N = . Sea n el número de dimensiones del espacio. El número de puntos, o posibles elementos de memoria, es entonces . Denotaremos este número por N y utilizaremos N y para representar también el espacio en sí. [6]

Conceptos Relacionados con el espacio N: [6]

Propiedades del espacio N: [1] [6]

El espacio N puede representarse por los vértices del cubo unitario en el espacio euclidiano n-dimensional . Los vértices se encuentran en la superficie de una esfera n-dimensional con radio (euclidiano-métrico) . Esto da lugar a la analogía de la esfera . Llamaremos esférico a un espacio si

  1. cualquier punto x tiene un opuesto único 'x,
  2. todo el espacio está entre cualquier punto x y su opuesto 'x, y
  3. todos los puntos son "iguales" (lo que significa que para cualesquiera dos puntos x e y existe un automorfismo que preserva la distancia del espacio que mapea x a y, de modo que desde cualquiera de sus puntos el espacio "parece" el mismo).

La superficie de una esfera (en el espacio euclidiano tridimensional) es claramente esférica. Según la definición, N también es esférica, ya que y ⊕ x ⊕ (…) es un automorfismo que asigna x a y. Como N es esférica, resulta útil pensar en ella como la superficie de una esfera con circunferencia 2n. Todos los puntos de N se califican igualmente como puntos de origen, y un punto y su complemento son como dos polos a una distancia n entre sí, con todo el espacio entre ellos. Los puntos a medio camino entre los polos y perpendiculares a ellos son como el ecuador.

Distribución del espacio N

El número de puntos que están exactamente a d bits de un punto arbitrario x (por ejemplo, del punto 0) es el número de formas de elegir d coordenadas de un total de n coordenadas y, por lo tanto, viene dado por el coeficiente binomial :

La distribución de N es entonces la distribución binomial con parámetros n y p, donde p = 1/2. La media de la distribución binomial es n/2 y la varianza es n/4. Esta función de distribución se denotará por N(d). La distribución normal F con media n/2 y desviación típica es una buena aproximación a ella: N(d) = Pr{d(x, y) ≤ d} ≅ F{(d − n / 2)/ }

Tendencia a la ortogonalidad

Una propiedad destacada de N es que la mayor parte de él se encuentra aproximadamente a la distancia media (indiferencial) n/2 de un punto (y su complemento). En otras palabras, la mayor parte del espacio es casi ortogonal a cualquier punto dado, y cuanto mayor es n, más pronunciado es este efecto.

Como red neuronal

El SDM puede considerarse como una extensión direccionable por contenido de una memoria de acceso aleatorio (RAM) clásica o como un tipo especial de red neuronal de propagación hacia adelante de tres capas . Las principales modificaciones del SDM a la RAM son: [13]

Modelo de neurona

Una descripción idealizada de la neurona es la siguiente: una neurona tiene un cuerpo celular con dos tipos de ramificaciones: dendritas y un axón . Recibe señales de entrada de otras neuronas a través de las dendritas, las integra (las suma) y genera su propia señal de salida (eléctrica) que se envía a las neuronas externas a través del axón. Los puntos de contacto eléctrico entre neuronas se denominan sinapsis .

Cuando una neurona genera una señal, se activa y, después de activarse, debe recuperarse antes de activarse nuevamente. La importancia relativa de una sinapsis para la activación de la neurona se denomina peso sináptico (o coeficiente de entrada ). Existen dos tipos de sinapsis: las excitatorias , que desencadenan la activación de la neurona, y las inhibidoras , que impiden la activación. La neurona es excitatoria o inhibidora según el tipo de sinapsis que realiza su axón. [14]

Una neurona se activa cuando la suma de las entradas supera un umbral específico . Cuanto más alto sea el umbral, más importante es que las sinapsis excitatorias tengan entrada mientras que las inhibitorias no. [15] El que una neurona recuperada se active realmente depende de si recibió suficiente entrada excitatoria (más allá del umbral) y no demasiada entrada inhibitoria dentro de un período determinado.

El modelo formal de neurona hace suposiciones más simplificadoras. [16] Una neurona de n entradas se modela mediante una función de umbral lineal de la siguiente manera:

Para donde n es el número de entradas, sea la salida en el momento t : , y sea la i -ésima entrada en el momento t : . Sea el peso de la i -ésima entrada y sea el umbral.

La suma ponderada de las entradas en el momento t se define por

La salida de la neurona en el momento t se define entonces como una función booleana :

Donde F t = 1 significa que la neurona se activa en el momento t y F t = 0 que no lo hace, es decir, para que la neurona se active la suma ponderada debe alcanzar o superar el umbral. Las entradas excitatorias aumentan la suma y las entradas inhibitorias la disminuyen.

La neurona como decodificador de direcciones

La tesis clave de Kanerva [1] es que ciertas neuronas podrían tener sus coeficientes de entrada y umbrales fijos durante toda la vida de un organismo y usarse como decodificadores de direcciones, donde n -tuplas de coeficientes de entrada (el patrón al que las neuronas responden más fácilmente) determinan la dirección de memoria de n bits, y el umbral controla el tamaño de la región de patrones de dirección similares a los que responde la neurona.

Este mecanismo es complementario a las sinapsis ajustables o pesos ajustables en una red neuronal ( aprendizaje de convergencia perceptrónica ), ya que este mecanismo de acceso fijo sería un marco de referencia permanente que permite seleccionar las sinapsis en las que se almacena la información y de las que se recupera en un conjunto dado de circunstancias. Además, una codificación de la circunstancia presente serviría como dirección.

La dirección a de una neurona con coeficientes de entrada w donde se define como un patrón de entrada de n bits que maximiza la suma ponderada. El máximo se produce cuando las entradas inhibitorias son ceros y las entradas excitatorias son unos. El bit i de la dirección es:

(suponiendo que los pesos no sean cero)

La suma ponderada máxima es entonces la suma de todos los coeficientes positivos:

Y la suma ponderada mínima correspondería a un punto opuesto a la dirección de la neurona a`:

Cuando el umbral c está dentro del rango, la salida de la neurona es 0 para algunas direcciones (patrones de entrada) y 1 para otras. Si el umbral está por encima de S, la salida siempre es 0; si está por debajo de s, la salida siempre es 1. Por lo tanto, mediante una elección adecuada del umbral, una neurona responde solo a una dirección. Cuando el umbral es S (el máximo para la suma ponderada), la neurona responde solo a su propia dirección y actúa como un decodificador de direcciones de una memoria de acceso aleatorio convencional .

Ubicación de la memoria

El SDM está diseñado para manejar patrones de direcciones que abarcan un espacio de direcciones enorme (del orden de ). El SDM supone que los patrones de direcciones que realmente describen situaciones físicas de interés están escasamente dispersos por todo el espacio de entrada. Es imposible reservar una ubicación física separada correspondiente a cada entrada posible; el SDM implementa solo un número limitado de ubicaciones físicas o duras . La ubicación física se denomina ubicación de memoria (o dura ). [7]

Cada ubicación fija tiene asociados dos elementos:

En SDM, una palabra se puede almacenar en la memoria escribiéndola en una ubicación de almacenamiento libre y al mismo tiempo proporcionándole a la ubicación el decodificador de direcciones adecuado. Una neurona como decodificador de direcciones seleccionaría una ubicación en función de la similitud de la dirección de la ubicación con la señal de recuperación. A diferencia de las máquinas de Turing convencionales, SDM aprovecha la computación paralela mediante los decodificadores de direcciones . El mero acceso a la memoria se considera computación, cuya cantidad aumenta con el tamaño de la memoria. [1]

Patrón de dirección

Un vector de N bits que se utiliza para escribir en la memoria y leer desde ella. El patrón de dirección es una descripción codificada de un estado del entorno (p. ej., N = 256).

Patrón de datos

Un vector de M bits que es el objeto de las operaciones de escritura y lectura. Al igual que el patrón de dirección, es una descripción codificada de un estado del entorno (p. ej., M = 256).

Escribiendo

La escritura es la operación de almacenar un patrón de datos en la memoria utilizando un patrón de dirección particular. Durante una escritura, la entrada a la memoria consta de un patrón de dirección y un patrón de datos. El patrón de dirección se utiliza para seleccionar ubicaciones de memoria física cuyas direcciones físicas se encuentran dentro de una cierta distancia de corte con respecto al patrón de dirección. El patrón de datos se almacena en cada una de las ubicaciones seleccionadas.

Lectura

La lectura es la operación de recuperar un patrón de datos de la memoria utilizando un patrón de dirección particular. Durante una lectura, se utiliza un patrón de dirección para seleccionar una cierta cantidad de ubicaciones de memoria (al igual que durante una escritura). El contenido de las ubicaciones seleccionadas se suma bit a bit y se establece un umbral para derivar un patrón de datos de M bits. Esto sirve como la salida leída de la memoria.

Cadenas de punteros

Todos los elementos están vinculados en una única lista (o matriz) de punteros a ubicaciones de memoria y se almacenan en la RAM. Cada dirección de una matriz apunta a una línea individual en la memoria. Esa línea se devuelve si es similar a otras líneas. Las neuronas se utilizan como decodificadores y codificadores de direcciones, de forma similar a la forma en que funcionan las neuronas en el cerebro, y devuelven elementos de la matriz que coinciden o son similares.

Distancia crítica

El modelo de memoria de Kanerva tiene un concepto de punto crítico : antes de este punto, un elemento almacenado previamente puede recuperarse fácilmente; pero más allá de este punto, un elemento no puede recuperarse. Kanerva ha calculado metódicamente este punto para un conjunto particular de parámetros (fijos). La distancia crítica correspondiente de una memoria distribuida dispersa puede evaluarse aproximadamente minimizando la siguiente ecuación con la restricción y . La prueba puede encontrarse en [17] [18]

Dónde:

Interpretación probabilística

Un sistema de memoria asociativa que utiliza representaciones dispersas y distribuidas puede reinterpretarse como un muestreador de importancia , un método de Monte Carlo para aproximar la inferencia bayesiana . [19] El SDM puede considerarse una aproximación de Monte Carlo a una integral de probabilidad condicional multidimensional . El SDM producirá respuestas aceptables a partir de un conjunto de entrenamiento cuando esta aproximación sea válida, es decir, cuando el conjunto de entrenamiento contenga datos suficientes para proporcionar buenas estimaciones de las probabilidades conjuntas subyacentes y haya suficientes muestras de Monte Carlo para obtener una estimación precisa de la integral. [20]

Plausibilidad biológica

La codificación dispersa puede ser una estrategia general de los sistemas neuronales para aumentar la capacidad de memoria. Para adaptarse a sus entornos, los animales deben aprender qué estímulos están asociados con recompensas o castigos y distinguir estos estímulos reforzados de otros similares pero irrelevantes. Esta tarea requiere implementar memorias asociativas específicas de estímulos en las que solo unas pocas neuronas de una población responden a un estímulo dado y cada neurona responde solo a unos pocos estímulos de todos los estímulos posibles.

El trabajo teórico sobre la SDM realizado por Kanerva ha sugerido que la codificación dispersa aumenta la capacidad de la memoria asociativa al reducir la superposición entre representaciones. Experimentalmente, se han observado representaciones dispersas de información sensorial en muchos sistemas, incluidos la visión, [21] la audición, [22] el tacto, [23] y el olfato. [24] Sin embargo, a pesar de la evidencia acumulada de la amplia difusión de la codificación dispersa y los argumentos teóricos sobre su importancia, hasta hace poco no se había demostrado que la codificación dispersa mejora la especificidad de estímulo de la memoria asociativa.

En 2014, el laboratorio de Gero Miesenböck en la Universidad de Oxford logró algunos avances al analizar el sistema olfativo de Drosophila . [25] En Drosophila, se cree que la escasa codificación de olores por parte de las células Kenyon del cuerpo del hongo genera una gran cantidad de ubicaciones direccionables con precisión para el almacenamiento de recuerdos específicos de olores. Lin et al. [26] demostraron que la escasez está controlada por un circuito de retroalimentación negativa entre las células Kenyon y la neurona lateral anterior pareada (APL) GABAérgica . La activación y el bloqueo sistemáticos de cada pata de este circuito de retroalimentación muestran que las células Kenyon activan la APL y la APL inhibe a las células Kenyon. Al interrumpir el ciclo de retroalimentación célula Kenyon-APL, disminuye la escasez de respuestas olfativas de las células Kenyon, aumenta las correlaciones entre olores y evita que las moscas aprendan a discriminar olores similares, pero no diferentes. Estos resultados sugieren que la inhibición por retroalimentación suprime la actividad de las células de Kenyon para mantener una codificación de olores dispersa y descorrelacionada y, por lo tanto, la especificidad de los olores de los recuerdos. Una publicación de 2017 en Science [27] mostró que el circuito olfativo de la mosca implementa una versión mejorada del hash binario sensible a la localidad a través de proyecciones aleatorias dispersas.

Aplicaciones

En las aplicaciones de la memoria, las palabras son patrones de características. Algunas características son producidas por un sistema sensorial, otras controlan un sistema motor. Existe un patrón actual (de, por ejemplo, 1000 bits), que es el contenido actual del foco del sistema . Los sensores alimentan el foco, los motores son accionados desde el foco y se accede a la memoria a través del foco.

Lo que sucede en el mundo –la experiencia “subjetiva” del sistema– se representa internamente mediante una secuencia de patrones en el foco. La memoria almacena esta secuencia y puede recrearla más tarde en el foco si se la relaciona con un patrón similar a uno encontrado en el pasado. De este modo, la memoria aprende a predecir lo que está a punto de suceder. Las aplicaciones más amplias de la memoria serían en sistemas que manejan información del mundo real en tiempo real.

Las aplicaciones incluyen la visión  (detección e identificación de objetos en una escena y anticipación de escenas posteriores), la robótica , la detección y verificación de señales y el aprendizaje y control adaptativos . Desde el punto de vista teórico, el funcionamiento de la memoria puede ayudarnos a comprender la memoria y el aprendizaje en humanos y animales. [7] [28]

La búsqueda de la mejor coincidencia

SDM se puede aplicar al problema de encontrar la mejor coincidencia con una palabra de prueba en un conjunto de datos de palabras almacenadas. [1] [29] o, en otras palabras, el problema de búsqueda del vecino más cercano .

Considere una memoria con N ubicaciones donde . Sea cada ubicación la capacidad para una palabra de n bits (por ejemplo, N = 2 100 palabras de 100 bits) y deje que la decodificación de direcciones la realicen N neuronas decodificadoras de direcciones. Establezca el umbral de cada neurona x en su suma ponderada máxima y utilice un parámetro común d para ajustar todos los umbrales al acceder a la memoria. El umbral efectivo de la neurona x será entonces, lo que significa que la ubicación x es accesible cada vez que la dirección x está dentro de d bits de la dirección presentada a la memoria (es decir, la dirección mantenida por el registro de direcciones). Con tenemos una memoria de acceso aleatorio convencional . Supongamos además que cada ubicación tiene un bit especial ocupado por la ubicación al que se puede acceder de la misma manera que los bits de datos regulares. Escribir una palabra en una ubicación establece este bit ocupado por la ubicación . Supongamos que solo se pueden leer las ubicaciones ocupadas.

Para archivar los datos en la memoria, comience por configurar y emitir un comando para borrar el bit ocupado por la ubicación . Esta única operación marca toda la memoria como desocupada independientemente de los valores del registro de dirección. Luego configure y escriba cada palabra y del conjunto de datos con y como dirección. Observe que cada operación de escritura afecta solo a una ubicación: la ubicación y . Por lo tanto, el tiempo de archivado es proporcional a la cantidad de palabras en el conjunto de datos.

Para encontrar la mejor coincidencia para una palabra de prueba z , es necesario colocar z en el registro de direcciones y encontrar la distancia mínima d para la cual hay una ubicación ocupada. Podemos comenzar la búsqueda estableciendo e incrementando d sucesivamente hasta que se encuentre una ubicación ocupada. Este método proporciona tiempos de búsqueda promedio que son proporcionales a la cantidad de bits de dirección o ligeramente menores que [1] porque se puede esperar que la ubicación ocupada más cercana esté justo debajo de bits de z (con una búsqueda binaria en d, esto sería O(log(n)).

Con palabras de 100 bits, se necesitarían 2 100 ubicaciones, es decir, una memoria enormemente grande. Sin embargo, si construimos la memoria a medida que almacenamos las palabras del conjunto de datos, solo necesitamos una ubicación (y un decodificador de direcciones) para cada palabra del conjunto de datos. Ninguna de las ubicaciones desocupadas necesita estar presente. Esto representa el aspecto de escasez en SDM.

Reconocimiento de voz

La memoria SDM se puede aplicar a la transcripción del habla , y el entrenamiento consiste en "escuchar" un gran corpus de lenguaje hablado . Dos problemas difíciles con el habla natural son cómo detectar los límites de las palabras y cómo adaptarse a diferentes hablantes. La memoria debería ser capaz de manejar ambos. En primer lugar, almacena secuencias de patrones como cadenas de punteros. En el entrenamiento (al escuchar el habla) construirá una estructura probabilística con la mayor incidencia de ramificaciones en los límites de las palabras. Al transcribir el habla, estos puntos de ramificación se detectan y tienden a dividir la secuencia en segmentos que corresponden a las palabras. En segundo lugar, la sensibilidad de la memoria a la similitud es su mecanismo para adaptarse a diferentes hablantes (y a las variaciones en la voz del mismo hablante). [7]

"Darse cuenta del olvido"

En la Universidad de Memphis, Uma Ramamurthy, Sidney K. D'Mello y Stan Franklin crearon una versión modificada del sistema de memoria distribuida dispersa que representa la "percepción del olvido". Utiliza una ecuación de decaimiento para mostrar mejor la interferencia en los datos. El sistema de memoria distribuida dispersa distribuye cada patrón en aproximadamente una centésima parte de las ubicaciones, [ aclaración necesaria ] por lo que la interferencia puede tener resultados perjudiciales. [30]

Se presentan dos posibles ejemplos de descomposición de esta memoria distribuida dispersa modificada.

Mecanismo de desintegración exponencial:

Mecanismo de desintegración sigmoidea traducida negativamente:

En la función de decaimiento exponencial, se acerca a cero más rápidamente a medida que x aumenta, y a es una constante (normalmente entre 3 y 9) y c es un contador. Para la función sigmoidea traducida negativamente , el decaimiento es similar a la función de decaimiento exponencial cuando a es mayor que 4. [30]

A medida que el gráfico se acerca a 0, representa cómo se olvida la memoria utilizando mecanismos de descomposición.

Memoria genética dispersa y distribuida

Ashraf Anwar, Stan Franklin y Dipankar Dasgupta de la Universidad de Memphis propusieron un modelo para la inicialización de SDM utilizando algoritmos genéticos y programación genética (1999).

La memoria genética utiliza algoritmos genéticos y memoria distribuida dispersa como una red neuronal pseudoartificial. Se ha considerado su uso para crear vida artificial. [31]

Predicción estadística

El SDM se ha aplicado a la predicción estadística , la tarea de asociar vectores de estados perceptuales extremadamente grandes con eventos futuros. En condiciones de capacidad cercana o excesiva, donde el comportamiento de la memoria asociativa del modelo falla, el procesamiento realizado por el modelo puede interpretarse como el de un predictor estadístico y cada contador de datos en un SDM puede verse como una estimación independiente de la probabilidad condicional de que una función binaria f sea igual al conjunto de activación definido por la ubicación de memoria del contador. [32]

Inteligencia artificial general

Aprendizaje por refuerzo

Los SDM proporcionan un esquema de aproximación de función local lineal , diseñado para funcionar cuando un espacio de entrada (dirección) muy grande/de alta dimensión tiene que ser mapeado en una memoria física mucho más pequeña . En general, las arquitecturas locales, incluidas las SDM, pueden estar sujetas a la maldición de la dimensionalidad , ya que algunas funciones objetivo pueden requerir, en el peor de los casos, una cantidad exponencial de unidades locales para ser aproximadas con precisión en todo el espacio de entrada. Sin embargo, se cree ampliamente que la mayoría de los sistemas de toma de decisiones necesitan alta precisión solo alrededor de variedades de baja dimensión del espacio de estado , o "autopistas" de estado importantes. [37] El trabajo en Ratitch et al. [38] combinó el modelo de memoria SDM con las ideas del aprendizaje basado en memoria , que proporciona un aproximador que puede adaptar dinámicamente su estructura y resolución para localizar regiones del espacio de estado que son "más interesantes" [39] y asignar proporcionalmente más recursos de memoria para modelarlas con precisión.

Indexación de objetos en visión artificial

El laboratorio de Dana H. Ballard [40] demostró una técnica de indexación de objetos de propósito general para la visión por computadora que combina las virtudes del análisis de componentes principales con las propiedades de coincidencia favorables de los espacios de alta dimensión para lograr un reconocimiento de alta precisión. El algoritmo de indexación utiliza un sistema de visión activa junto con una forma modificada de SDM y proporciona una plataforma para aprender la asociación entre la apariencia de un objeto y su identidad.

Extensiones

Se han propuesto muchas extensiones y mejoras a SDM, por ejemplo:

Patentes relacionadas

Implementación

Véase también

Referencias

  1. ^ abcdefgh Kanerva, Pentti (1988). Memoria distribuida dispersa . The MIT Press. ISBN 978-0-262-11132-4.
  2. ^ Kanerva, Pentti (1988). Memoria distribuida dispersa . The MIT Press. ISBN 978-0-262-11132-4.
  3. ^ Mendes, Mateus; Crisostomo, Manuel; Coimbra, A. Paulo (2008). "Navegación de robots utilizando una memoria distribuida dispersa". Conferencia internacional IEEE sobre robótica y automatización de 2008. págs. 53–58. doi :10.1109/ROBOT.2008.4543186. ISBN 978-1-4244-1646-2.S2CID10977460  .​
  4. ^ Jockel, S.; Lindner, F.; Jianwei Zhang (2009). "Memoria distribuida dispersa para la manipulación de robots basada en la experiencia". Conferencia internacional IEEE sobre robótica y biomimética de 2008. págs. 1298–1303. doi :10.1109/ROBIO.2009.4913187. ISBN 978-1-4244-2678-2.S2CID16650992  .​
  5. ^ Rissman, Jesse; Wagner, Anthony D. (2012). "Representaciones distribuidas en la memoria: perspectivas a partir de imágenes cerebrales funcionales". Revista Anual de Psicología . 63 : 101–28. doi :10.1146/annurev-psych-120710-100344. PMC 4533899 . PMID  21943171. 
  6. ^ abcd Grebeníček, František. "Análisis de datos de patrones de memoria distribuida escasa. URL: http://www.fit.vutbr.cz/~grebenic/Publikace/mosis2000.pdf"
  7. ^ abcde Flynn, Michael J., Pentti Kanerva y Neil Bhadkamkar. "Prototipo de memoria distribuida dispersa: principios y funcionamiento". (1989).
  8. ^ C. George Boeree (2002). "Psicología general". Universidad de Shippensburg.
  9. ^ Pentti Kanerva (1993). "Memoria distribuida dispersa y modelos relacionados". Universidad Estatal de Pensilvania: 50–76. CiteSeerX 10.1.1.2.8403 .  {{cite journal}}: Requiere citar revista |journal=( ayuda )
  10. ^ MJ Flynn; P. Kanerva y N. Bhadkamkar (diciembre de 1989). "Sparse Distributed Memory: Principles and Operation" (PDF) . Universidad de Stanford . Consultado el 1 de noviembre de 2011 .[ enlace muerto permanente ]
  11. ^ ab Snaider, Javier y Stan Franklin. "Memoria distribuida dispersa de enteros Archivado el 2 de agosto de 2021 en Wayback Machine ". Vigésima quinta conferencia internacional de flairs. 2012.
  12. ^ Mendes, Mateus Daniel Almeida. "Navegación inteligente de robots utilizando una memoria distribuida dispersa". Tesis doctoral, (2010). URL: https://eg.sib.uc.pt/handle/10316/17781 Archivado el 4 de marzo de 2016 en Wayback Machine.
  13. ^ Grebenıcek, František. Redes neuronales como memorias asociativas. Tesis doctoral de la Universidad Tecnológica de Brno, 2001. URL: http://www.vutium.vutbr.cz/tituly/pdf/ukazka/80-214-1914-8.pdf Archivado el 4 de marzo de 2016 en Wayback Machine.
  14. ^ Kandel, Eric R., James H. Schwartz y Thomas M. Jessell, eds. Principios de la neurociencia. Vol. 4. Nueva York: McGraw-Hill, 2000.
  15. ^ Eccles, John G. "Bajo el hechizo de la sinapsis". Las neurociencias: caminos del descubrimiento, I. Birkhäuser Boston, 1992. 159-179.
  16. ^ McCulloch, Warren S.; Pitts, Walter (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.
  17. ^ Brogliato, Marcelo Salhab (2012). Comprensión de la distancia crítica en memoria distribuida dispersa (Tesis). hdl :10438/13095.
  18. ^ Brogliato, Marcelo Salhab; Chada, Daniel de Magalhães; Linhares, Alexandre (2014). "Memoria distribuida dispersa: comprensión de la velocidad y robustez de la memoria experta". Frontiers in Human Neuroscience . 8 (222): 222. doi : 10.3389/fnhum.2014.00222 . PMC 4009432 . PMID  24808842. 
  19. ^ Abbott, Joshua T., Jessica B. Hamrick y Thomas L. Griffiths. "Aproximación de la inferencia bayesiana con un sistema de memoria distribuida dispersa". Actas de la 35.ª conferencia anual de la Sociedad de Ciencias Cognitivas. 2013.
  20. ^ Anderson (1989). "Una interpretación de probabilidad condicional de la memoria distribuida dispersa de Kanerva". Conferencia conjunta internacional sobre redes neuronales . Vol. 1. págs. 415–417. doi :10.1109/ijcnn.1989.118597. S2CID  13935339.
  21. ^ Vinje, WE; Gallant, JL (2000). "Codificación dispersa y decorrelación en la corteza visual primaria durante la visión natural" (PDF) . Science . 287 (5456): 1273–1276. Bibcode :2000Sci...287.1273V. CiteSeerX 10.1.1.456.2467 . doi :10.1126/science.287.5456.1273. PMID  10678835. S2CID  13307465. Archivado desde el original (PDF) el 2017-09-11. 
  22. ^ Hromádka, T; Deweese, MR; Zador, AM (2008). "Representación dispersa de sonidos en la corteza auditiva no anestesiada". PLOS Biol . 6 (1): e16. doi : 10.1371/journal.pbio.0060016 . PMC 2214813 . PMID  18232737. 
  23. ^ Crochet, S; Poulet, JFA; Kremer, Y; Petersen, CCH (2011). "Mecanismos sinápticos subyacentes a la codificación dispersa del tacto activo". Neuron . 69 (6): 1160–1175. doi : 10.1016/j.neuron.2011.02.022 . PMID  21435560. S2CID  18528092.
  24. ^ Ito, I; Ong, RCY; Raman, B; Stopfer, M (2008). "Representación dispersa de olores y aprendizaje olfativo". Nat Neurosci . 11 (10): 1177–1184. doi :10.1038/nn.2192. PMC 3124899 . PMID  18794840. 
  25. ^ Una memoria dispersa es una memoria precisa. Blog de Oxford Science. 28 de febrero de 2014. http://www.ox.ac.uk/news/science-blog/sparse-memory-precise-memory
  26. ^ Lin, Andrew C.; et al. (2014). "La codificación de olores dispersa y descorrelacionada en el cuerpo del hongo mejora la discriminación de olores aprendida". Nature Neuroscience . 17 (4): 559–568. doi :10.1038/nn.3660. PMC 4000970 . PMID  24561998. 
  27. ^ Dasgupta, Sanjoy; Stevens, Charles F.; Navlakha, Saket (2017). "Un algoritmo neuronal para un problema de computación fundamental". Science . 358 (6364): 793–796. Bibcode :2017Sci...358..793D. doi : 10.1126/science.aam9868 . PMID  29123069.
  28. ^ Denning, Peter J. Memoria distribuida dispersa. Instituto de Investigación para Ciencias Informáticas Avanzadas [Centro de Investigación Ames de la NASA], 1989.
  29. ^ Minsky, Marvin y Papert Seymour. "Perceptrones". (1969). "Tiempo versus memoria para la mejor correspondencia: un problema abierto", págs. 222-225
  30. ^ ab Uma Ramamurthy; Sidney K. D'Mello; Stan Franklin. "Realizing Forgetting in a Modified Sparse Distributed Memory System" (PDF) . Departamento de Ciencias de la Computación y el Instituto de Sistemas Inteligentes . Universidad de Memphis. págs. 1992–1997. Archivado desde el original el 5 de abril de 2012 . Consultado el 1 de noviembre de 2011 .{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  31. ^ Rocha LM, Hordijk W (2005). "Representaciones materiales: del código genético a la evolución de los autómatas celulares". Vida artificial . 11 (1–2): 189–214. CiteSeerX 10.1.1.115.6605 . doi :10.1162/1064546053278964. PMID  15811227. S2CID  5742197. Archivado desde el original el 20 de septiembre de 2013 . Consultado el 2 de agosto de 2013 . 
  32. ^ Rogers, David. "Predicción estadística con la memoria distribuida dispersa de Kanerva". Avances en sistemas de procesamiento de información neuronal. 1989.
  33. ^ Rao, RPN; Fuentes, O. (1998). "Aprendizaje jerárquico de comportamientos de navegación en un robot autónomo utilizando una memoria dispersa y predictiva distribuida". Aprendizaje automático . 31 : 87–113. doi : 10.1023/a:1007492624519 . S2CID  8305178.
  34. ^ Franklin, Stan, et al. "El papel de la conciencia en la memoria". Cerebros, mentes y medios 1.1 (2005): 38.
  35. ^ Shastri, Lokendra (2002). "Memoria episódica e interacciones cortico-hipocampales" (PDF) . Tendencias en Ciencias Cognitivas . 6 (4): 162–168. doi :10.1016/s1364-6613(02)01868-5. PMID  11912039. S2CID  15022802.
  36. ^ Anwar, Ashraf; Franklin, Stan (2003). "Memoria distribuida dispersa para agentes de software 'conscientes'". Investigación de sistemas cognitivos . 4 (4): 339–354. doi :10.1016/s1389-0417(03)00015-9. S2CID  13380583.
  37. ^ Ratitch, Bohdana, Swaminathan Mahadevan y Doina Precup . "Recuerdos distribuidos dispersos en el aprendizaje por refuerzo: estudios de casos". Actas del taller sobre aprendizaje y planificación en procesos de Markov: avances y desafíos. 2004.
  38. ^ Ratitch, Bohdana y Doina Precup. "Memorias distribuidas dispersas para el aprendizaje de refuerzo basado en valores en línea Archivado el 24 de agosto de 2015 en Wayback Machine ". Aprendizaje automático: ECML 2004. Springer Berlin Heidelberg, 2004. 347-358.
  39. ^ Bouchard-Côté, Alexandre. "Detección de estructuras de memoria escasa". (2004).
  40. ^ Rao, Rajesh PN y Dana H. Ballard. "Indexación de objetos utilizando una memoria distribuida dispersa icónica". Computer Vision, 1995. Actas, Quinta Conferencia Internacional sobre IEEE, 1995.
  41. ^ D'Mello, Sidney K., Ramamurthy, U., y Franklin, S. 2005. Eficiencia de codificación y recuperación de datos episódicos en un sistema de memoria distribuida dispersa modificada. En Actas de la 27.ª reunión anual de la Cognitive Science Society. Stresa, Italia.
  42. ^ Ramamaurthy, U., Sidney K. D'Mello y Stan Franklin. "Memoria distribuida dispersa modificada como memoria episódica transitoria para agentes de software cognitivo [ vínculo muerto ] ". Sistemas, hombre y cibernética, Conferencia internacional IEEE de 2004. Vol. 6. IEEE, 2004.
  43. ^ Snaider, Javier; Franklin, Stan (2012). "Memoria distribuida dispersa extendida y almacenamiento de secuencias". Computación cognitiva . 4 (2): 172–180. doi :10.1007/s12559-012-9125-8. S2CID  14319722.
  44. ^ Furber, Steve B.; et al. (2004). "Memoria distribuida dispersa utilizando códigos N-of-M". Redes neuronales . 17 (10): 1437–1451. doi :10.1016/j.neunet.2004.07.003. PMID  15541946.
  45. ^ Sharp, Thomas: "Aplicación de la memoria distribuida dispersa al problema del péndulo invertido". Tesis doctoral de la Universidad de Manchester, 2009. URL: http://studentnet.cs.manchester.ac.uk/resources/library/thesis_abstracts/MSc09/FullText/SharpThomas.pdf
  46. ^ Bose, Joy. Ingeniería de una máquina de secuencias mediante neuronas en espiral que emplean códigos de orden de rango [ enlace roto ] . Tesis doctoral de la Universidad de Manchester, 2007.
  47. ^ Simon Thorpe y Jacques Gautrais. Codificación por orden de rango. En Computational Neuroscience: Trends in research, páginas 113-118. Plenum Press, 1998.
  48. ^ Furber, Stephen B.; et al. (2007). "Memoria distribuida dispersa utilizando códigos neuronales de orden de rango". IEEE Transactions on Neural Networks . 18 (3): 648–659. CiteSeerX 10.1.1.686.6196 . doi :10.1109/tnn.2006.890804. PMID  17526333. S2CID  14256161. 
  49. ^ Calimera, A; Macii, E; Poncino, M (2013). "El Proyecto Cerebro Humano y la computación neuromórfica". Neurología funcional . 28 (3): 191–6. PMC 3812737 . PMID  24139655. 
  50. ^ Hely, Tim; Willshaw, David J.; Hayes, Gillian M. (1997). "Un nuevo enfoque para la memoria distribuida dispersa de Kanerva". IEEE Transactions on Neural Networks . 8 (3): 791–794. doi :10.1109/72.572115. PMID  18255679. S2CID  18628649.
  51. ^ Caraig, Lou Marvin. "Un nuevo algoritmo de entrenamiento para la memoria dispersa distribuida de Kanerva". Preimpresión de arXiv arXiv:1207.5774 (2012).
  52. ^ Anwar, Ashraf; Franklin, Stan (1 de enero de 2005). Ng, Michael K.; Doncescu, Andrei; Yang, Laurence T.; Leng, Tau (eds.). Una memoria dispersa distribuida capaz de manejar pequeñas señales, SDMSCue . IFIP — La Federación Internacional para el Procesamiento de la Información. Springer US. pp. 23–38. doi :10.1007/0-387-24049-7_2. ISBN 978-0-387-24048-0.S2CID10290721  .​
  53. ^ Método y aparato para un sistema de memoria distribuida dispersa US 5113507 A, por Louis A. Jaeckel, Universities Space Research Association, 1992, URL: https://patents.google.com/patent/US5113507
  54. ^ Método y dispositivo para almacenar y recuperar información que implementa un sistema de memoria Kanerva US 5829009 A, de Gary A. Frazier, Texas Instruments Incorporated, 1998, URL: https://patents.google.com/patent/US5829009
  55. ^ Furber, Stephen B. "Memoria digital". Patente estadounidense n.º 7.512.572. 31 de marzo de 2009. URL: https://patents.google.com/patent/US7512572
  56. ^ Emruli, Blerim; Sandin, Fredrik; Delsing, Jerker (2015). "Arquitectura de espacio vectorial para la interoperabilidad emergente de sistemas mediante el aprendizaje a partir de la demostración". Arquitecturas cognitivas de inspiración biológica . 11 : 53–64. doi :10.1016/j.bica.2014.11.015.
  57. ^ Emruli, Blerim; Sandin, Fredrik (2014). "Mapeo analógico con memoria distribuida dispersa: un modelo simple que aprende a generalizar a partir de ejemplos". Computación cognitiva . 6 (1): 74–88. doi :10.1007/s12559-013-9206-3. S2CID  12139021.
  58. ^ Berchtold, Martin. "Procesamiento de datos de sensores con el Common Sense Toolkit (CSTK)". *(2005).
  59. ^ La mente divaga de B. Hayes, 2018. URL: http://bit-player.org/2018/the-mind-wanders
  60. ^ ab Brogliato, Marcelo S.; Chada, Daniel M.; Linhares, Alexandre (2014). "Memoria distribuida dispersa: comprensión de la velocidad y robustez de la memoria experta". Frontiers in Human Neuroscience . 8 : 222. doi : 10.3389/fnhum.2014.00222 . PMC 4009432 . PMID  24808842. 
  61. ^ Surkan, Alvin J. (1992). "WSDM: Prototipo de memoria distribuida dispersa ponderada expresado en APL". ACM SIGAPL APL Quote Quad . 23 : 235–242. doi :10.1145/144052.144142.
  62. ^ Turk, Andreas y Günther Görz. "La memoria distribuida dispersa de Kanerva: una implementación orientada a objetos en la máquina de conexión". IJCAI. 1995.
  63. ^ Silva; Tadeu Pinheiro, Marco; Pádua Braga, Antônio; Soares Lacerda, Wilian (2004). "Coprocesador reconfigurable para la escasa memoria distribuida de Kanerva" (PDF) . Microprocesadores y Microsistemas . 28 (3): 127-134. doi :10.1016/j.micpro.2004.01.003.
  64. ^ Brown, Robert L. (junio de 1987). "Dos demostradores y un simulador para una memoria distribuida dispersa" (PDF) . Archivo de informes técnicos de la NASA .