Como humanos, el simbolismo es la clave para comprender el mundo que nos rodea, es la forma en que interpretamos los objetos, las ideas y las relaciones entre ellos. 

Dependemos totalmente de la analogía, que es lo que hace que nuestra tecnología informática actual sea extremadamente intrincada, compleja y, en este momento, arcaica. 

La creciente popularidad de la inteligencia artificial (IA) y los casos de uso que ya estamos viendo con ChatGPT de OpenAI no son necesariamente las mejores aplicaciones que van más allá de la mera "exageración" y la inflación de acciones.

Bajo la informática tradicional, no entendemos completamente qué están haciendo estas redes neuronales artificiales (RNA) ni por qué funcionan tan bien como lo hacen. La total falta de transparencia también supone una desventaja importante en nuestra comprensión de cómo se recopilan y analizan los datos para arrojar los resultados a los que tan desesperadamente nos apegamos y que llegamos a etiquetar como “progreso”.

Considere el siguiente ejemplo de una RNA que es capaz de distinguir "círculos" y "cuadrados" entre sí. 

Una forma de lograr esa distinción es obvia: si una capa de salida indica un círculo y la otra indica un cuadrado. 

Pero, ¿qué pasaría si quisiera que la ANN discerniera el “color” de esa forma en particular: es “rojo” o “azul”? 

Dado que el "color" es un conjunto de datos completamente separado, se requieren neuronas de salida adicionales para poder tener en cuenta esa característica en el resultado final. En este caso, sería necesario haber cuatro neuronas de salida: una para el círculo azul, otra para el cuadrado azul, otra para el círculo rojo y otra para el cuadrado rojo. 

Ahora bien, ¿qué pasaría si quisiéramos un cálculo que también considerara información adicional, como “tamaño” o “posición/ubicación”? 

Más características significan más neuronas que deben tener en cuenta cada posibilidad asociada al definir esa característica particular (o combinación de características) con el "círculo" y el "cuadrado". 

En otras palabras, se vuelve increíblemente complejo. 

Bruno Olshausen, neurocientífico de la Universidad de California en Berkeley, habló recientemente de la necesidad de tener una neurona para cada combinación posible de características.

“No puede ser así como nuestro cerebro percibe el mundo natural, con todas sus variaciones. Tienes que proponer... una neurona para todas las combinaciones”, dijo, y explicó además que, en esencia, necesitaríamos “un detector Volkswagen violeta” o algo tan oscuro para dar cuenta de cada combinación posible de información que esperamos considerar en un momento determinado. experimento.

Ingrese a la 'computación hiperdimensional'.

¿Qué es la "computación hiperdimensional"?

El corazón de la computación hiperdimensional es la capacidad del algoritmo para descifrar piezas específicas de información de imágenes complejas (piense en metadatos) y luego representar esa información colectiva como una entidad única, conocida como "vector hiperdimensional".

A diferencia de la computación tradicional, la computación hiperdimensional nos permite resolver problemas simbólicamente y, en cierto sentido, ser capaces de "predecir" de manera eficiente y precisa el resultado de un problema particular en función de los datos contenidos en el vector hiperdimensional. 

Lo que sostiene Olshausen, entre otros colegas, es que la información en el cerebro está representada por la actividad de una tonelada de neuronas, lo que hace que la percepción de nuestro ficticio “Volkswagen morado” sea imposible de contener mediante las acciones de una sola neurona, sino a través de miles. de neuronas que, en conjunto, llegan a formar un Volkswagen morado.

Con el mismo conjunto de neuronas actuando de manera diferente, podríamos ver un concepto o resultado completamente diferente, como un Cadillac rosa. 

La clave, según una discusión reciente en WIRED, es que cada pieza de información, como la idea de un automóvil o su marca, modelo, color o todos ellos combinados, se representa como una sola entidad: un vector hiperdimensional o hipervector.

Un "vector" es simplemente una matriz ordenada de números (1, 2, 3, etc.) donde un vector 3D consta de tres números: las coordenadas x, y y z de un punto exacto en el espacio 3D.

Un "hipervector", por otro lado, podría ser una matriz de miles o cientos de miles de números que representan un punto en esa cantidad de espacio dimensional. Por ejemplo, un hipervector que representa una matriz de 10.000 números representa un punto en un espacio de 10.000 dimensiones. 

Este nivel de abstracción nos brinda la flexibilidad y la capacidad de evolucionar la informática moderna y armonizarla con tecnologías emergentes, como la inteligencia artificial (IA). 

"Esto es lo que más me ha entusiasmado, prácticamente en toda mi carrera", dijo Olshausen. Para él y para muchos otros, la computación hiperdimensional promete un nuevo mundo en el que la computación es eficiente y sólida y las decisiones tomadas por máquinas son completamente transparentes.

