FECHA
CATEGORÍA
TAGS
In mente machinae (I): geometría interna
Rubén Rodríguez Abril
Este artículo inaugura la serie «In mente machinae» («en la mente de la máquina»), que explorará el modo en que los modelos de deep learning almacenan y procesan la información en sus capas internas. En los párrafos siguientes se aborda el modo en que los rasgos y los patrones son codificados por vectores en hiperespacios de miles de dimensiones. Y se muestra cómo la presencia de elementos no lineales fragmentan este espacio y facilitan la representación de más rasgos que neuronas disponibles. Inspirado en el trabajo de Anthropic AI.
Introducción
¿Por qué funcionan tan bien los sistemas de aprendizaje profundo? ¿cuáles son sus mecanismos de procesamiento de la información? ¿hay en ellos algo análogo a los procesos neurológicos que rigen el funcionamiento de la mente humana?
En esta serie de artículos pretendemos analizar de qué manera el estado de máquina de un modelo de aprendizaje profundo es capaz de analizar y procesar información de muy diversa naturaleza, desde patrones visuales a estructuras lingüísticas complejas, pasando nociones tan abstractas como los sentimientos o ideología del autor de un texto.
El aprendizaje profundo puede ser definido como aquella rama del aprendizaje de máquina, ligeramente inspirada en el sistema nervioso de los animales, en el que la información es procesada a través de una serie de multiplicaciones matriciales intercaladas con operaciones no lineales. La información toma la forma de un vector o matriz, que avanza hacia la salida atravesando una serie de capas. Cada capa corresponde a una operación algebraica sobre dicha matriz o vector, que puede ser una transformación lineal (multiplicación lineal) o una función no lineal, como ReLU, GeLU o la función sigmoide.
Por analogía con la biología, las unidades de cada capa e menudo reciben el nombre de neuronas artificiales. Cada unidad/neurona produce un único número en coma flotante denominado valor de activación, que constituye su nivel de respuesta al patrón de entrada.
No linealidad
Si las redes sólo contuvieran capas lineales, no serían capaces de representar polinomios de segundo orden o superiores, y tendrían grandes problemas para reconocer patrones como círculos (que no dejan de ser funciones cuadráticas en dos dimensiones), espirales logarítmicas, la proporción áurea o estructuras fractales (conjunto de Mandelbrot, curvas de Koch). La aplicación de funciones no lineales permite a una red neuronal aproximar (y también reconocer) funciones exponenciales o cuadráticas, tal y como se muestra en la imagen.
Figura 1. Por medio de la aplicación de tres funciones ReLU hemos logrado aproximar el valor de la parábola x2 en parte de su dominio. Fuente: Toy Models of Superposition.
Desde un punto de vista geométrico, en una red puramente lineal de N neuronas, hay un único espacio de configuración N dimensiones. Con la introducción de ReLU, una parte de estas neuronas se apagan, y no participan en la dinámica del modelo. La introducción de elementos no lineales fragmenta un único espacio lineal de RN dimensiones en 2N (el conjunto potencia) posibles subespacios y subconjuntos de neuronas activas. ReLU, al imponer una máscara de activación, hace que el sistema navegue entre el conjunto potencia de subespacios lineales de N.
Un ejemplo paradigmático es AlexNet, una red pionera en la clasificación de imágenes. Si se eliminara la no linealidad entre sus capas, las matrices de estas últimas (W1, W2, W3,…) podrían multiplicarse para formar una sola WT. El modelo se transformaría así en una regresión lineal gigante, incapaz de reconocer patrones y texturas o de resolver XOR. Sin funciones de activación, AlexNet perdería su capacidad de realizar tareas de clasificación de imágenes.
Vectores que codifican rasgos/características
En cada capa, los valores de activación de sus N neuronas conforman un vector en un espacio de N dimensiones denominado “espacio de representación”. Cada neurona actúa como una base de dicho espacio. En los modelos de visión artificial, los espacios de representación de las primeras capas suelen procesar información de bajo nivel, como curvas o vértices, mientras que las últimas capas detectan patrones de alto nivel, de carácter semántico y global. En los modelos de lenguaje tipo transformer (modelo de lenguaje) la estructura se modifica ligeramente: las capas más cercanas a la salida o a la entrada procesan la información de bajo nivel mientras que las capas intermedias capturan estructuras más complejas, como el significado global de un texto, la ideología o sentimientos de su autor.
El trabajo pionero de Mikolov et al en redes neuronales recurrentes demostró por primera vez que los modelos de lenguaje construyen espacios de embedding (codificación de contenido) en los que cada token/palabra es representada por un vector multidimensional. Sorprendentemente observaron que las relaciones semánticas entre palabras podían representarse como operaciones lineales entre vectores. Así, por ejemplo, si al vector “rey” se le restaba el vector “hombre” y se le sumaba el vector “mujer”, se obtenía un resultado muy próximo al de “reina”:
vector[“rey”] – vector[“hombre”] + vector[“mujer”] ≈ vector[“reina”]
Cuando un vector se alinea fuertemente con una base concreta del espacio, el rasgo queda vinculado a la neurona, que pasa a ser monosemántica. La existencia de tales neuronas en el cerebro humano, que se activaban frente a conceptos específicos, fue discutida por Douglas Hofstadter en su libro “Gödel, Escher, Bach”. Más adelante Andrej Karpathy, en su artículo, “The Unreasonable Effectiveness of Recurrent Neural Networks”, se dio cuenta que ciertas neuronas RNNs se activaban selectivamente cuando aparecían determinadas palabras o patrones en un texto.
No obstante, dado que los espacios de representación de las capas tienen un número finito de dimensiones (del orden de cientos o miles), no son capaces de representar la riqueza del lenguaje humano y de las representaciones visuales. Por eso, a menudo, los modelos, durante su entrenamiento, se ven compelidos a utilizar reutilizar neuronas para representar varios conceptos, surgiendo así las neuronas polisemánticas. Así, el espacio neuronal de cada capa deviene capaz de representar un espacio simbólico de mayores dimensiones, donde se almacenarían los rasgos y características.
Figura 2. Abajo, se representa una capa interna de una red neuronal, dotada de m neuronas. Arriba, un espacio simbólico de más dimensiones, en el que se almacenan n rasgos. Las transformaciones lineales W y WT conectan ambos espacios, funcionando como codificador y descodificador respectivamente en un autocodificador lineal. Fuente: Toy Models of Superposition.
Espacios simbólicos y almacenamiento en redes neuronales
Los investigadores de Anthropic AI analizaron hasta qué punto una capa de neuronas puede ser capaz de almacenar más rasgos que neuronas disponibles. En su artículo, Toy models of superposition expusieron las siguientes conclusiones:
-El espacio simbólico y el espacio neuronal (latente) están conectados entre sí mediante la transformación lineal W y su inversa WT, equivalentes a un codificador y un descodificador de un autocodificador lineal.
-Una red puramente lineal no puede almacenar más rasgos que neuronas sin que haya interferencias.
-La existencia de componentes no lineales en la red (en funciones de activación) posibilita el almacenamiento de un mayor número de rasgos.
-Para que sea efectivo este almacenamiento, es necesario que exista una elevada esparsión (sparsity) en espacio simbólico, es decir, que sólo una pequeña fracción de las mismas esté activa simultáneamente (piénsese en los casos de los rasgos “Martin Luther King” o “Vía Láctea”, que muy rara vez concurren en una misma imagen).
-La densidad (D) indica la proporción (sobre 1) de rasgos activos, mientras que la esparsión (S) es su función complementaria (1-S).
-Cuando hay más rasgos que neuronas disponibles, se producen fenómenos de superposición de rasgos e interferencia entre los mismos. Su producto escalar en el espacio neuronal deviene no nulo. La función ReLU (y en general, los elementos no lineales) permite que el sistema pueda “pelar” estas interferencias y a pesar de ello seguir reconociendo patrones eficientemente.
Figura 3. La ilustración describe lo que sucede cuando entrenamos a 5 neuronas para que reconozcan 20 rasgos disponibles. En la parte de abajo, un modelo lineal sólo es capaz de almacenar 5 rasgos sin interferencia (filas en negro). A la derecha, la agregación de ReLU como función de activación incrementa la capacidad de almacenamiento. A medida que crece la esparsión (S) también lo hace la cantidad de rasgos almacenados y la superposición de los mismos (filas en amarillo). En la parte superior se muestra la multiplicación de W por su traspuesta WT. Cada elemento de la matriz representa producto escalar de dos rasgos. Los elementos fuera de la diagonal representan interferencias negativas (azul) o positivas (rojo). Fuente: Toy Models of Superposition.
Esparsión y superposición
El término inglés sparsity (cuyo equivalente español esparsión está admitido por la Real Academia Española) describe la proporción de elementos en un vector o en una matriz que son nulos. Una matriz por completo nula tiene una esparsión de 1, mientras que una completamente densa tendría una esparsión de 0. Es, como se ha indicado con anterioridad, una magnitud complementaria a la densidad.
Tal y como se muestra en la figura 2, cuanto mayor sea la esparsión de los vectores del espacio simbólico (pocos rasgos activos a la vez), mayor será también la cantidad de rasgos almacenados dentro del espacio neuronal, que quedarán superpuestos.
Geometría de los espacios de representación
Los experimentos y mediciones realizados mostraron que, si hay suficiente presión geométrica (por ejemplo, mediante la introducción de un término de reconstrucción en la función de pérdida que penalice que queden rasgos sin representar), incluso una capa puramente lineal es capaz de almacenar más rasgos que neuronas. En este último caso, los vectores-rasgos tienden a quedar lo más espaciados posibles entre ellos, equidistantes angularmente y organizándose en politopos.
Así, por ejemplo en un espacio neuronal de 3 dimensiones que debe representar 4 rasgos, éstos se disponen como los vértices de un tetraedro regular. A mayor numero de rasgos, se forman estructuras más complejas como hipercubos, antiprismas, etc.
Figura 4. A la izquierda, una capa lineal de tres neuronas (tres dimensiones espaciales) almacena doce rasgos. Los vectores que representan dichos rasgos en el espacio tridimensional tienen su origen en el punto cero, y apuntan a cada uno de los vértices de un dodecaedro (en rojo). A la derecha, una célebre “bucky ball”, formada por 60 vértices con simetría icosaédrica, que en teoría podría albergar unos tantos rasgos distribuidos uniformemente. Fuente: Toy Models of Superposition.
Tratándose de un sistema puramente lineal, los espacios de representación tienen simetría rotacional, por lo que si los vectores de entrada y las matrices de las capas se rotan en la misma dirección, el sistema sigue funcionando sin alteraciones.
Por el contrario, en una capa no lineal, como la definida por ReLU, la estructura simétrica de dichos politopos es deformada y destruida. En el caso de la figura tres, la aplicación de la función rectificadora supone el truncamiento de los poliedros en los dominios negativos del sistema de coordenadas, quedando reducidos a su primer octante (esto es, x,y,z > 0). En este caso, las rotaciones ya no son libres y los vectores no están bien espaciados. El sistema pierde armonía y belleza, pero a cambio se incrementa su potencia representativa.
Además, ReLU, al truncar politopos y desactivar parte de las neuronas, provoca que en la siguiente capa lineal haya una mayor esparsión, facilitando así la aparición en ella del fenómeno de la superposición.
Dinámica de entrenamiento
En las fases iniciales del entrenamiento, las neuronas tienden a comportarse de un modo monosemático, codificando rasgos simples y separados entre sí, con poca interferencia. Sin embargo, a medida que progresa el entrenamiento se incrementa la presión geométrica para que la capa del modelo almacene más rasgos que neuronas disponibles. Y es entonces cuando aparecen los fenómenos de superposición.
Los autores de este trabajo se dieron cuenta de que en sus modelos se daba un fenómeno parecido al grokking (Power et al, 2022), en el que la red pasaba abruptamente de memorizar datos de entrada a generalizar correctamente, produciéndose una caída brusca de la función de pérdida. Este cambio de comportamiento venía acompañado de una reorganización geométrica interna de los espacios de representación.
Para estudiar esta dinámica en los modelos de juguete, los investigadores asignaron a cada vector-rasgo una región del espacio denominada dimensionalidad, formada por aquellas áreas más cercanas angularmente con dicho vector. Se comprobó que a lo largo del entrenamiento, las dimensionalidades no siempre evolucionaban de una manera continua, sino que a veces presentaban discontinuidades, en los que todas ellas parecían modificarse coordinadamente, viniendo acompañadas así mismo por una caída pronunciada de la función de pérdida.
También se observó que en las primeras fases del entrenamiento predominaba el componente lineal (tipo PCA o regresión lineal), que luego evolucionaba hacia un comportamiento no lineal mucho más eficiente.
Estos hallazgos sugieren que el entendimiento profundo y el conocimiento estructural por parte de las redes neuronales no siempre aparece desde el inicio, sino que a menudo lo hace tarde y de un modo repentino.
Lecturas Recomendadas
– “Toy Models of Superposition” (Anthropic AI, 2022).
– «Grokking: Generalization Beyond Overfitting on Small Algorithmic Datasets» (Power et al, 2022).







