Pórtico Luna
A
veces me pregunto por qué en tanta teoría filosófica
sobre el funcionamiento de la mente humana en los tiempos actuales no se
tiene en cuenta lo averiguado por el interesantísimo campo del Conexionismo
en Inteligencia Artificial; en otras palabras, las RNA o Redes de Neuronas
Artificiales. Comprender el funcionamiento de estas aunque sea por encima
- este es el objetivo del presente artículo - abre mucho los ojos
de cara a comprender al ser humano. Al fin y al cabo, quizá entre
la gente a quien nos apasiona el tema del conexionismo no sólo hay
un afán de producir máquinas inteligentes sino también
el de descubrir la propia estructura del cerebro humano, la formación
de la consciencia y la razón...
Como
decía cierto profesor mío, "ya hemos conseguido saber
como razona el ser humano, sólo nos faltaría saber cómo
entiende". El funcionamiento de las redes de neuronas artificiales,
hechas a medida de las neuronas que todos poseemos que forman las pequeñas
unidades de proceso a partir de las que se lleva a cabo el pensamiento,
avanza imparable en paralelo con la neurobiología. Sin embargo,
aún no tenemos más que tenues pistas sobre la forma constituyente
de la consciencia y los estados mentales en el ser humano.
Daremos
ahora una visión rápida sobre el funcionamiento de las neuronas
en los seres vivos, luego pasaremos a las artificiales, y finalmente quería
extraer algunas conclusiones... por lástima esto es bastante breve;
en el momento estoy escribiendo un curso largo sobre redes de neuronas
artificiales, que espero publicar en tiempo finito.
Una
neurona natural
La
neurona como elemento constituyente del cerebro y el SN, está dividida
en tres partes según su funcionalidad; el soma es receptor de información,
de donde pasa al áxon (una guía de comunicación)
y desemboca en las dendritas, el "output" que envía esa
información a otras neuronas.
Evidentemente,
esto no es así de simple; una neurona no es un simple transmisor
de información. La recibe (enviada básicamente mediante
neurotransmisores) de otras neuronas, procesa internamente esa información
y envía el resultado a las siguientes neuronas a las que está
conectado (es decir, libera estas sustancias por sus dendritas para que
lleguen a éstas).
El
procesamiento que realiza la neurona consiste muy básicamente en
medir la cantidad de información que ha recibido y responder en
consecuencia. Así, es posible que no se active si hay un "input"
muy bajo, o una buena cantidad de input negativo le indica que no debe
activarse. Puede poseer más activación en caso de recibir
más neurotransmisores indicando que lo haga (con lo que enviará
a su vez).
Ahora
bien, ¿son estas redes de neuronas cosas conectadas con un patrón
fijo? No. Hay un concepto importante, y es el que las neuronas pueden
"aprender" adaptando lo que matemáticamente - y ya me
estoy metiendo en RNA - llamamos "pesos de conexión"...
pero creo que para esto hace falta cambiarle ya el título al apartado
- pues queda además más claro al ver la modelización
- y pasar al siguiente:
Redes
de neuronas artificiales
Una
RNA es muy parecida a lo que en matemática discreta se estudia
como "grafos". En el caso más simple, cada neurona tiene
una serie de variables respecto a sí misma:
-
Estado de activación: Lo más simple es considerarlo "1"
y "0", como on/off
-
Conexiones: Siguiendo el símil del grafo, estos serían los
caminos (unidireccionales) que comunican la neurona con otras.
-
Pesos de las conexiones: Se trata de una cantidad que mide la "fuerza"
de esta conexión. Multiplicado por el estado de activación
daría la cantidad numérica que se envía a otra neurona
para su activación. Así, una neurona que está activada
(1) conectada con un peso de (5) a otra, le enviará en términos
matemáticos "5" de input.
-
Umbral de activación: La cantidad de "input" necesario
para activar la neurona. Para decidir si una neurona está activada
o no, tenemos en cuenta su entrada. Pongamos que su umbral es "11"
y que recibe de tres neuronas conectadas a ella "+4", "+9"
y "-1". El resultado es "+12", lo cual supera el umbral
y activa la neurona. Sin embargo, si el "input" fuera "+4"
y "+5", el total sería "+9" lo cual no llega
al umbral que hemos definido; la neurona destino estaría por tanto
con un estado "0".
Con
estos conceptos en mente - aunque simplificados, pues umbral y activación
pueden ser funciones, etc -, que aclaran mucho incluso las ideas sobre
el funcionamiento de las redes de neuronas naturales, toca explicar lo
que más intrigante resulta; ¿ cómo aprenden estas
redes ?
El
concepto clave es que los pesos de conexión entre neuronas pueden
- y han de ser - modificados. Exceptuando las redes de Hopfield, los modelos
conexionistas modifican sus pesos para poder adaptarse al input recibido
y al output deseado.
Como
ejemplo, valga un aprendizaje "supervisado": supongamos tres
capas de neuronas, compuestas por 5, 5 y 2 de ellas respectivamente, y
que están conectadas la primera capa (input) con la segunda y la
segunda con la tercera (que será la de output). Esto significa
que al ser la de 2 la capa final y teniendo 4 combinaciones (00,01,10,11),
podemos identificar cuatro "patrones" distintos. Esto es, que
quizá si activamos de la primera capa las neuronas 1 y 3 obtengamos
que se activa la neurona 1 de la tercera capa por el juego de activaciones/pesos
en la segunda y tercera capas.
Pongámonos
en esa situación, lo siguiente que pensaríamos es, ¿se
trata de una respuesta correcta la del output respecto al input recibido?
Si esto es así, reforzamos las conexiones que estaban activas,
y disminuímos las otras. Asi, la próxima vez que se presente
un patrón parecido a (1,3) habrá más probabilidades
de que la respuesta sea correcta, y menos de que se de esta respuesta
en caso de no ser así. Tras hacer mucho estas veces, la red aprenderá
a discriminar los patrones que le enseñemos.
Por
supuesto que también hay métodos de aprendizaje "no
supervisado", en que las neuronas aprenden por sí mismas;
el aprendizaje competitivo es un buen ejemplo, pero tampoco entraré
en detalles. Ya está claro el método por el cual las RNA
aprenden para adaptarse al input y realizar una respuesta correcta. De
hecho, estos algoritmos han demostrado servir de maravilla para cosas
como reconocimiento de caras, visión artificial... imaginemos que
la capa de input de la red de neuronas fueran los pixels de una cara que
se capta mediante una cámara. Entrenando a la red, se la podría
hacer diferenciar rostros con una paralelización absoluta y una
posibilidad ínfima de error... ya hay bancos que confían
en programas de redes de neuronas para distinguir mediante biometría
de la pupila a sus clientes, lo que muestra que esto es muy efectivo.
Conclusiones
Las
RNA son dos cosas; primero un intento de imitar nuestra forma de pensar,
por otro lado un magnífico algoritmo basado en la paralelización
masiva, al contrario de los sistemas informáticos habituales que
se basan en procesar las cosas en serie. Esa, es también la forma
que tiene el ser humano de pensar.
Muchas
veces se dice que los ordenadores han superado al hombre; sin embargo
no somos capaces de mantener una buena conversación con uno, y
cosas que para nosotros son tan sencillas como identificar un rostro en
una multitud, para el ordenador basado en los algoritmos en serie es casi
imposible. Si a nosotros nos hablan de un "animal que tiene trompa"
inmediatamente pensamos en un elefante. Sin embargo, un ordenador habría
de buscar recursivamenteen su base de datos sobre animales, uno por uno,
hasta encontrar coincidencias. El famoso "Deep Blue" busca recursivamente
puntuando las posibles jugadas que realizar en su turno al ajedrez, pero
no elimina jugadas automáticamente como hace el jugador humano.
Es
sencillo de explicar; imaginemos que tuviesemos una base de datos de 500
neuronas donde pudiesemos identificar X animales. Si se activase la neurona
de entrada "tener trompa", automáticamente se produciría
el output de que se trata de un elefante. Esto por ejemplo, es lo que
hacen las redes artificiales de Hopfield.
¿Cuál
es la base de nuestro pensamiento, pues?. La clasificación de patrones,
y la reacción ante ellos. Durante todo el día estamos clasificando
cosas; lo que vemos lo identificamos respecto a un concepto, utilidad,
etc. Respondemos con patrones de conducta grabados a situaciones conocidas
como puede ser algo tan sencillo como ir de compras. Distinguimos el estado
de ánimo de aquel con quien hablamos, y constantemente analizamos
sus gestos y palabras, dividiendolas según los significados que
implican o su entonación. Incluso, cuando juzgamos algo como "bueno"
o "malo", cuando pensamos que algo es "justo" o "injusto",
no estamos más que haciendo una clasificación...
Parándose
a pensar, es fácil ver cómo la mayoría de nuestra
actividad responde a este funcionamiento de clasificación de input
en patrones. Eso sí, imagino que aún hay dos preguntas pendientes
- aparte de que qué es la consciencia, la cual es casi imposible
responder... de momento - que uno puede hacerse: ¿cómo aprendemos
nosotros, y qué son los sentimientos?
Curiosamente,
la respuesta a las dos preguntas está muy relacionada. La base
del aprendizaje es el estímulo positivo/negativo; estímulos
positivos refuerzan conductas mientras que los negativos disminuyen la
probabilidad de que ocurran. Evidentemente, hay una pequeña base
genética para determinar qué es positivo y qué negativo,
que luego se complejiza enormemente hasta llegar a un punto en que estamos
totalmente condicionados por nuestro ambiente. Somos capaces, incluso,
de vencer "instintos" como el de supervivencia o el de reproducción,
y de tener una visión muy personal de lo que significa un estímulo
positivo y uno negativo.
Por
ejemplo, un bebé dice "mamá" por primera vez.
Al hacerlo simplemente es que lo ha oído unas cuantas veces, no
sabe lo que significa pero está aprendiendo e imitando sonidos.
De sus padres va a recibir un estímulo positivo en forma de caricias
y demás, que van a reforzar esa conducta. Gracias a eso, poco a
poco irá aprendiendo... si al decir una palabra los padres golpeasen
al hijo, sería bastante difícil que este aprendiera a hablar
:-)
Y
hablábamos de los sentimientos. Personalmente, pienso que es sencillo
hablar de ellos como una complejización de este estímulo
positivo/negativo, además de otras formas fisiológicas -
simplemente +/- sería un modelo demasiado simple, y reacciones
como el miedo tienen todas unas consecuencias fisiológicas aunque
muy determinadas por el aprendizaje. La primera forma en que el bebé
los posee es la llamada "fase del apego"; llora cuando no está
su madre y se encuentra más relajado y alegre cuando está.
Todo esto va haciéndose más complejo con el aprendizaje
social, y deriva en conceptos como el odio (¿alguien te produce
un estímulo *realmente* negativo?), los celos (¿sensación
de poder perder un estímulo positivo?), etc.
No
hay más que ver cosas propias de nuestra sociedad occidental como
el "amor romántico" para darse cuenta de lo complejo
que puede volver el aprendizaje social un hecho aparentemente tan simple
como es la existencia de un estímulo que nos resulta agradable.
Biológicamente, se puede hablar de una serie de neurotransmisores
llamados feniletilaminas que se encuentran en los sujetos "enamorados",
y cuyo síndrome de abstinencia es el famoso mal de amores. Sin
embargo esta forma de afecto sólo está presente en ciertas
sociedades (y por cierto, que las sociedades monógamas son minoría
en el mundo). Quizá, es que el trato social en que se oculta la
afectividad hace que esta se descargue sobre la pareja cuando se tiene,
realizando esa necesidad de estímulo positivo de afecto que el
individuo necesita... preguntas... ¿respuestas?
En fin, podría seguir divagando sobre el tema y sus implicaciones
largo rato, pero creo que ya ha quedado claro lo que quería transmitir.
Que de cara a comprender al hombre sin meternos en conjeturas metafísicas,
necesitamos al menos una pequeña idea sobre el funcionamiento del
cerebro. Y por suerte tenemos acceso a ella gracias a los avances científicos
modernos tanto en el campo de la neurobiología y la inteligencia
artificial.
Por
último, un pequeño consejo: un interesenta libro sobre los
dos niveles en los que se estudia el pensamiento que son el biológico
y el de los estados mentales, escrito por un catedrático en neurociencia.
Su autor se llama Gazzaniga, y el título es "Cuestiones de
la mente".
http://personal5.iddeo.es/wintrmute/ia/neuronal.htm
Para
saber más:
http://www.gc.ssr.upm.es/inves/neural/ann2/anntutorial.html