Transformar 'metadatos' en algoritmos hiperdimensionales para generar resultados complejos

El álgebra subyacente nos dice por qué el sistema eligió esa respuesta particular, lo que no se puede decir de las redes neuronales tradicionales. 

El desarrollo de sistemas híbridos en los que estas redes neuronales pueden mapear cosas en la vida real en hipervectores y luego permitir que el álgebra hiperdimensional se haga cargo es el quid de cómo se debe utilizar la IA para realmente capacitarnos para comprender mejor el mundo que nos rodea.

"Esto es lo que deberíamos esperar de cualquier sistema de IA", afirma Olshausen. "Deberíamos poder entenderlo tal como entendemos un avión o un televisor".

Volviendo al ejemplo de “círculos” y “cuadrados” y aplicándolo a espacios de grandes dimensiones, necesitamos vectores para representar las variables de “forma” y “color”, pero también necesitamos vectores para representar los valores que pueden asignarse a las variables: “CÍRCULO”, “CUADRADO”, “AZUL” y “ROJO”.

Lo más importante es que estos vectores deben ser lo suficientemente distintos como para cuantificar realmente estas variables. 

Ahora, dirijamos la atención a Eric Weiss, un estudiante de Olshausen, quien en 2015 demostró un aspecto de las habilidades únicas de la computación hiperdimensional: cómo representar mejor una imagen compleja como un único vector hiperdimensional que contiene información sobre TODOS los objetos en la imagen. colores, posiciones, tamaños. 

En otras palabras, una representación extremadamente avanzada de los metadatos de una imagen. 

"Prácticamente me caí de la silla", dijo Olshausen. “De repente, se encendió la bombilla”.

En ese momento, más equipos comenzaron a centrar sus esfuerzos en desarrollar "algoritmos hiperdimensionales" para replicar las tareas "simples" en las que las redes neuronales profundas ya habían participado dos décadas antes, como clasificar imágenes. 

Creando un 'hipervector' para cada imagen

Por ejemplo, si tomara un conjunto de datos anotados que consta de imágenes de dígitos escritos a mano, este algoritmo hiperdimensional analizaría las características específicas de cada imagen, creando un "hipervector" para cada imagen.

Crear una "clase" de hipervectores para cada dígito

A partir de ahí, el algoritmo agregaría los hipervectores para todas las imágenes de "cero" para crear un hipervector para la "idea de cero" y lo repetiría para todos los dígitos, generando 10 hipervectores de "clase", uno para cada dígito. 

Esas clases almacenadas de hipervectores ahora se miden y analizan con respecto al hipervector creado para una nueva imagen sin etiquetar con el propósito de que el algoritmo determine qué dígito se asemeja más a la nueva imagen (basándose en la clase predeterminada de hipervectores para cada dígito). 

La investigación de IBM se sumerge

En marzo, Abbas Rahimi y dos colegas de IBM Research en Zurich utilizaron computación hiperdimensional con redes neuronales para resolver un problema clásico del razonamiento visual abstracto, algo que ha presentado un desafío importante para las RNA típicas, e incluso para algunos humanos. 

El equipo primero creó un "diccionario" de hipervectores para representar los objetos en cada imagen, donde cada hipervector en el diccionario representaba un objeto específico y alguna combinación de sus atributos. 

A partir de ahí, el equipo entrenó una red neuronal para examinar una imagen y generar un hipervector bipolar, donde un atributo o elemento particular puede ser +1 o -1. 

"Guías la red neuronal a un espacio conceptual significativo", dijo Rahimi.

El valor aquí es que una vez que la red ha generado hipervectores para cada una de las imágenes de contexto y para cada candidato para el espacio en blanco, se utiliza otro algoritmo para analizar los hipervectores y crear "distribuciones de probabilidad" para varios objetos en la imagen.

En otras palabras, el álgebra se puede utilizar para predecir la imagen candidata más probable para ocupar el puesto vacante. Y el enfoque del equipo arrojó una precisión cercana al 88 por ciento en un conjunto de problemas, donde las soluciones basadas únicamente en redes neuronales tuvieron una precisión inferior al 61 por ciento.

Todavía estamos en la infancia

A pesar de sus muchas ventajas, la computación hiperdimensional aún está en su infancia y requiere pruebas con problemas del mundo real y a escalas mucho mayores que las que hemos visto hasta ahora; por ejemplo, la necesidad de buscar de manera eficiente más de mil millones de elementos o resultados. y encontrar un resultado específico. 

En última instancia, esto llegará con el tiempo, pero plantea interrogantes sobre dónde y cómo aplicamos e integramos el uso de la inteligencia artificial. 

Lea acerca de cómo un servicio religioso de 40 minutos, impulsado por IA, atrajo a más de 300 asistentes en Alemania como un experimento único en su tipo.

Haga clic aquí para ver la galería completa en Hypemoon