Estás leyendo la publicación: Un pico de cómo el cerebro puede realizar el análisis de componentes principales. – Hacia la IA
Publicado originalmente en Hacia la IA, la empresa líder mundial en noticias y medios de IA y tecnología. Si está creando un producto o servicio relacionado con la IA, lo invitamos a considerar convertirse en patrocinador de la IA. En Hacia la IA, ayudamos a escalar las empresas emergentes de IA y tecnología. Permítanos ayudarlo a dar rienda suelta a su tecnología a las masas.
El cerebro y el mundo moderno tienen una cosa en común: los resultados surgen del análisis de grandes conjuntos de datos de información. Uno de los métodos de análisis de datos más conocidos se llama o . El objetivo de este método es transformar una entrada en una nueva representación en la que las variables están decorrelacionadas por pares. En otras palabras, este método elimina la redundancia en un conjunto de datos.
La figura anterior representa el método PCA aplicado en el conjunto de datos de flor de iris de código abierto (https://scikit-learn.org/stable/auto_examples/datasets/plot_iris_dataset.html). Este conjunto de datos será el que se utilizará en esta publicación como ejemplo. A pesar de su simplicidad, permitirá una buena explicación de los diferentes métodos.
Se puede ver que en el espacio PCA las diferentes especies son claramente identificables. PCA es una herramienta útil para analizar la estructura de los datos, pero está sujeta a algunas limitaciones. Diría que uno de los principales es que los vectores PCA que formarán la base del espacio PCA tienen que ser ortogonales. Sin embargo, no hay razón para que sea apropiado para todos los conjuntos de datos. Aún así, PCA constituye uno de los bloques fundamentales de las técnicas de análisis de datos más avanzadas.
En los últimos años, numerosos trabajos han demostrado que las propiedades de respuesta de las neuronas en etapas tempranas del sistema visual son similares a una técnica de reducción de redundancia para imágenes naturales. Las neuronas del cerebro no son independientes sino que están conectadas entre sí. Estas conexiones neuronales no son estáticas y su dinámica se denomina plasticidad sináptica. Si bien la plasticidad sináptica es un tema de investigación activo en Neurociencia, este fenómeno neurobiológico comenzó a ser descrito por Donald Hebb en 1949:
Supongamos que la persistencia o repetición de una actividad de reverberación (o ‘rastro’) tiende a inducir cambios celulares duraderos que se suman a su estabilidad… Cuando un axón de la célula A está lo suficientemente cerca como para excitar una célula B y participa repetida o persistentemente al encenderlo, tiene lugar algún proceso de crecimiento o cambio metabólico en una o ambas células, de modo que aumenta la eficiencia de A, como una de las células que dispara B.
Si bien esta regla parece muy prolija, de hecho se puede reducir a lo siguiente: células que se conectan juntas, disparan juntas. O en otras palabras, cuando las neuronas están activas juntas, sus conexiones sinápticas aumentarán.
La regla de Hebb en neurociencia se puede clasificar como una regla de aprendizaje no supervisada. De hecho, describe un mecanismo básico de plasticidad neuronal en el que una estimulación repetida debida a una neurona presináptica aumenta la conexión con la neurona postsináptica. Voy a usar un modelo neuronal simple, presentado por Oja en 1982, donde el modelo es lineal y la salida de la neurona es en realidad una combinación lineal de lo que se recibe.
La actividad V de la neurona se describe así por:
Además, podemos notar que la salida Vermont) de la neurona es en realidad el producto escalar de un vector de peso W y un vector de entrada X.
Ahora bien, si en cada paso de tiempo, la neurona recibe un estímulo específico extraído de una distribución de probabilidad PAGel vector de peso se va a modificar según (regla de Hebb):
con λ una cantidad llamada tasa de aprendizaje. Esta regla de aprendizaje corresponde a la regla de Hebb como si la entrada I y la salida V son altos al mismo tiempo, los pesos aumentarán.
Interpretación geométrica
Para obtener una idea de lo que capturan estas modificaciones dentro de la distribución de datos PAGveamos un ejemplo en 2-D.
La distribución PAG está representado por las regiones azules. Debido a la fuerte dirección de PAGcada iteración de la regla de aprendizaje después de la presentación de la entrada modificará los pesos W según las flechas roja y rosa. La dirección final del vector de pesos sinápticos será la de la varianza máxima de la distribución PAGo en otras palabras, la dirección en la que PAG es el más amplio. Sin embargo, hay un problema con esta regla de aprendizaje. la norma de W no está acotado ya que siempre aumenta a lo largo de la dirección del vector propio de la matriz de covarianza de entrada.
Restricción del crecimiento: la regla de Oja
La idea de esta regla es modificar la regla de Hebb agregando un segundo término sustractivo que limitará el crecimiento de W.
¿Por qué es tan interesante esta regla restrictiva? Una vez realizado el aprendizaje no supervisado, los pesos siguen la siguiente ecuación:
con W y X siendo vectores multidimensionales. El primer término de esta ecuación se puede reescribir de la siguiente manera:
con C la matriz de covarianza de entrada. Así, obtenemos:
Nuestro vector de peso W es un vector propio de C la matriz de covarianza de entrada en el equilibrio. Además, este vector propio es de norma 1 y corresponde al vector propio con el valor propio máximo. Los pesos de esta red neuronal se mueven en una dirección que captura la mayor cantidad de variación en la distribución de entrada, que es propiedad del primer componente principal.
Para obtener más de un componente, es necesario considerar una extensión regla de Sander. Primero, la red de perceptrones tendrá más de una salida (una por componente). El siguiente paso es implementar una regla de Oja progresiva, pero restando la entrada predicha para cada salida de manera progresiva. Por lo tanto, cada vector de peso aprende de un conjunto de entrada diferente con más estructura sustraída a medida que son salidas. La implementación de Python de este algoritmo hebbiano generalizado es la siguiente:
La función actualizar datos calcula la regla de aprendizaje de Hebbian, con la regla de Sander, sobre los pesos de la red. La función está calibrada para 2 salidas (reducción en 2 dimensiones).
La siguiente figura muestra que, de hecho, la salida de esta red de perceptrón de 2 salidas está actuando como un PCA. La estructura de la proyección del conjunto de datos sobre los vectores de peso es muy similar a los dos primeros componentes del PCA, y los grupos de las tres especies son claramente distinguibles.
La siguiente pregunta que uno podría hacerse sobre tales redes neuronales es la siguiente: ¿pueden estas redes realizar métodos más avanzados, como la agrupación y el análisis de componentes independientes? Como las estadísticas que nuestra red puede aprender dependen de la forma de la salida del perceptrón. Aprender diferentes estructuras requiere observar la función de salida no lineal y, por lo tanto, los algoritmos hebbianos no lineales.
Un pico de cómo el cerebro puede realizar el análisis de componentes principales. se publicó originalmente en Hacia la IA en Medium, donde las personas continúan la conversación destacando y respondiendo a esta historia.
Publicado a través de Hacia la IA