Sie sind auf Seite 1von 114

Agentes Inteligentes en Sistemas

LOS HABITANTES DE LA WEB SEMÁNTICA:


AGENTES, AGENTES INTELIGENTES Y AGENTES
SEMÁNTICOS
Por Miguel Ángel Abián, martes 8 mayo 2007 a las 05:39 :: Web Semántica :: #38 :: rss
Como sucede con toda nueva rama del conocimiento, existe bastante confusión en cuanto al
vocabulario de las tecnologías semánticas. En este artículo me centro en explicar qué se
entiende por agente, agente inteligente y agente semántico, términos que aparecen casi
siempre que se habla de la Web semántica. A fin de resaltar las semejanzas y diferencias
entre ellos, usaré definiciones y ejemplos.
Si consultamos el diccionario de la Real Academia Española, veremos que agente significa
"Persona que obra con poder de otra". Si actualizamos un poco la definición ("Programa o
máquina que obra con poder de una persona o de otro programa o máquina"), tendremos
una primera idea de lo que se entiende por agente en ingeniería.
En general, se acepta que un agente es cualquier sistema capaz de percibir cambios en su
entorno, de representar de algún modo la información sobre el estado actual de sus
objetivos y de actuar sobre su entorno basándose en éstos y en experiencias pasadas.
Cuando se consideran entornos virtuales (la Web, intranets, etc.), se habla de agentes de
software; en entornos físicos, los agentes pueden ser animales, personas, robots o
autómatas. Por ejemplo, el vehículo Mars Pathfinder –que recorrió la aherrumbrada
superficie de Marte durante varios meses de 1997– era un agente en un entorno físico
bastante agresivo para la vida humana.

En lo que sigue consideraré únicamente agentes de software, no robots ni autómatas. Según


Michael Wooldridge, un agente es un sistema de software capaz de actuar autónoma y
flexiblemente en un entorno cambiante. Para Gerhard Weiss, un agente es una entidad
computacional que percibe y actúa autónomamente en su entorno. Ambas definiciones
coinciden en que los agentes gozan de cierta libertad de actuación en su entorno; es decir,
no se limitan a efectuar ciertas tareas siempre de la misma forma, sino que tienen sus
propias “ideas” sobre cómo alcanzar sus objetivos. Perdóneme el lector o la lectora por
personificar a los agentes: les entristece mucho que los traten como programas o subrutinas.
Según Jeffrey Bradshaw, las principales características de los agentes son éstas (no todas
son obligatorias y algunas pueden darse en mayor o menor grado):
• Persistencia: El código de un agente se ejecuta continuamente, no cuando el
usuario lo decide, y decide por sí mismo cuando deje ejecutar alguna acción. Los
agentes siempre permanecen activos: se ejecutan en un bucle infinito y observan su
entorno, actualizan su estado y determinan qué acciones realizar. Se comportan
como buitres (siempre mirando, siempre esperando a que llegue el turno de actuar),
pero sin sus siniestras intenciones.
• Autonomía: Un agente puede tomar decisiones sin la intervención humana o de
otros agentes. Es decir, para cumplir sus objetivos, un agente controla sus propias
acciones.
• Reactividad: Un agente es capaz de percibir su entorno y mantener un vínculo
constante con él, de modo que puede responder adecuadamente a los cambios. Los
agentes más reactivos tienen en cuenta la posibilidad de que se produzcan fallos o
de que las cosas no vayan como se esperaba.
• Proactividad: Un agente no actúa dirigido solamente por los sucesos que se
producen en su entorno, sino que también toma iniciativas para lograr sus objetivos.
Es decir, los agentes reconocen y utilizan las oportunidades que se les presentan.
Las iniciativas pueden proceder de experiencias pasadas, pues los agentes aprenden
del pasado.
• Habilidad social: Un agente constituye una entidad social integrada en una
sociedad, en la cual hay tareas, recursos y papeles que se distribuyen entre los
agentes. Algunos objetivos sólo se pueden conseguir mediante la colaboración con
otros agentes o con humanos.
Como los agentes son programas, ¿debemos concluir que los programas son también
agentes? Para contestar a la pregunta, consideremos un programa conversor de euros a
francos suizos. El programa funciona así: cada vez que un usuario ejecuta el programa, éste
se conecta por Internet a los mercados de divisas, extrae el tipo de cambio –que fluctúa
constantemente– y lo presenta por pantalla. El programa es, en cierto sentido, consciente de
su entorno porque devuelve una salida (un tipo de cambio) tras recibir una entrada (la
ejecución del programa) y porque se conecta a los mercados de divisas. Sin embargo, no es
un agente: su salida actual no afecta a sus futuras salidas; dicho de otro modo, no tiene
“memoria” de sus actos ni puede aprender de ellos. Además, el programa carece de
persistencia: sólo permanece activo un tiempo muy breve; una vez que devuelve el tipo de
cambio, se vuelve inactivo. Vemos, en definitiva, que no todos los programas son agentes.
Muchas personas piensan que los agentes no son más que objetos con algunas funciones
añadidas; según ellos "un agente es un objeto que… [aquí añaden sus características
favoritas]". Otros van más lejos: afirman que la única diferencia entre ellos radica en que
"agente" es una palabra de moda, como en su día lo fue "objeto". (Si desea saber más sobre
objetos, clases y la programación orientada a objetos, puede consultar
http://www.javahispano.org/tutorials.item.action?id=25 y
http://www.javahispano.org/tutorials.item.action?id=33). Existen ciertas semejanzas entre
objetos y agentes: en primer lugar, se caracterizan por su estado y por su comportamiento;
en segundo, se comunican entre sí mediante mensajes.
Con todo, también hay diferencias entre unos y otros. Primera: los objetos no tienen ningún
control sobre sus acciones, que están determinadas desde su creación; por el contrario, los
agentes las controlan para cumplir sus objetivos. Éstos pueden tener un comportamiento
impredecible. Por ejemplo, si se pide a un agente que compre algún CD barato en alguna
tienda, cualquier resultado es posible: el agente podría volver con Power, Corruption and
Lies de New Order o con un CD de cantos hindúes del siglo V antes de Cristo, o sin nada.
A diferencia de los objetos, los agentes pueden decir "no" (es más, algunos gozan con eso).
Segunda diferencia: los agentes gozan de más autonomía y flexibilidad que los objetos, tan
esclavos ellos. Como las clases definen los métodos y atributos como públicos o privados,
los objetos (instancias de las clases) no pueden cambiar la visibilidad de métodos y
atributos. Si el método dispararFlecha de un objeto arcoOlímpico es público, el objeto no
puede impedir que otros objetos lo usen. Un agente, en cambio, sí podría impedir que otros
agentes usaran su dispararFlecha (volviéndolo privado, p. ej.), siempre que eso favoreciera
sus objetivos.
Tercera diferencia: tal como se mencionó antes, los agentes siempre están activos (vigilan
su entorno, actualizan su estado y determinan qué acciones son apropiadas); los objetos
vienen a ser muertos a tiempo casi completo, porque sólo “viven” (están activos) cuando
sus métodos son llamados por otros objetos.
Cuarta y última diferencia: los objetos jamás se equivocan (en todo caso, se equivocan
quienes los programan), mientras que los agentes puede tomar decisiones equivocadas e
incluso aprender de sus errores pasados. Si un objeto tiene un método calcularIVA que
aplica un porcentaje equivocado (14% en lugar de 16%, verbigracia), el objeto nunca
aprenderá nada de ese error, pues ya nació –mejor dicho, se instanció– con él.
Suele usarse el término agente inteligente para referirse a agentes dotados de cierta
inteligencia artificial y que, por tanto, gozan de un alto grado de autonomía, reactividad,
proactividad y habilidad social. El concepto de inteligencia resulta sumamente escurridizo:
algunos investigadores piensan que las máquinas nunca alcanzarán una inteligencia como la
humana. En apoyo de esta opinión acude este hecho: el sentido común resulta más difícil de
reproducir que cualquier habilidad técnica. Otros investigadores piensan en la inteligencia
como un fenómeno emergente (los fenómenos emergentes son propiedades de un sistema
complejo que no pueden reducirse a las propiedades de sus partes constituyentes). En
consecuencia, piensan que la inteligencia podría alcanzarse, en principio, a partir de partes
constituyentes no biológicas. Para no entrar en discusiones que llevan ocupando a los
filósofos desde hace siglos, empleo el término inteligencia para denotar la capacidad de
adaptarse al medio y de aprender (es decir, descubrir información). Hasta el más escéptico
en cuanto a las posibilidades de la inteligencia artificial coincidirá conmigo en que existen
ya programas que permiten descubrir información mediante asociaciones y búsqueda de
patrones.
Según Barbara Hayes-Roth, los agentes inteligentes realizan continuamente tres funciones:
perciben las condiciones cambiantes del entorno; actúan para modificar las condiciones del
entorno; y razonan para interpretar percepciones, resolver problemas, extraer inferencias y
determinar acciones.
Algunas personas usan agente inteligente como sinónimo de agente, cuando en realidad un
agente no tiene por qué tener "inteligencia" (piénsese en un cliente de correo, p. ej.). Otras
reservan agente inteligente para los agentes que contienen planificaciones, calendarios,
reglas, etc. Se suele emplear el término bot (abreviatura de robot) para los agentes que,
siguiendo reglas estrictas e invariables, realizan tareas repetitivas: buscar productos,
rellenar cuestionarios, mostrar noticias sobre un determinado asunto… Los bots usados por
los buscadores de información –Google, Yahoo, MSN Search– para construir sus bases de
datos se denominan arañas.
Los agentes inteligentes suelen relacionarse con los sistemas expertos. Un sistema experto
es un programa que intenta imitar el comportamiento de un experto en un dominio
concreto. Por ejemplo, un sistema experto en medicina podría, a partir de los síntomas del
enfermo, emitir diagnósticos. Los agentes difieren de los sistemas expertos en dos aspectos
esenciales: primero, éstos no interaccionan con el entorno; segundo, los agentes suelen
desarrollarse con la intención de colaborar con otros agentes, mientras que los sistemas
expertos no colaboran ni intercambian información entre ellos.
Dar una clasificación completa de los agentes es tarea harto compleja; pues cada autor suele
proponer su propia clasificación, a menudo tan discutible como cualquier otra. Los agentes
pueden clasificarse según su movilidad (estáticos, dinámicos), según si son deliberativos
(contienen modelos simbólicos de su entorno y reglas de razonamiento) o reactivos (no
poseen modelos simbólicos de su entorno y, por tanto, actúan siguiendo el esquema
estímulo-respuesta), según las tareas que desempeñan, las características que predominan,
etc. Hyacinth S. Nwana clasifica así los agentes: agentes colaboradores, agentes de interfaz,
agentes móviles, agentes de información, agentes reactivos, agentes híbridos y sistemas
heterogéneos de agentes.
Si consideramos como criterio de clasificación las tareas que desempeñan los agentes,
existen muchos tipos de agentes. Los más conocidos están vinculados al comercio
electrónico: los agentes de compra comparativa se encargan de localizar mercancías al
mejor precio posible; los de subasta permiten a los usuarios pujar por una mercancía o bien;
los de negociación automatizan los procesos de negociación habituales en las transacciones
comerciales. En general, en casi cualquier dominio pueden usarse agentes. Por ejemplo, el
proyecto Guardian (http://ksl-web.stanford.edu/projects/guardian/) desarrolló un agente
inteligente para monitorizar a los pacientes de las unidades de cuidados intensivos. Este
agente permite, entre otras cosas, controlar constantemente el estado de los pacientes,
definir los tratamientos y cuidados necesarios a corto y largo plazo, así como diagnosticar
posibles enfermedades y complicaciones. Debido a lo delicado de su tarea, el agente
reacciona rápidamente a cualquier modificación del estado del paciente.

Los sistemas multiagente son sistemas distribuidos de software formados por un conjunto
de agentes autónomos (nodos) que trabajan juntos para resolver problemas. Asignándose
tareas unos a otros y colaborando, los agentes pueden solucionar problemas que serían
irresolubles para un agente aislado. En un sistema multiagente no hay un control global del
sistema ni un lugar donde esté toda la información. La "inteligencia" de un sistema
multiagente puede obtenerse de dos maneras. En primer lugar, mediante el uso de agentes
inteligentes para el sistema. En segundo lugar, usando agentes reactivos (como expliqué
antes, son aquellos que reaccionan siguiendo el esquema conductista: estímulo-respuesta).
En este caso, la inteligencia colectiva del sistema es un fenómeno emergente.
Las enormes posibilidades de los sistemas multiagente se vislumbran en Robocup Rescue
(puede encontrarlo en http://www.rescuesystem.org/robocuprescue/), un sistema
multiagente que simula la respuesta de los equipos de rescate a cualquier desastre natural
(un terremoto, por ejemplo). La simulación consiste en la reconstrucción fotográfica de un
desastre y, luego, en manejar un conjunto de agentes inteligentes (que hacen el papel de
víctimas, policías, bomberos, etc.) en ese entorno. El objetivo de Robocup Rescue consiste,
por un lado, en reducir al mínimo los daños en el mundo virtual que sufre el desastre; y, por
otro, en sacar de la simulación conclusiones que puedan aplicarse en el mundo real a la
coordinación de equipos de rescate. La complejidad de Robocup Rescue es ingente, por
cuanto maneja situaciones como rescatar personas atrapadas en edificios en ruinas, en
llamas o inundados. RoboCup Rescue es también una competición: los participantes
construyen sus propios agentes y compiten por reducir al mínimo los efectos de los
desastres naturales.
Existen muchas plataformas para crear agentes e interconectarlos: IBM Aglets, ZEUS,
JADE (Java Agent Development Framework), ABLE, MadKit, JATLite (Java Agent
Template Lite), Grasshopper, AgentBuilder, FIPA-OS, Concordia, Gossip, FarGo,
Voyager. Si usted no tiene experiencia en agentes y desea probar alguna plataforma, le
recomiendo empezar con AgentBuilder
(http://www.agentbuilder.com/Documentation/product.html). Es un conjunto integrado de
herramientas que permite desarrollar agentes inteligentes y aplicaciones basadas en ellos,
sin necesidad de programar (la versión PRO permite desarrollar también aplicaciones
multiagente). Recomiendo esta solución comercial porque me parece una de las más
sencillas y rápidas para quien carezca de experiencia en el desarrollo de agentes. JADE y
ABLE son más potentes que AgentBuilder, pero también son más complejas de usar.
ZEUS (http://labs.bt.com/projects/agents/zeus/) es una herramienta para desarrollar
sistemas multiagente. Es una herramienta educativa y no necesita conocimientos de
programación. Tanto las ontologías como los agentes se crean mediante asistentes visuales,
como sucede con AgentBuilder. Al final del proceso de creación de los agentes, ZEUS
genera código fuente escrito en Java. Como Java es un lenguaje multiplataforma (véase, por
ejemplo, http://www.javahispano.org/articles.article.action?id=55), el código compilado
puede ejecutarse en las plataformas más habituales (una plataforma es una combinación de
hardware y software que permite ejecutar aplicaciones; por ejemplo, Microsoft
Windows/Intel x86 es la plataforma más común). En consecuencia, con ZEUS pueden
construirse sistemas multiagente donde un agente "viva" (perdón, resida) en un PC con
Linux, otro en un Macinstosh con Mac OS X, un tercero en una estación de trabajo
UNIX…

Los agentes semánticos son agentes que usan tecnologías de la Web semántica
(RDF/RDFS, OWL, ontologías) para cumplir sus objetivos. Puede obtener una descripción
de tales tecnologías en http://www.javahispano.org/tutorials.item.action?id=55. Debido a
que todavía no existe una Web semántica, no hay agentes semánticos que puedan
aprovechar sus posibilidades. Existen, sin embargo, agentes semánticos que operan sobre
dominios muy específicos (intranets de empresas, por ejemplo); y también hay algunos
agentes semánticos que actúan como buscadores de información o como asistentes
personales. Por ejemplo, el navegador Amblit Navigator
(http://www.amblit.com/products/AmblitNavigator.html) incluye un asistente (Intelligent
Personal Agent) al que se le puede enseñar qué desea el usuario y cuándo lo desea.
Este agente admite preguntas como las siguientes: ¿Cuál es la cotización de Endesa? ¿Qué
tiempo hará en París la próxima semana? ¿Cuál es el número de teléfono de María Senso
Huertas? También se le pueden dar órdenes del tipo "Búscame un mapa de Hannover" o
"Averigua dónde puedo encontrar la película Les 400 coups". Para entender miles de
sentencias en lenguaje natural, el agente semántico de Amblit se apoya en una ontología y
en un software de comprensión del lenguaje natural. Este software "traduce" las preguntas u
ordenes en texto libre a conceptos de la ontología (puede encontrar más información sobre
ontologías en http://www.wshoy.sidar.org/index.php?2005/12/09/30-ontologias-que-son-y-
para-que-sirven).
Para mostrar las posibilidades de los agentes semánticos, considero el siguiente ejemplo:
Heliodoro Gómez ha puesto en marcha una tienda de lámparas en su barrio. Se acerca la
hora de hacer el primer pago fraccionado del IRPF y no sabé qué impreso usar ni cómo
calcular el rendimiento neto empresarial. Preocupado por hacer mal las cosas y recibir
luego una simpática carta de Hacienda, Heliodoro ha decidido usar un agente semántico
para encontrar un asesor contable y fiscal. Para ello, se conecta a la Web semántica y elige
un agente personal que parece fiable.
Escribe en un cuadro de texto "Busco asesor contable y fiscal (cerca de la calle Arboleda,
en Soria). Quiero que sea barato y bueno", y el agente se pone en marcha. Primero obtiene
una lista de todos los asesores que están a menos de dos kilómetros de la calle Arboleda;
luego, para comprobar la calidad de cada uno, investiga si tienen reclamaciones de clientes,
quejas ante los colegios profesionales o denuncias. A continuación, busca los que tienen
tarifas bajas. Finalmente, selecciona a dos asesores y se los propone a Heliodoro.
A éste no le gusta ninguno de los dos. Uno no es todo lo barato que Heliodoro desearía, y el
otro no puede atenderle hasta dentro de dos semanas (está de viaje de novios).
Decepcionado con los resultados, Heliodoro escribe a su agente semántico: "Mira otras
opciones". El agente repite el trabajo que había hecho, pero no encuentra más asesores que
cumplan las condiciones del usuario. Entonces prepara una lista de los asesores cercanos a
la calle Arboleda y de buena reputación, independientemente de que sean caros o baratos;
acto seguido, contacta con los agentes semánticos de esos asesores para intentar negociar
una reducción de las tarifas que aplican. Sólo uno acepta la reducción. Tras una rápida
negociación entre agentes, la reducción se fija en un 20% (con la condición de que el
cliente pagará cada trimestre de asesoría por anticipado y al contado).
El agente muestra a Heliodoro los datos del asesor elegido y la tarifa que ha quedado
establecida. Heliodoro desconfía de la tarifa, porque le parece demasiado barata, y le
pregunta a su agente: ¿Cómo has negociado la tarifa? ¿Cómo sabes que ese asesor es
bueno? El agente, dotado de paciencia infinita, le proporciona pruebas de todo (para saber
más sobre estas pruebas, puede consultar http://www.wshoy.sidar.org/index.php?
2007/01/30/37-la-web-semantica-metadatos-ontologias-logica-y-confianza). Contento por
ahorrarse un dinerillo, Heliodoro cierra su agente personal y se levanta del ordenador.
Mientras se prepara un café, piensa en la Web semántica: "Es buena idea esto de la nueva
Web. ¡Y pensar que hace diez años parecía ciencia-ficción! Hasta me están cayendo
simpáticos los bichos esos, los agentes".
Trackbacks
Ningún trackback.
Los trackbacks para esta entrada están cerrados.
Comentarios
El martes 8 mayo 2007 a 09:51, por Gonzalo :: email :: sitio :: #
Felicidades por tu artículo (y ya van...) como siempre, muy completo y didáctico.
Espero que dentro de no muchos años, haya muchos "Heliodoros" :)
¿Hay ganas y tema para un próximo artículo?
===============================================
==================0

Agentes inteligentes: definicion y tipologia. Los agentes de informacion


Por Pedro Hípola y Benjamín Vargas-Quesada
Resumen: La distribución de las fuentes de información online, especialmente a través del
WWW, lejos de ser el sueño anhelado por todos, se está convirtiendo en una pesadilla en
forma de avalancha de información. Los usuarios inexpertos rara vez consiguen unos
resultados satisfactorios de sus consultas, e incluso los expertos suelen cometer errores a
la hora de utilizar las herramientas de búsqueda. La solución a los problemas de
recuperación, en éste ámbito, puede venir de los agentes inteligentes. El objetivo del
presente artículo es presentar, identificar, definir y clasificar los distintos tipos de agentes
inteligentes, centrándose en aquellos destinados a la recuperación de información.
Palabras clave: Sistemas expertos, Agentes inteligentes, Agentes de información,
Recuperación de información, World Wide Web.
Title: Intelligent agents: definition and categories. Information agents
Abstract: The distribution of online information resources, especially via WWW, far from
being the long awaited dream, is turning into a nightmare in the form of an information
avalanche. Unskilled users rarely obtain satisfactory results when conducting searches,
and even experts tend to commit mistakes when using search tools. The solution to the
problems of information retrieval in this area might be found in intelligent information
agents. The objective of the this article is to identify, define and classify the different types
of intelligent agents, focussing on those used for information retrieval.
Keywords: Expert systems, Intelligent agents, Information agents, Information retrieval,
World Wide Web.
La tecnología para producir, almacenar y distribuir grandes
cantidades de información es ya un hecho. Por ejemplo, en 1994 el número de páginas web
que se podían consultar era aproximadamente 100.000. Dos años más tarde se encontraban
disponibles alrededor de 30.000.000, mientras que hoy día existen 133.796.995 URLs en la
Red (AltaVista [consulta: 02/02/99]). La demanda de información ha experimentado
también un crecimiento espectacular: en 1994 se realizaron 2.000.000 consultas al mes
(McBryan, 1994), en 1996 (AltaVista) se pasó a 10.000.000 búsquedas diarias, mientras que
1998 la media es de 18.300.000 cada día.
Cuando la recuperación en línea de la información daba sus primeros pasos, los usuarios
contaban con un intermediario especialista en realizar búsquedas, a menudo familiarizado
con el área de conocimiento que el usuario demandaba. Por medio de una entrevista el
intermediario determinaba cuáles eran las necesidades de información de cada individuo,
llevaba a cabo las consultas pertinentes y enviaba los resultados. Ahora, sin embargo,
millones de personas realizan sus propias consultas en línea desde su trabajo u hogar.
Pero el hecho de suministrar a los usuarios de la Red la capacidad de buscar no es
suficiente, puesto que incluso los usuarios expertos necesitan ayuda para realizar búsquedas
de forma adecuada.
La tecnología influye en la cantidad y tipo de información disponible, pero debe suministrar
también los medios necesarios para hacer un uso efectivo de ésta. Los investigadores
deberían desarrollar sistemas que permitiesen al usuario final buscar de forma efectiva. Éste
es el objetivo de los agentes inteligentes para la información, independientemente de que se
esté buscando en bases de datos referenciales, a texto completo, en una página web, etc.
Qué es un agente
Podemos definir al agente inteligente como una entidad software que, basándose en su
propio conocimiento, realiza un conjunto de operaciones destinadas a satisfacer las
necesidades de un usuario o de otro programa, bien por iniciativa propia o porque alguno de
éstos se lo requiere.
Todos los agentes inteligentes son programas, pero no todos los programas que realizan
búsquedas son agentes inteligentes. Los agentes en sí mismos pueden ser considerados
como entidades individuales (partes de programa que tienen control sobre sus propias vidas
y movimientos). Continuamente están realizando procesos que les indican qué hacer y
cómo. Se comunican con otros agentes para resolver de forma adecuada su trabajo.

De acuerdo con el punto de vista de la inteligencia artificial


un agente posee las siguientes propiedades: autonomía, sociabilidad, capacidad de reacción,
iniciativa, benevolencia y racionalidad (Wooldridge y Jennings, 1995).
«Un agente inteligente es una entidad software que, basándose en su propio
conocimiento, realiza un conjunto de operaciones para satisfacer las necesidades de un
usuario o de otro programa, bien por iniciativa propia o porque alguno de éstos se lo
requiere»
Últimamente la industria del software, con fines puramente comerciales, nos está
mostrando aplicaciones catalogadas como agentes inteligentes que realmente no lo son.
Éste es el caso del Ayudante de Microsoft Office (Clippo, Dr. Genio, Ridondo, etc.). Si
aplicamos cada una de las propiedades de los agentes inteligentes a este Ayudante veremos
que, como mucho, cumple la característica de la sociabilidad. Por tanto realmente no es lo
que se enuncia, sino un simple programa que en determinados casos emula el
comportamiento de los agentes inteligentes. Esta comparación es una buena forma de
distinguir entre un agente inteligente y un programa convencional.
Agentes inteligentes de información
No es necesario que un agente dedicado a la recuperación de información posea todas las
propiedades que se han citado, pero sí las que a continuación se describen:
Autonomía: actuar sin ningún tipo de intervención humana directa, y tener control sobre sus
propios actos.
Sociabilidad: comunicarse por medio de un lenguaje común con otros agentes, e incluso
con los humanos.
Capacidad de reacción: percibir su entorno, y reaccionar para adaptarse a él.
Iniciativa: emprender las acciones para resolver un problema.
Una vez dicho esto, ya no hablaremos más de agentes inteligentes para la recuperación de
la información, sino que simplemente nos referiremos a ellos como agentes de información.
Están diseñados específicamente para procesar consultas, y poseen al menos uno de los
siguientes elementos: capacidad de proceso, conocimiento del entorno donde se mueven e
información de un dominio.
Un agente tiene capacidad de proceso puesto que puede descomponer una consulta en
subconsultas y asociar a los distintos términos resultantes otros términos relacionados o
afines. Su conocimiento del entorno le viene dado por su propio conocimiento y por el de
otros agentes que se comunican con él (el conocimiento puede ser adquirido: del mismo
usuario o de otros agentes con los que se encuentra mientras realiza una tarea determinada;
y, una vez finalizado su trabajo: de aquellos lugares que ha visitado, así como de las
direcciones de los agentes con los que se ha encontrado). En todo momento debería saber a
qué información acceder o a qué otro agente dirigirse para obtenerla. Un agente puede tener
también acceso a un dominio y/o información de un modelo, si se asocia con la estructura
de éste.

Tipología de agentes y el problema de la distribución de la información


Cualquier objetivo o problema se puede descomponer en subobjetivos o en subproblemas.
Por tanto, cualquier consulta se podrá dividir en subconsultas (o en tantos agentes como
subconsultas tenga la consulta) para encontrar las respuestas adecuadas. Los agentes
pueden dar respuesta a cada uno de estos subproblemas y, una vez combinados entre sí,
ofrecer la respuesta al problema en su conjunto.
Un agente que «sabe» cómo resolver una subconsulta en particular puede tomar la
responsabilidad de responderla. Por ejemplo si la consulta es «perros y gatos», y hay un
agente en cuyo dominio se encuentra una entrada a la base de datos relacionada con
«perros», entonces el agente se ofrecerá para tomar parte en la búsqueda de «perros».
Después los resultados obtenidos por separado de «perros» y «gatos» serán conjuntados,
filtrados, seleccionados y presentados al usuario.
Agentes cooperativos: para que un agente pueda ser autosuficiente y conocedor del
entorno en el que se encuentra, debe coordinarse y cooperar con cada uno de los otros
agentes. Existen varias formas para hacer esto.
En un sistema compartido un agente cualquiera descompone la consulta y asigna las
subconsultas a otros agentes. Cada uno sabe cuáles son las capacidades y limitaciones del
resto. No existe un «agente maestro»; el grupo de agentes recibe las subconsultas, y todos
ellos trabajan por igual para encontrar la solución.
En un sistema contractual los agentes siguen teniendo todos el mismo estatus. Sin
embargo, el agente que recibe la consulta no asigna las subconsultas al grupo de agentes,
sino que las envía a todos ellos para que éstos le indiquen quién puede resolverlas, y de
entre ellos selecciona aquellos cuyo dominio sea más adecuado.
Por el contrario, un sistema federado es una estructura jerárquica de agentes controlada por
un facilitador o agente principal. Los agentes federados se comunican sólo con su agente
principal, el cual conoce las capacidades y limitaciones de cada uno de sus agentes. Una
vez recibida la consulta, el facilitador principal se comunica con el resto de facilitadores
con el fin de seleccionar los agentes locales más adecuados de cada federación para
resolver las subconsultas que permitan resolver la consulta completa (Haverkamp y
Gauch, 1998).
«La solución al problema de la distribución de la información se basa en la idea de que
cualquier objetivo o problema se puede descomponer en subobjetivos o en
subproblemas»
Agentes móviles: es uno de los últimos desarrollos en tecnología de agentes. Se basan en el
principio organizador de redes de comunicación entre ordenadores, conocido como Control
de Procedimientos Remotos (RPC) y concebido en 1976. Cuando un ordenador cliente de
una red (no importa su tamaño) dirige una petición al servidor de ficheros para ejecutar una
aplicación, el cliente debe realizar al menos dos comunicaciones: una solicitando la
ejecución de un programa determinado, y otra informando al servidor que la operación se
ha completado con éxito.
La alternativa a este procedimiento es la Programación Remota (RP), consistente en
acordar por adelantado qué tareas pueden realizar los clientes sin ningún tipo de
verificación ni confirmación por parte de los servidores. De esta forma un cliente enviaría
una instrucción al servidor de ficheros, y una vez allí ejecutará un programa en concreto.
Este procedimiento (remoto) que es una orden realizada por el cliente pero ejecutada en el
servidor (local) recibe el nombre de operación o instrucción móvil, haciendo hincapié en
que se trata de una orden remota que se ejecuta localmente.
Los últimos estudios relacionados con la programación remota se centran en el uso del
lenguaje Java (Arnold y Gosling, 1998).
Un agente móvil puede suspender el proceso que esté realizando, transportarse a sí mismo
por medio de la Red y reanudar la ejecución del proceso que estaba llevando a cabo donde
estime oportuno. Esta capacidad le permite al agente seleccionar la información recuperada
antes de enviarla por la Red, lo que evita la transferencia de grandes cantidades de
información que podría ser inútil.
Un agente puede tener, por ejemplo, las siguientes órdenes: ejecutar en un determinado
servidor de ficheros una base de datos para luego almacenar la consulta bibliográfica que le
ha encargado su usuario. Si por algún motivo la consulta es rechazada, o el lugar en el que
debe realizar dicha consulta ha cambiado de emplazamiento, o simplemente ha
desaparecido, el agente suspenderá la ejecución del programa de base de datos mientras
localiza el URL adecuado, o busca otro que pueda satisfacer sus necesidades. Una vez
solucionado este pequeño problema, repetirá de nuevo la consulta y volverá al servidor de
ficheros para reanudar su tarea donde la dejó.
«Un agente de información necesita un campo de cobertura no muy amplio que le
permita interactuar perfectamente con el medio en que se desarrolla»
El hecho de que un agente pueda deambular por la Red ejecutando procesos según le
parezca, plantea un par de problemas. Uno es que el lenguaje creado para diseñar la
arquitectura de un agente móvil debe ser independiente. Se sugieren lenguajes tales como
Java, Perl (conocido en su primera versión como Practical extraction and report language)
o Kqml (Knowledge, query and manipulation language).
El otro es la seguridad. Imagínese el estado de nervios que puede tener el administrador de
un sistema, sabiendo que en su red puede haber agentes móviles circulando libremente y
ejecutando tareas a su antojo y sin restricciones. Una forma de prevenir esto es utilizar
pasillos de seguridad destinados a soportar y restringir las idas y venidas de los agentes
móviles. En cualquier caso es necesario imponer límite al número de agentes móviles con
permiso para ejecutar tareas dentro de un sistema local.
Un ejemplo bastante ilustrativo (teórico) de este tipo de agentes lo podemos encontrar en:
http://www.genmagic.com/technology/techwhitepaper.html
Independientemente del tipo de cooperación o coordinación que se elija, los agentes deben
poder comunicarse entre sí. Hay dos formas de realizar esta comunicación: directa, como
en el caso de los sistemas compartidos o las redes contractuales, o indirecta, caso de los
sistemas federados.
«Los agentes de información tienden a hacer transparente la complejidad de la
información almacenada en la Red»
La comunicación directa tiene el inconveniente de que representa un alto coste económico
y una mayor complejidad en la implementación. Por ejemplo, en un sistema con 10.000
agentes, cada vez que un elemento del grupo emite un mensaje, éste debe llegar a los 9.999
restantes, con la sobrecarga y gasto de recursos que esto supone. Si estos 10.000 agentes
estuviesen divididos en 100 federaciones de 100 agentes cada una, sólo habría que enviar
999 mensajes (a los facilitadores de cada grupo). Si a esto añadimos que sólo unos pocos
agentes locales de cada federación serán los encargados de recibir los mensajes de sus
facilitadores, podemos deducir que la comunicación se reduce casi en un 90% con respecto
al primer modelo.
Otro procedimiento de comunicación que a menudo utilizan los agentes es el de los
tablones de anuncios. Consiste en una serie de recursos (memoria) que el servidor pone a
disposición del grupo de agentes que soporta, para que éstos puedan comunicarse e
interactuar.
En lugar de que un mensaje se transmita de un agente a otro, éste es colocado en un tablón
de anuncios, el cual es supervisado por todos los agentes encargados de resolver las
subconsultas o de procesarlas. Los resultados de los procesos se colocan en el tablón para
que todos los agentes puedan verlos, hasta que se encuentra la solución a la consulta. Por
establecer una similitud, podríamos decir que esto sería parecido a una habitación con
mucha gente trabajando para resolver el mismo problema, pero donde está prohibido
hablar. Cuando alguien necesita información, o encuentra la solución a una parte del
problema, el/ella lo coloca en el tablón de anuncios para que el resto de las personas lo
pueda ver y decidir si pueden suministrar la información que se pide, o tomar esa solución
parcial del problema para resolver otra parte del mismo, o su totalidad.
Un agente de información necesita una especialización, es decir, requiere un campo de
cobertura no muy amplio que le permita interactuar perfectamente con el medio en que se
desarrolla, y que a su vez le ofrezca la posibilidad de no aumentar su base de conocimiento
hasta límites infinitos, pues de ser así se verá afectado en su capacidad de movimiento y en
el tiempo de respuesta.
Interfaces inteligentes de usuario
Su objetivo es llevar a cabo búsquedas conceptuales más que localizar simples cadenas de
caracteres. Cuando un usuario hace una consulta, la interfaz recoge los términos de ésta
como algo representativo de la materia en la que se está interesado. Posteriormente, y a
partir de su base de conocimiento, realiza una consulta expandida. Es decir, partiendo de
los términos suministrados por el usuario, se añaden otros relacionados con el mismo
concepto, realizando así una consulta mucho más completa que la que en un principio se
pretendía hacer. Por ejemplo la consulta «perro» puede ser expandida a «perro o can o
sabueso».
«Los ShopBots son agentes de compra que se dedican a comparar las características y
precios de los distintos productos que ofrecen las tiendas en línea»
Se han desarrollado algunos sistemas expertos que expanden de forma automática las
consultas de los usuarios con la ayuda de un tesauro o base de conocimiento, en donde se
almacenan las palabras relacionadas. Estos sistemas incorporan estrategias de búsqueda
aprendidas de buscadores humanos expertos, estrategias que a su vez pueden personalizarse
para un dominio en particular como tratamiento del cáncer (Pollitt, 1987), o estudio de la
polución (Smith, 1989), o para cualquier otro dominio, en función de la base de
conocimiento que se utilice (Gauch y Smith, 1993). Un ejemplo de este tipo de agente es
Alexa:
http://www.alexa.com
Agentes de búsqueda inteligentes
En un principio, los sistemas expertos fueron diseñados para ejecutar consultas en una
sola e independiente base de datos. La aparición de internet ha propiciado el surgimiento
de miles de bases de datos almacenadas en diferentes direcciones. Obviamente no tiene
ningún sentido recopilar todas las bases de datos existentes en la Red y almacenarlas en
una única dirección, con los problemas de espacio y coste que esto significaría cada vez
que un usuario decidiese realizar una consulta. Pero tampoco tiene mucho sentido que un
usuario vaya de web en web buscando en cada una de las bases de datos.
La distribución de la información conduce a la necesidad de crear un sistema
descentralizado de recuperación de información, que estará basado en agentes
inteligentes, los cuales podrán localizar, recuperar y almacenar las preguntas en un
«resultado» para un usuario en concreto.
Pero los agentes de información no sólo son útiles para la recuperación de información en
bases de datos. Hoy día han evolucionado y se utilizan para realizar búsquedas de
información textual en artículos de revistas electrónicas o en las páginas web.
Independientemente del tipo de información que se quiera localizar, los agentes de
búsqueda pueden diferenciarse por la entidad o persona para la que trabajan: usuarios y/o
consultas y/o bases de datos. También se pueden distinguir por su forma de interactuar, es
decir, si se relacionan libremente todos los agentes para resolver las consultas, o sólo son
unos pocos agentes los que se relacionan entre sí (mediadores o principales).
«La integración es un problema para los sistemas de agentes de información»
Agentes de consulta: un sistema de agentes orientados a consulta origina uno o más
agentes en respuesta a la pregunta formulada por un usuario. Estos agentes trabajan en
representación del individuo mientras dura la consulta, recogiendo información de todas
las bases de datos disponibles.
Cuando una persona realiza una pregunta, ésta se descompondrá en subconsultas para su
resolución. Si los agentes existentes son incapaces de dar una respuesta en toda su
amplitud, se generan nuevos agentes que buscarán en otras bases de datos. Si aún así la
respuesta no es lo suficientemente amplia, se crearán nuevos agentes hasta poder ofrecer
la respuesta adecuada.
Mata Hari no es sólo un agente de consulta. Es también un agente inteligente de búsqueda
en el WWW y un agente local a la vez. Funcionará de una forma u otra dependiendo de la
utilidad que cada usuario le desee asignar.
http://www.thewebtools.com

«La industria del software, con fines puramente comerciales, nos está presentando
aplicaciones catalogadas como agentes inteligentes que realmente no lo son»
Agentes de bases de datos: en el tipo de arquitectura anterior las bases de datos son
depósitos pasivos de información; por contra, en este sistema pasan a ser agentes activos
que interactúan entre sí. Cada base de datos dispone de un agente que sabe cómo
presentar de forma adecuada las subconsultas a su base de datos, conociendo a su vez el
tipo de información que se almacena en ella. Los agentes de bases de datos están
organizados en un sistema federado, teniendo mucha información de otros agentes que
componen el mismo sistema, pero muy poca de aquellos que están en otras federaciones.
Cuando el agente primario (o facilitador) recibe una consulta, asigna las subconsultas a
aquellos agentes de su propia federación que él sabe que las satisfarán de forma
adecuada. Si alguna subconsulta no puede ser respondida, el agente primario la enviará a
otras federaciones, se comunicará con sus agentes primarios y decidirán a qué agente
encargársela para que la resuelva.
Un ejemplo de este tipo de agente lo podemos encontrar en:
http://www.clientelle.net
Se trata de un gestor de billetes de avión con cobertura mundial.
Agentes de consulta de bases de datos: las bdd y las consultas pueden ambas tener sus
propios agentes con el fin de proporcionar las respuestas más adecuadas al usuario.
Forman una estructura jerárquica en donde los agentes de consulta poseen información de
las materias almacenadas en cada base de datos.
Cuando los agentes de consulta reciben una pregunta por parte del usuario, éstos
determinan qué base o bases de datos contienen esa información y se la entregan a los
agentes primarios de cada una de ellas, siguiendo el método de «lo menos costoso».
Por ejemplo, si una consulta consta de dos términos y hay una base de datos que posee
información sobre uno de ellos, mientras que en otra se recoge información sobre los dos,
los agentes de búsqueda siempre preferirán la segunda, puesto que implica menos trabajo
y por tanto menos costo. Una vez que los agentes de bases de datos han recibido la
consulta, éstos la descompondrán en subconsultas y seleccionarán a los agentes de su
federación para que las resuelvan. Si los términos de búsqueda no se encuentran en la
misma base de datos, distribuirán la consulta en tantas como sea necesario para
resolverla.
http://www.aft.pfc.forestry.ca/Seidam_Documentation/Systems_Guide/DatabaseQueries.ht
ml
En esta dirección se nos ofrece una completa guía de referencia ilustrada sobre el
funcionamiento de Seidam, un agente de consulta para sistemas que dan soporte a SQL
(Structured query language).
Agentes mediadores de consulta de bases de datos: un sistema mediador está basado en el
modelo descrito anteriormente, pero incluye la novedad de contar con un agente mediador
entre el agente de consulta y el de base de datos. El proyecto quizá más relevante de este
tipo es Macron (Multi-agent architecture for cooperative retrieval online), de 1995
(Decker).
«Estos sistemas incorporan estrategias de búsqueda aprendidas de buscadores humanos
expertos»
En este sistema los agentes utilizan información de internet (grupos de trabajo, archivos,
bases de datos de revistas, sitios web, etc.). Su arquitectura es doble. Por una parte cuenta
con una estructura organizacional que usa agentes de razonamiento, agentes de
recuperación en red de bajo nivel y agentes de interfaz de usuario. Por otra parte tiene
una estructura funcional con unidades tipo pregunta/respuesta conformada por agentes
individuales y un facilitador.
La primera arquitectura proporciona el acceso a las fuentes de información (grupos de
trabajo, archivos...), mientras que la segunda se encarga de procesar las preguntas de los
usuarios. En esta estructura el agente gestor de consultas será el encargado de diseñar el
sistema de recuperación de información y de suministrar a los agentes de tipo funcional un
agente facilitador para la correcta resolución de las subconsultas.
Agentes de usuario: los agentes orientados a usuario están asociados a una persona en
concreto. A diferencia de los agentes de consulta, que se generan cada vez que tienen que
realizar una consulta para un individuo, los agentes de usuario siempre están activos,
buscando información y suministrándosela a su creador.
«Un agente de información posee las propiedades: autonomía, sociabilidad, capacidad
de reacción e iniciativa»
Los agentes de consulta son útiles para recuperar información donde las fuentes son
relativamente estáticas y la información que se busca es dinámica. Por el contrario, los
agentes de usuario son más efectivos cuando se trata de recuperar información que es
relativamente constante, pero cuyas fuentes son dinámicas. Los agentes de usuario pueden
ser utilizados para recuperar información de bases de datos, de revistas electrónicas, o
incluso de los mensajes e-mail. Su objetivo es disminuir el trabajo necesario en la
recuperación de la información. En definitiva, hacer la vida de «su propietario» más fácil.
Los agentes de usuario pueden aprender a recuperar información de una forma más
pertinente y relevante mediante realimentación positiva o negativa. Cuando el agente
presenta al usuario los documentos recuperados, éste podrá indicar si está, o no, contento
con un grupo determinado de ellos. También es posible realizar el aprendizaje a través de
algoritmos genéticos, donde el agente no es más que un conjunto de perfiles. En función de
las respuestas, la idoneidad de los perfiles aumentará o disminuirá.
http://microsoftsoft.miningco.com/library/weekly/aa031797.htm
Aquí se puede ver cómo funciona un agente de usuario. Además se ofrece la posibilidad de
obtener una licencia para utilizarlo, tras descargarlo e instalarlo.
Otra posibilidad es utilizar BullsEye, que al igual que el anterior podemos descargarlo e
instalarlo en nuestro equipo. No se trata sólo de un agente, sino que en su conjunto son
múltiples agentes al servicio de un mismo usuario.
http://www.intelliseek.com
Agentes de búsqueda inteligentes para el web
Tienen la capacidad de hacer transparente la complejidad de la información almacenada
en la Red, filtrando la información disponible sobre la materia requerida. Las consultas
pueden ser textuales (productos en concreto, información sobre viajes, etc.) o por las
distintas partes (título, cuerpo...) en que el world wide web se representa hoy día.
Desgraciadamente la investigación sobre los agentes de búsqueda en la Red aún está en
pañales. Lo que a continuación se expone es una serie de aplicaciones cuya cobertura va
desde interfaces generales hasta agentes de compra.
Interfaces web: el usuario puede realizar la consulta en lenguaje natural (alto nivel), pero
el agente de interfaz crea una memoria intermedia entre el usuario y elweb, para
transformar dicha consulta a bajo nivel.
Un ejemplo de agente de interfaz web es Softbot (Etzioni y Weld, 1995). Se diferencia de
anteriores sistemas, destinados a ayudar al usuario en la búsqueda y en la recuperación de
información, en que acepta preguntas de alto nivel por parte del usuario, y es él quien
decide qué procesos de descomposición y consulta realizar para satisfacer adecuadamente
la petición. Gestiona servicios de información estructurada tales como servidores
meteorológicos, de bolsa, e incluso puede monitorizar hechos o acontecimientos y
enviarlos al usuario de forma autónoma. Posee la capacidad de moverse en la Red,
comprimir, cambiar protecciones e incluso almacenar ficheros en formatos distintos y
acceder a bases de datos remotas para obtener información.
«Softbot es altamente autónomo, reactivo y con una gran capacidad de iniciativa»
Se puede decir que Softbot es un gestor de consulta parecido a un gestor de tareas
programadas, un planificador que consigue realizar su trabajo con información
incompleta, un sistema de gestión que almacena todos los conocimientos que va
adquiriendo, y un modelo de dominio de internet con información codificada de las
acciones permitidas en internet. Es altamente autónomo, reactivo y con una gran
capacidad de iniciativa. Sus creadores pronostican que las páginas WWW se convertirán
en entidades totalmente transparentes a las que se accederá por medio de agentes
intermediarios como éste.
Podemos ver las distintas versiones de Softbot que existen actualmente, e incluso
«bajarnos» las que queramos. Sólo hay un pequeño problema: necesitamos un sistema
operativo Unix para hacerlas funcionar:
http://members.xoom.com/alexco9/sftp.htm

Compradores web: la aparición de la compra en línea ha propiciado el crecimiento de los


sitios web que se dedican a la venta. Se necesitaría una gran inversión en tiempo (y en
dinero, al precio que se han puesto las telecomunicaciones) para visitar cada una de las
tiendas en línea y encontrar el mejor precio de un producto concreto. Si un grupo de
agentes pudiese realizar esta tarea, el resultado supondría un ahorro significativo para el
comprador. ShopBot es un agente de compra que se dedica a comparar las características
y precios de los distintos productos que ofrecen las tiendas en línea (Doorenbos, Etzioni y
Weld, 1996).
Actualmente, bajo este concepto se agrupa una gran variedad de agentes de internet
especializados en un determinado tipo de productos. Existe un directorio de los mejores
robots del año (compra, seguimiento de programas, robots de chat...):
http://www.botspot.com/main.html
Los ShopBots utilizan una combinación de búsquedas heurísticas, modelos de coincidencia
y técnicas de aprendizaje inductivo, que les permiten extraer la información de los
vendedores en línea. Posteriormente la compara entre sí y se la presenta al usuario.
«Darpa está trabajando en estándares que permitan la comunicación y la transferencia
de conocimientos entre agentes: Kqml y Kif»
En la fase de aprendizaje, los ShopBots analizan el sitio de cada vendedor para obtener
una descripción de su página. Esta tarea se realiza sólo una vez por tienda en línea, lo que
implica una falta de actualización en caso de que el vendedor modifique o cambie por
completo el formato de su página.

Equipado con una batería de URLs de la página principal de los distintos vendedores, así
como con una descripción de las características que se pueden utilizar para distinguir los
diferentes tipos de productos y sus variantes (nombre, fabricante, precio, etc.), el agente es
capaz de encontrar y determinar los elementos requeridos, mostrándoselos al usuario por
los siguientes criterios para que éste decida: adecuación a la consulta original, presencia
del precio del producto e inclusión de características del mismo en la descripción. En
teoría, el objeto de compra más adecuado será el que aparezca en primer lugar.
ShopBot trabaja sólo con textos en html. Si un vendedor incorpora gráficos o utiliza Java,
no será incluido en su lista de proveedores. Es más, su cobertura está limitada sólo a
aquellos que suministren un índice de sus productos. Se está intentado salvar este
inconveniente para un futuro cercano.
Es posible obtener una copia de Shopbot, así como herramientas de todo tipo para
personalizarlo (en función de los productos que deseemos adquirir y de los proveedores
disponibles), así como los requerimientos hardware y software necesarios para que
nuestro agente de compra funcione perfectamente.
http://www.shopbottools.com/faq.htm
Conclusión
La aparición de una serie de agentes que puedan consultar y recuperar la información por
nosotros es atractiva a la vez que sorprendente. Sin embargo, el sistema de trabajo de
estos agentes, unido a su reducida cobertura, hacen imposible que, hoy por hoy, puedan
ocuparse de un área tan extensa como es internet.
La integración es un problema para los sistemas de agentes de información. ¿Cómo crear
y mantener un agente en cada una de las bases de datos de la Red? ¿Cómo utilizar agentes
personalizados para cada usuario y asegurar una buena intercomunicación entre ellos?
Las respuestas a estas preguntas parecen, de momento, insalvables mientras los webs
continúen realizándose en html y sigan manteniendo su actual estructura de información.
«Es necesario abandonar el poco operativo, aunque fácil, lenguaje html para la
construcción de páginas web y adoptar xml»
En la situación actual, un agente autónomo de información deberá estar saltando
constantemente de página en página para satisfacer la consulta que se le ha encargado,
pues le resultará imposible comunicarse con otros agentes que se pueda encontrar en la
Red. Igual ocurrirá con un multiagente de consulta si no consigue dar una respuesta con la
información contenida en su dominio, pues deberá generar agentes que vayan de web en
web hasta que se pueda responder a dicha consulta.
Darpa (Defense Advanced Research Project Agency) está trabajando en una serie de
estándares que permitan la comunicación y la transferencia de conocimientos entre
agentes: Kqml, que hace posible la comunicación entre agentes, y Kif (Knowledge
interchange format), que permite el intercambio de conocimiento en distintos tipos de
formato. El objetivo de estos proyectos es dar respuesta a las preguntas anteriormente
expuestas, pero para poder conseguir una verdadera solución es necesario además
abandonar el poco operativo, aunque fácil lenguaje html, para la construcción de páginas
web y adoptar xml.
El desarrollo de los agentes para la recuperación de la información es muy deseable. No
sólo por el hecho de que exista demasiada información disponible en la Red para una
persona que desee realizar una consulta, sino porque es mucho más fácil encargar ésta a
un agente y dejar que él realice el trabajo por nosotros, a la vez que nos evita la pérdida
de tiempo y el tedio de ir pasando de conexión en conexión.
Bibliografía
4th ACM Conference on intelligent user interfaces. 1998.
http://www.afit.af.mil/workshops/iui.html
Agent-based information retrieval. 1998.
http://www.cs.umbc.edu/abir/#metadata
Bargainbot, 1998.
http://www.ece.curtin.edu.au/~saounb/bargainbot
Internet.com LLC. 1998.
http://www.botspot.com/main.html
Bradley, Phil. «Intelligent agents on the web». En: Managing information, 1999, n. 6, pp.
35-41.
Coult, Graham. «Intelligent agents». En: Managing information, 1999, n. 6, pp. 33-34.
Decker, K. [et al.]. «Macron: an architecture for multi-agent cooperative information
gathering». En: Proceedings of the Cikm workshop on intelligent information agents.
Baltimore, 1995.
Doorembos, B.; Etzioni, O. y Weld, D. A scalable comparison-shopping agent for the
world wide web. Washington, 1996.
Etzioni, O.; Weld, D. Intelligent agent on the internet: fact, fiction and forecast. 1995.
Finin, Tim [et al.]. Kqml - A language and protocol for knowledge and information
exchange.
http://www.cs.umbc.edu/kqml/papers/kbkshtml/kbks.html
Foner, Lenny. What’s an agent?
http://foner.www.media.mit.edu/people/foner/agents.html
Foner, Lenny. What’s an agent, anyway?
http://foner.www.media.mit.edu/people/foner/Julia/Julia.html
Foundation for Intelligent Physical Agents. Agent definition
http://drogo.cselt.stet.it/fipa/fipa_rationale.htm
Franklin, Stan y Graesser, Art. Introduction to agent concepts
http://www.agent-software.com.au/agents.html
Franklin, Stan y Graesser, Art. Is it an agent, or just a program?
http://www.msci.memphis.edu/~franklin/AgentProg.html
Gadomski, Adam Maria. Agents and intelligence.
http://wwwerg.casaccia.enea.it/ing/tispi/gadomski/gad-agen.html
Gauch, S. y Smith, J. B. «An expert system for information retrieval». En: Journal of the
American Society for Information Science, 1993, n. 44, pp. 124-136.
Gnsi Inc. Clientelle. 1998.
http://www.clientelle.net
Haverkamp, Donna S. y Gauch, Susan. «Intelligent information agents: review and
challenges for distributed information sources». En: Journal of the American Society for
Information Science, 1998, n. 49, pp. 304-310.
Hebrew University. What is an agent? 1999.
http://www.cs.huji.ac.il/labs/dai/wkshp/defag.html
Knoblock, C. y Arens Y. Hsu, C. N. «Cooperating agents for information retrieval». En:
Proceedings of the Second International Conference on Cooperative Information Retrieval,
1994.
Lanier, Jaron. Agents of alienation
http://www.well.com/user/jaron/agentalien.html
Laskari, Yezdi; Metral, Max y Maes, Pattie. Collaborative interface agents.
http://agents.www.media.mit.edu/groups/agents/publications/aaai-ymp/aaai.html
Maes, Pattie. Agents that reduce work and information overload.
http://pattie.www.media.mit.edu/people/pattie/CACM-94/CACM-94.p1.html
Maes, Pattie. Long tutorial notes on software agents.
http://pattie.www.media.mit.edu/people/pattie/CHI97
Mark, C. Software agents, what are they?
http://www.geocities.com/ResearchTriangle/Thinktank/4633/Agents_definition.html
Microsoft Corporation. Microsoft agents. 1999.
http://microsoftsoft.miningco.com/library/weekly/aa031797.htm
Miller, Damien. Three types of intelligent agents, their uses, and their future. 1998.
http://www.netscapeworld.com/netscapeworld/nw-11-1996/nw-11-agents.html
Mobile agents: white paper at general magic. 1998.
http://www.genmagic.com/technology/techwhitepaper.html
Petrie, Charles. Agent-based engineering, the web, and intelligence.
http://cdr.stanford.edu/NextLink/Expert.html
Pollitt, A. S. «Cansearch: an expert system approach to document retrieval». En:
Information Processing and Management, 1987, v. 23, n. 2, pp. 119-136.
Research on Mobile Computing at Purdue. 1998.
http://www.cs.purdue.edu/research/cse/mobile
Seidam Documentation. Seidam. 1998.
http://www.aft.pfc.forestry.ca/Seidam_Documentation/Systems_Guide/DatabaseQueries.ht
ml
Smith, P. J. [et al.]. «Knowledge based search tactics for an intelligent intermediary
system». En: ACM Transactions of Information Systems, 1996, v. 7, n. 3, pp. 246-270.
Stone, P. y Veloso, M. Why multiagent systems? 1996.
http://www.cs.cmu.edu/afs/cs/usr/pstone/public/papers/96ieee-survey/node5.html
Wooldridge, M. y Jennings, N. R. Intelligent agents: theory and practice.
http://pattie.www.media.mit.edu/people/pattie/CHI97/sld001.htm

Pedro Hípola
Benjamín Vargas-Quesada
Universidad de Granada, Departamento de Biblioteconomía y Documentación. Campus
universitario Cartuja. 18071 Granada.
phipola@ugr.es
bvargas@platon.ugr.es
Enlace del artículo:
http://www.elprofesionaldelainformacion.com/contenidos/1999/abril/agentes_inteligentes_definicion_y_tipologia_los_agentes_de_informacion.html

======================================

Agente inteligente (inteligencia artificial)


De Wikipedia, la enciclopedia libre

Saltar a navegación, búsqueda

Agente Inteligente Simple.

Un agente inteligente, es una entidad capaz de percibir su entorno, procesar tales


percepciones y responder o actuar en su entorno de manera racional, es decir, de manera
correcta y tendiendo a maximizar un resultado esperado.
En este contexto la racionalidad es la característica que posee una elección de ser correcta,
más específicamente, de tender a maximizar un resultado esperado. Este concepto de
racionalidad es más general y por ello más adecuado que inteligencia (la cual sugiere
entendimiento) para describir el comportamiento de los agentes inteligentes. Por este
motivo es mayor el consenso en llamarlos agentes racionales.
Un agente inteligente puede ser una entidad física o virtual. Si bien el término agente
racional se refiere a agentes artificiales en el campo de la Inteligencia Artificial, también
puede considerarse agentes racionales a los animales incluido el hombre.
Los agentes inteligentes se describen esquemáticamente como un sistema funcional
abstracto. Por esta razón, los agentes inteligentes son a veces llamado Agentes Inteligentes
Abstractos (AIA) para distinguirlos de sus implementaciones del mundo real como sistemas
informáticos, los sistemas biológicos, o de organizaciones. Algunas definiciones de agentes
inteligentes hacen énfasis en su autonomía por lo que prefieren el término agente
inteligente autónomo. Y otros (en particular, Russell y Norvig (2003)) considera conducta
dirigida a objetivos como la esencia de lo inteligente y prefieren un término tomado de la
economía "Agente Racional".
En Ciencias de la Computación el término agente inteligente puede ser usado para referirse
a un agente de software que tiene algo de inteligencia, independientemente de si no es un
agente racional por definición de Russell y Norvig. Por ejemplo, programas autónomos
utilizados para asistencia de un operador o de minería de datos (a veces denominado robots)
son también llamados "agentes inteligentes".

Contenido
[ocultar]
• 1 Definiciones sobre Agentes Inteligentes
• 2 Ejemplos
• 3 Clasificación
• 4 La racionalidad es necesaria
• 5 La conducta de un agente no suele ser la
óptima
• 6 Véase también

[editar] Definiciones sobre Agentes Inteligentes


Los agentes inteligentes se han definido de diferentes maneras. [2] Según Nikola Kasabov
[3] los sistemas de IA deben exhibir las siguientes características:
• Aprender nuevos problemas e incrementar normas de solución.
• Capacidad de adaptación en línea y en tiempo real.
• Ser capaz de analizar condiciones en términos de comportamiento, el
error y el éxito.
• Aprender y mejorar a través de la interacción con el medio ambiente
(realización).
• Aprender rápidamente de grandes cantidades de datos.
• Deben estas basados en memoria de almacenamiento masivo y la
recuperación de dicha capacidad.

[editar] Ejemplos
Como ejemplos de entidades físicas pueden nombrarse:
• un robot de comportamiento variable autoregulado (ya sea que su
comportamiento sea determinado por software o incorporado
directamente en la electrónica),
• una computadora que ejecuta un software de diagnóstico médico y
muestra resultados en una pantalla para ayudar a decidir a un médico,
• una computadora especializada que controla un helicóptero en
maniobras peligrosas para un hombre.
Ejemplos de entidad puramente virtual serían:
• un software de descubrimiento de patrones en Internet que sólo
interactúa con otros software.
• un software softbot que simula a una persona en un juego de
computadora, tal como un jugador de ajedrez, un jugador de fútbol
contrincante o un conductor de carreras de automóviles, etc.

[editar] Clasificación
Es posible clasificar los agentes inteligentes en 5 categorías principales:
1. agentes reactivos
2. agentes reactivos basados en modelo
3. agentes basados en objetivos
4. agentes basados en utilidad
5. agentes que aprenden
6. agentes de consultas

[editar] La racionalidad es necesaria


En muchos textos se define agente inteligente como todo agente capaz de tener conciencia
de su entorno y actuar sobre él. No obstante es necesario exigir que estas decisiones sean
racionales en el sentido de que persigan algún fin.
Vamos a mostrarlo con un contraejemplo: cuando un fotón con la suficiente energía incide
sobre un átomo, puede arrancar de él un electrón. Podríamos considerar al átomo
inteligente puesto que percibe su entorno (la incidencia del fotón) y actúa sobre su entorno
(emite un electrón). La ausencia de relación entre la emisión del electrón y cualquier
hipotético interés del átomo muestra que este no es un agente inteligente pese a verificar la
definición de Bertrand Russell.
Sin ese término no tendría sentido la palabra racionalidad.
[editar] La conducta de un agente no suele ser la óptima
Paradójicamente, la conducta de un agente rara vez es la óptima. La razón es muy sencilla
calcular el óptimo de un criterio lo suficientemente bueno para ser considerado razonable
teniendo en cuenta las múltiples restricciones que concurren es muy difícil. Ejemplos de
ello es lo difícil que es calcular la mejor ala para un avión, el mejor perfil para un coche o
la mejor hélice para un barco. Para un estudiante es fácil calcular el máximo de un
polinomio de segundo grado derivando e igualando a cero. En este caso el criterio es muy
sencillo -es un polinomio de segundo grado- y no concurre ninguna restricción.
Cuando el criterio es una función real de muchas variables y las restricciones también, los
cálculos son mucho más complicados. Algunas veces se puede lograr una buena
aproximación; pero, si un agente inteligente debe tomar una decisión en muy poco tiempo,
deberá conformarse con la mejor aproximación que pueda calcular en el escaso tiempo de
que dispone.
Por otra parte, no es tan fácil inducir el criterio que permite comparar las distintas
estrategias: ¿cómo se puede expresar con una ecuación simple lo que más le conviene a un
lagarto que está cazando bajo el sol?
[editar] Véase también
=========================================

Tutorial de MATLAB
Resumen: ¿Qué es MATLAB?. Toolboxes de MATLAB. Inicio de MATLAB. ¿Cómo funciona
MATLAB?. Gráficas en tres dimensiones. Otros comandos. Como hacer un programa en MATLAB.
Análisis de datos. Polinomios.

Publicación enviada por Ender José López Méndez


Índice
1. ¿Qué es MATLAB?
2. Toolboxes de MATLAB
3. Inicio de MATLAB
4. ¿Cómo funciona MATLAB?
5. Gráficas en tres dimensiones.
6. Otros comandos
25
7. Como hacer un programa en $
MATLAB Gr
Bo
ati
no
8. Análisis de datos. s
24
9. Polinomios Tit
Bo
00
an
no
€/$
10. Bibliografía Ca
30
Eur
¿Qué es MATLAB? sin
00
op
Bo
MATLAB = 'MATrix LABoratory' o
€/$
a
no
(LABORATORIO DE MATRICES). Ca
Ca
40
MATLAB es un medio computacional sin
sin
0
técnico, con un gran desempeño para el Bo
o
o
€/$
cálculonumérico computacional y de no
Tro
Ca
Bo
30
pe
visualización. sin
no
0
zo
MATLAB integra análisis numérico,
30
€/$
Bo
matrices, procesamiento de señales y Sw
0
Ca
no
gráficas,todo esto en un ambiente donde los iss
€/$
sin
25
problemas y soluciones son expresados
Pri
o
00
talcomo se escriben matemáticamente. Bo
me
Kin
€/$
Escrito inicialmente como auxiliar en la no
Ca
g
Gol
programación de cálculo conmatrices. 40
sin
de
Bo
MATLAB fue escrito originalmente en 00
o
n
no
fortran, actualmente está escrito enlenguaje €/$
C. Riv
50
La
MATLAB es un lenguaje de programación ier
0
s
Bo
amigable al usuario con característicasmás a
€/$
Ve
no
avanzadas y mucho más fáciles de usar que Par
ga
20
los lenguajes de programacióncomo basic, ty
s
0
pascal o C. Ca
€/$
Actualmente van en la versión 5.2. sin
Lu
MATLAB cuenta con paquetes de funciones o
cky
especializadas llamadas toolboxes. Ac
e
Toolboxes de MATLAB
Control system Toolbox, Robust Control
Toolbox
Frequency Domain System Identification
Toolbox
Fuzzy Logic Toolbox
Higher Order Spectral Analisys Toolbox
Image Processing Toolbox
Model Predective Control Toolbox
Mu Analisis and Synthesis Toolbox
NAG Foundation Toolbox
Neural Network Toolbox
Nonlinear Control Design Toolbox
Optimization Toolbox
Quantitative Feedback Theory Toolbox
Signal Processing Toolbox
SIMULINK, SIMULINK Real Time Workshop
Spline Toolbox
Statistics Toolbox
Symbolic Math Toolbox
System Identification Toolbox.
Inicio de MATLAB
MATLAB se inicia directamente desde Windows.
Al invocarse MATLAB aparecerá la pantalla de comandos,algunas sugerencias y el símbolo >> , el
cual indica la entrada deinstrucciones para ser evaluadas.
>>
>> Comando o instrucción a evaluar < enter >
Para hacer la suma de dos números, escribimos :
>> 5 + 5 < enter > Presionamos la tecla entrar.
ans =
10
El resultado es desplegado y se guarda en la variable ans (answer).
NOTA : En este tutorial el símbolo >> desaparecerá, y seráreemplazado por un par de corchetes
con la instrucción dentro de ellos. [ 5 + 5]. La instrucción aparecerá en color verde.
Para poder ver ejecutarse la instrucción, debemos ponernos en el renglóndonde está la instrucción
o marcarla con el ratón y presionar al mismo tiempolas teclas.
<Ctrl> <Enter>
Otra forma de evaluar una instrucción, es poner el apuntador del ratónentre los corchetes de la
instrucción y presionar el botón derecho del ratón;aparecerá un menú del cual se tiene que escoger
evaluar celda.
Hagamos la prueba con el renglón inmediato.
5 + 5 Presionar<Ctrl> <Enter>
La respuesta es desplegada en color azul y entre corchetes.
Help
El comando help proporciona una lista de todos los tópicos que MATLAB puedeproporcionar
ayuda.
help
help 'comando' proporciona ayuda sobre el comando especificado.
help sqrt
proporciona ayuda sobre la instrucción sqrt. Ejemplo:
» help sqrt
SQRT Square root.
SQRT(X) is the square root of the elements of X. Complex
results are produced if X is not positive.
See also SQRTM
¿Cómo funciona MATLAB?
MATLAB puede almacenar información en variables tales como :
a = 100 "<Ctrl> <ENTER> para evaluar la celda "
Cada vez que capturamos información en MATLAB y presionamos <ENTER> éstaes desplegada
inmediatamente ( letras en color azul ), pero si ponemos un puntoy coma al final de la instrucción
MATLAB omite el desplegado de información.
Por ejemplo :
b = 50 ;
Si se quiere saber el valor de alguna variable capturada sólo se tiene queponer el nombre de la
variable y <ENTER> y MATLAB lo despliega. Estasvariables residen en el espacio de trabajo de
MATLAB.
b
Las variables son sensibles a las mayúsculas, por lo que las siguientesvariables son diferentes :
Variable = 1
variable = 1
Las variables pueden contener hasta 19 caracteres. Éstas deben empezar conuna letra, seguida
por cualquier número de letras, dígitos o guiones desubrayado.
Los caracteres de puntuación no son permitidos en las variables.
Cuando se trabaja con muchas variables estas son difícil de recodar.
El comando who muestra un desplegado de todas aquellas variables que se hanestado utilizando.
who
whos Muestralas variables con información adicional.
Caracteres especiales
[ ] Son usados para formar vectores y matrices [ 1 2 3 ; 4 5 6 ]
( ) Usados para expresiones matemáticas. sqrt(2)
= Usado para hacer asignaciones. x = 5
' Transpuesta de una matriz A'
Usado para separar texto 'texto'
. Punto decimal 3.1415
... Al final de una línea indican que continua 2,3,4,5,6 ....
en el siguiente renglón. 7,8,9,10 ]
, Para separar elementos [1,2,3,4]
; Para separar filas en las matrices. [ 1 2; 3 4]
Para evitar que se despliegue la información capturada. [3] ;
% Para hacer comentarios % este programa,etc.
! Para ejecutar un comando del Ms-dos !dir
Operaciones básicas
SUMA
C=a+b
RESTA
d=a-b
MULTIPLICACION
e=a*b
DIVISION
F=a/b
F=a\b
POTENCIA
a^2
Como este último cálculo no tenía variable asignada, la respuesta seguarda en la variable ans
(answer ).
Borrado de variables.
Para borrar el valor de una variable simplemente ponemos
clear a Borrala variable " a "
a Checar queeste borrada.
clear a b c Borralas variables " a ", " b " y " c "
" CLEAR " Borra todas las variables y no se pueden recuperar.
Funciones trigonométricas
sin ( 0.5) Senode (0.5)
Así mismo
COS ( X ) TAN ( X )
ASIN ( X ) ACOS ( X ) ATAN ( X ) Inversa
SINH ( X ) COSH ( X ) TANH ( X ) Hiperbólica
ASINH ( X ) ACOSH ( X ) ATANH ( X ) Inversa- Hiperbólica
ATAN2 ( X,Y ) Inversa de la tangente en los cuatro cuadrantes.
LOGARITMOS
log (0.5) Logaritmonatural
LOG10 ( X ) Logaritmo decimal.
Funciones matemáticas especiales.
abs ( -3) Valorabsoluto o magnitud de un número complejo
ceil ( 123.123123) Redondeahacia más infinito
FLOOR ( X ) Redondea hacia menos infinito
FIX ( X ) Redondea hacia cero
ROUND ( X ) Redondea hacia el entero más próximo
imag ( 30 - 5j ) Parte imaginaria deun número complejo
REAL ( X ) Parte real de un número complejo
ANGLE ( X ) Angulo de un número complejo
CONJ ( X ) Complejo conjugado
sign ( -5) Funciónsigno : Devuelve el signo del argumento
(1 si es positivo, -1 si es negativo )

exp ( 1 ) Exponencial: e( x )
REM ( X,Y ) Resto después de la división ( x / y)
sqrt (2) Raízcuadrada
Operaciones Lógicas
En MATLAB se pueden hacer operaciones lógicas, por ejemplo.
1<2
Como 1 es menor que 2, la respuesta es cierta por lo que obtenemos un 1.
1<1
Obtenemos un 0, porque 1 no es menor que 1.
Como se puede observar las únicas respuestas posibles con las operaciones lógicasson :
Cierto = 1 y Falso = 0.
Operadores relaciónales :
> Mayor que
< Menor que
>= Mayor o igual a
<= Menor o igual a
== Igual a
~= No igual a
Existen tres operadores lógicos : AND &
OR |
NOT ~
Para que la operación AND sea verdadera las dos relaciones deben serverdaderas.
Recordemos AND = 0 0 | 0 Falso
0 1 | 0 Falso
1 0 | 0 Falso
1 1 | 1 Verdadero
( 1 < 2 ) & ( 2 < 3) Verdadero.
( 1 < 2) & ( 2 < 1 ) Falso.
Para la operación OR : 0 0 | 0
01|1
10|1
11|1
( 1 < 2 ) | ( 2 < 1 ) Verdadero.
Para la operación NOT : ~ 0 | 1
~1|0
~ ( 2 < 1) Verdadero.
La variable NaN (Not a Number)
Cuando en un lenguaje de programación como basic, pascal o C, se da unasituación que el
programa no pueda manejar, como una división como 0/0 elprograma se detiene, marcando un
error.
Cuando en MATLAB se presenta una situación similar el programa no sedetiene, sólo da una
pequeña advertencia de que se presentó una divisiónentre cero. Y el resultado es un NaN, que es
una variable interna no es un número).
0/ 0
Ejemplo: defina a=[1 2 0] y b=[1 2 0] ahora pida la división elemento aelemento (comando "./")
a ./ b
Solución de ecuaciones de segundo grado.
MATLAB se puede resolver fácilmente ecuaciones del tipo ax²+ bx + c = 0, haciéndolo como si
fuera una sola instrucción. La förmula pararesolver una ecuación de segundo grado de este tipo
es :

Si tenemos los siguientes valores :


a = 1, b = 2, c = 3
Escribimos la formula para x1 :
x1 = ( -b + sqrt ( b ^ 2 - 4 * a * c )) / 2 * a
Para x2 :
x2 = ( -b - sqrt ( b ^ 2 - 4 * a * c )) / 2 * a
Podemos hacer la comprobación para x1.
a * x1^ 2 + b * x1 + c Comprobaciónx1
Arreglos (Arrays) ó Vectores.
Si se desea calcular el seno de " 0 a 1 " con incrementos de 0.25,se pueden capturar los valores y
después mandar llamar el seno de la función.
Seno de 0 a 1 con incrementos de 0.25
x = [ 0, 0.25, 0.5, 0.75, 1 ]
Se pueden omitir las comas cuando se capturan los números.
Con los números capturados, se obtiene el seno de la variable x escribiendosimplemente :
sin (x)
MATLAB opera en radianes, donde 2P= 360 grados.
Ahora se requiere obtener el coseno de cero a uno con incrementos de 0.01; loque equivale a
capturar 101 elementos.
Para evitar capturarlos a mano, MATLAB nos permite crear un vector de lasiguiente manera :
Variable = ( Valor inicial : Con incrementos de : Valor final )
R = (0 : 0.01 : 1)
COS ( R ) Ahora se puede obtener el coseno de la variable R.
Hagamos el siguiente vector :
Y = ( 0 : 1 : 10)
Si queremos saber cual es el cuarto elemento del vector ponemos :
Y (4)
Si nos interesan los elementos 5 al 10 :
Y( 5 : 10 )
Otras opciones son :
Y( 1 : 2 : 9) Tomalos elementos del 1 al 9 con incrementos de 2
Y([ 1, 3, 7,10]) Tomalos elementos 1, 3, 7 y 10 del array
Modificaciones de los arreglos
Si el noveno elemento del array debió ser el número 20 en vez de 8,corregimos de la siguiente
manera :
Y(9) = 20
Otra forma de hacer arreglos, es con linspace :
Linspace ( Valor inicial , Valor final , Número de elementos )
Regresando al ejemplo del coseno de 0 a 1 con incremento de 0.01 escribimos :
Note el uso de comas (#, #, #)
Z = linspace(0 , 10, 101)
Linspace describe una relación lineal de espaciado entre sus elementos.
Logspace describe una relación de espaciado " logarítmica ".
Logspace ( Primer exponente , Último exponente , Cantidad de valores )
Logspace (0 , 2 , 10 )
Hemos creamos un arreglo que comienza en 10 0 y termina en 10 2,conteniendo 10 valores.
Otra forma de crear arreglos es :
x1 = 1 : 5 Arreglode 1 a 5, con incremento de 1
x2 = 10 : 5 : 100 Arreglode 10 a 100, con incrementos de 5.
Si se quiere concatenar x1 y x2
C = [ x1 x2 ]
Matemáticas con arreglos.
a = 1 : 6 Defineun vector de seis elementos con incrementos de 1
b = 1 : 2 : 12 Vectorde seis elementos con incremento de 2
Arreglos con escalares
Se le puede sumar o multiplicar un número a todo el arreglo, por ejemplo
a + 10 Suma deun escalar con un arreglo
a * 10 Multiplicaciónde un escalar con un arreglo
Operaciones con arreglos
Para hacer la suma de los arreglos a y b, solamente escribimos :
a + b Larespuesta se guarda en ans :
Se pueden hacer operaciones como :
Z = 100 - 2 * a + b
La multiplicación de arreglos se hace con ( . * ), ya que cuando se utilizael asterisco sin punto
indica multiplicación matricial, y además provoca unerror.
Z = a .* b
La división también lleva un punto antes del signo, porque sino se utilizael punto nos referimos a la
división matricial que es muy diferente.
Z = a ./ b
La siguiente operación obtiene el cuadrado del arreglo " a ".
Z = a .^ 2
Orientación de arreglos
Si separamos cada elemento del arreglo con punto y coma tenemos un arreglo deuna sola
columna :
a = [ 1; 2; 3; 4; 5; 6 ]
Es necesario usar los corchetes, porque si no los usamos obtenemos el últimovalor que
capturamos :
d = 1 ; 2; 30 ; 40 ; 50 ; 600 ; 1000
Para crear una columna con 20 elementos hacemos lo siguiente :
d = ( 1 : 1 : 20 )
y trasponemos el renglón a columna, es decir buscamos la transpuesta. ( ' )
e = d'
¿ Que pasa si hacemos lo siguiente : ?
e'
Matrices
Se utiliza el punto y coma ( ; ) hacer una matriz.
Para formar la matriz 1 2 3
321
213
Escribimos :
A = [ 1 2 3; 3 2 1; 2 1 3 ]
Ecuaciones Simultáneas
Con MATLAB se pueden resolver sistemas de ecuaciones simultáneas fácilmente.
Por ejemplo para resolver el siguiente sistema de ecuaciones.
2x + 0y + 5z = 100
3x + 5y + 9z = 251
1x + 5y + 7z = 301
Capturamos los valores de x, y, z ; formando una matriz.
A = [ 2 0 5; 3 5 9; 1 5 7]
Después capturamos el valor al cual están igualadas las ecuacionesen otra matriz.
b = [ 100 ; 251; 301 ]
Una forma de solucionar las ecuaciones es obteniendo el inverso de la matriz,es decir : A -1
( menos uno )
El asterisco indica multiplicación matricial.
c = inv (A)* b
Otra forma de resolverlo, es utilizando la división matricial.
c=A\b
Es también posible obtener la determinante de una matriz.
det ( A )
Operaciones con Matrices
Definamos las siguientes matrices ' g ' y ' h '.
g = [ 1 2 3; 4 5 6; 7 8 9]
h = [ 1 0 2 ; 11 2 3 ; 3 5 12 ]
La suma de las matrices g y h se muestra enseguida :
k=g+h
k = g * h Multiplicaciónde dos matrices.
[L, U ] = lu (k) Calculala factorización LU de la matriz cuadrada k
[d,e]= qr (k) Calculala factorización QR de la matriz k.
Calcula la descomposición en valores singulares de la matriz k.
rank(k) Devuelveel rango de la matriz k.
cond(k) Devuelveel número de condición de la matriz k.
Modificación de las matrices.
A = [ 1 2 3; 4 5 7; 7 8 9 ]
Si nos equivocamos al capturar la matriz, por ejemplo si el número 7 delsegundo renglón, tercer
columna debió ser 6 en vez de 7, tendríamos quecapturar de nuevo la matriz.
Pero con MATLAB es posible modificarla de la siguiente manera :
A(2,3)= 6 Variable( renglón, columna)= nuevo valor
Si tenemos la matriz identidad de 4 x 4 :
1000
0100
0010
0001
A = [ 1 0 0 0; 0 1 0 0; 0 0 1 0; 0 0 0 1]
Pero por algún error la matriz identidad debió de haber sido de 5 x 5.
¿ Hay que capturar de nuevo la matriz ?. La respuesta es no.
A(5,5) = 1
Agregamos un 1 en el renglón 5 columna 5, y como este no existíanpreviamente, las columnas y
renglones se completan agregando ceros.
¿ Que pasa ahora si queremos sólo una matriz identidad de 3 x 3 y tenemoscapturada una de 5 x
5.
Podemos utilizar :
Matriz ("Renglón" inicio : Fin , "Columna" inicio : Fin)
B = A ( 1 : 3, 1: 3)
Ahora si queremos que la matriz identidad sea : 0 0 1
010
100
C = B ( 3 : -1 : 1 , 1 : 3 )
Poner dos puntos ( : ) indica que se deben tomar todas las columnas
(1 : 5). Esto es valido también para los renglones.
C=A(:,[135])
Toma todos los renglones, pero sólo toma las columnas 1, 3 y 5.
Si creamos las siguientes matrices A y B :
A = [ 1 2 3 4 5; 1 2 3 4 5; 1 2 3 4 5; 1 2 3 4 5 ]
B = [ 6 7 8; 6 7 8; 6 7 8; 6 7 8 ]
Podemos construir una matriz C uniendo las dos anteriores
c=[AB]
A partir de la matriz A queremos tomar las columnas 1, 2 y 5, y de la matrizB queremos tomar las
columnas 1 y 3, para formar una matriz D.
D = [ A(:,[ 1 2 5]) B(:, [ 1 3])]
D( :,1)=[] Eliminala columna número uno.
Matrices especiales
ones(2) Haceuna matriz de unos, de 2 x 2.
zeros(5,4) Haceuna matriz de ceros, de 5 x 4.
rand(3) Haceuna matriz de 3 x 3,
eye(4) Haceuna matriz identidad de 4 x 4.
Gráficas
En MATLAB se pueden crear gráficas tan simples como :
D = [ 1 2 3 5 4 7 6 8 9 8 6 3 1 3];plot (D)
o se pueden crear gráficas tan complejas como :
cplxroot(3,10) Superficiede una raíz cubica.
Como se vió en el primer ejemplo es posible gráficar una serie de puntos yMATLAB
automáticamente ajusta los ejes donde se gráfica.
Por ejemplo, para gráficar la función seno se pueden crear un rango devalores
x = 0 : 0.1 : 20; x= vector de cero a veinte con incrementos de 0.1
y = sin(x); Senodel vector (x)
plot (x,y) Gráficadel seno
z = cos(x); Cosenodel vector anterior
plot (x,z) Gráficadel coseno de x.
plot ( x,y,x,z) Gráficadel seno y coseno en la misma pantalla
plot (x,z,'*') Gráficadel coseno con los signos ' * '
Hace la gráfica en azul, y los signos ' + ', intercambiando los ejes.
plot ( z, x,'b+')

Como se ve es posible gráficar en Matlab con símbolos y además escoger elcolor, tal como se
muestra en la tabla inferior.

Símbolo Color Símbolo Estilo de línea

y amarillo . punto

m magenta o circulo

c cían x equis

r rojo + más

g verde * asterisco

b azul - menos

w blanco : dos puntos

k negro -. menos punto

-- menos menos
Es posible agregar un cuadriculado a la gráfica, para tener más precisión,con el comando.
grid
Se pueden agregar títulos a las gráficas y etiquetas en los ejes con loscomandos siguientes.
title(' Gráfica del coseno de x')
Para ponerle etiquetas a los ejes se puede utilizar los comandos
ylabel ('etiqueta')
xlabel('etiqueta')
axis off Desaparecelos ejes.
Subplot
El comando subplot nos permite desplegar en pantalla varias gráficas.
subplot(m,n,a)
'm' y 'n' son una matriz que representa las cantidades de gráficas que sevan desplegar; 'a' indicaría
el lugar que ocuparía la gráfica en el subplot.
Hagamos la gráfica de los siguientes puntos. La desplegaremos en cuatropuntos diferentes en
pantalla para ver las características de subplot.
a=[ 1 ,2 ,3 9 ,8 ,7 ,4, 5, 6, 8, 7, 5];
plot (a)
Vamos hacer una matriz de 2 x 2 para gráficar, cuatro posibles ventanas o gráficas.Y queremos
que la primera gráfica ocupe el lugar (1,1) de la matriz. entoncesescribimos.
subplot(2,2,1) ,plot(a)
subplot(2,2,2) , plot(a)
subplot(2,2,4), plot(a)
CLF borra todos los objetos de la gráfica.
CLF RESET Borra todo lo que hay en la gráfica y resetea todas laspropiedades de la figura.
clf
Gráficas en tres dimensiones.
El comando plot se puede extender a 3 dimensiones con el comando plot3 .
El siguiente ejemplo hace una gráfica de una espiral en tres dimensiones.
t=0:pi/50:10*pi;
plot3(sin(t),cos(t),t)

zlabel ('etiqueta')
Se utiliza para dar etiquetas al eje z, en las gráficas en tres dimensiones.

Gráficos de malla y superficie.


z = peaks(10)
El comando peaks crea un conjunto de valores que al ser gráficados, se vende la siguiente
manera.
plot(z)
Se tomará como base la gráfica anterior para demostraralgunas funciones de graficación en tres
dimensiones.
mesh(z)
contour(z,10)
surf(z)
Es posible cambiar el sentido de orientación de las gráficascon el comando view(x,y)
view(0,0)
view(90,0)

Gráficas en el plano complejo


Ahora vamos a crear un conjunto de valores para gráficar en el planocomplejo, en tres
dimensiones.
z= cplxgrid(5)
cplxmap(z,z)
cplxmap(z,z.^z)
cplxroot(2,10) Raízcuadrada
Se pueden crear gráficos en coordenadas polares con elcomando Polar (t,r,s) donde t es el vector
en ángulos en radianes, r es elradio del vector y s es la cadena de caracteres que describe , color,
símbolodel estilo del línea.
t=0:0.1:2*pi;
r = sin(2*t).*cos(2*t);
polar(t,r)
gtext( ‘ texto ’ )
Se utiliza para colocar texto en una gráfica, con la ayudadel mouse. Simplemente se ejecuta el
comando y con el mouse se selecciona lacoordenada deseada y se presiona el botón derecho del
mouse, quedando fijo eltexto en la pantalla.
Copiar una gráfica
Cuando se quiera realizar algún reporte formal en unprocesador de palabras como en este caso
Word, es posible copiar las gráficashechas en Matlab por medio de la orden copy to bitmap.
El procedimiento sería :
• En Matlab, en el menú de la ventana principal de la gráfica, se escoge el menú ‘edit’ y de
este se escoge copy to ‘bitmap’;
• Se minimiza Matlab y se pasa al procesador de palabras escogido
• Se localiza la posición en la cual estará la gráfica, y del menú edit se escoge ‘paste o
pegar’.

La gráfica aparecerá en el procesador de palabras.


Existe un pequeño inconveniente ya que la gráfica aparecerásobre un fondo de color negro que
Matlab tiene por default, si se imprime estedocumento obviamente la gráfica aparecerá sobre un
fondo negro lo cual haráque la impresora gaste tinta en exceso.
Para remediar esto se puede cambiar el color de fondo de lasgráficas a blanco con el comando.
Whitebg
después se hace procedimiento mencionado anteriormente.
Imprimir una gráfica.
Se puede imprimir una gráfica directamente desde el menú dela ventana de la gráfica,
seleccionando la opción print.

Otros comandos

• What : Listado de todos los archivos *.m en el directorio actual


• dir : Lista todos los archivos en el directorio actual
• type nombre_archivo : Lista el programa, (Programas con terminación*.M).
• Which nombre_archivo : Da el path en el cual esta el archivo.

Se pueden utilizar comandos de Unix tales como Ls, pwd.


Como hacer un programa en MATLAB
Es posible realizar un programa en Matlab tal como se hace enotros lenguajes como el basic,
pascal o el lenguaje C. Es necesario utilizar uneditor para escribir el código.

• Para cargar un editor, se puede hacer desde la ventana options, escogiendo editor
preference, y cargando el editor que se desee utilizar.
• Para escribir código, requerimos crear un archivo *.M. Para esto necesitamos abrir new
M.file en la ventana file.
• Ahora escribimos el código y salvamos el archivo utilizando la terminación archivo.M.
• Se puede correr el programa desde Matlab simplemente escribiendo el nombre del archivo
que fue creado.
• Es posible abrir programas con la terminación *.M desde Matlab, en el menú file, open
M.file.

Bucles For
Tal como en otros programas de programación en Matlab esposible crear programas con
estructura con ciclos for.
For x = Número incial : número
final
Instrucción
End.
for x = 1 : 10
x=x+1
end
También se pueden hacer operaciones como la siguiente :
matriz = [ 1 2 3 4; 1 2 3 4; 1 2 3 4; 1 2 3 4]
for x = matriz
x = n(1)*n(2)*n(3)*n(4)
end
Bucles while
While permite que ciertas instrucciones sean repetidas un númeroindefinido de veces bajo el
control de una condición lógica.
Por ejemplo, ¿ Cual es primer entero n para el cual n!(factorial) es un número de 100 dígitos ?.
n = 1;
while prod(1:n)<1.e100,n=n+1;end
n
IF ELSE END
Se pueden utilizar estructuras como:
If expresión (verdadero)
acción
End.
If expresión (verdadero)
acción 1
else (Falso)
acción 2
End.
If expresión (verdadero)
acción 1
elseif expresión (verdadero)
acción 2
...
else (Falso)
acción "n"
End

Análisis de datos.
En Matlab podemos hacer análisis de datos estadísticamenteo probabilisticamente. Entre estos
análisis están cálculos de medias, máximos,mínimos, desviaciones estándar, etc.
Inventemos un conjunto de datos, los cuales podremos análizar.
x =[ 9 1 ;23 34; 16 28 ;12 33 ;5 7; 9 4 ;12 34 ;5 14 ;436 ;3 6 ;12 9; 2 30 ;3 2; 2 4]
plot (x) Larepresentación gráfica de los puntos anteriores.
A continuación se hace una análisis de los datospresentados, habrá dos respuestas porque
tenemos dos columnas.
media=mean(x) Obtenciónde la media
max(x) El máximode los valores.
min(x) El mínimode los todos los valores
std(x) Ladesviación estándar
hist(x) Histograma.
Interpolación
Matlab tiene varios comandos que nos permiten hacerinterpolaciones, uno de los métodos es por
medio de mínimos cuadrados.
Mínimos cuadrados
Se crean varios puntos.
x = [ 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 ];
y =[ 0.09 .12 .24 .27 .4 .45 .61 .67 .71 .63 .59];
se muestra los puntos a los cuales se les va a interpolar
plot (x,y,'*')
Se utiliza una aproximación de segundo orden, porque lafunción es no lineal.
n=2 ; Segundoorden.
p=polyfit(x,y,n)Crea los elementos del polinomio quehará la interpolación.
El polinomio es del tipo ax2 + bx + c = 0
f=linspace(0, 1, 100); Formamosuna serie de puntos para gráficar.
z=polyval(p,f); Evaluaciónpolinomial.
plot(x,y,'*',x,y,f,z,':') Hacemosla gráfica de la interpolación.
Podemos ver que la interpolación es pobre. Ahora tratemos dehacerla con un polinomio de quinto
grado, el procedimiento es el mismo que elanterior.
n=5;
p = polyfit(x,y,n)
z = polyval(p,f);
plot(x,y,'*',x,y,f,z,':')
Otra forma de interpolar, es con el comando interp1.
g=interp1(x,y,f)
Se puede observar en la gráfica resultante, que parece comouna aproximación lineal entre cada
punto.
plot(x,y,'*',f,g)
Para una aproximación más suave es recomendable usar el comando spline, quehace una
interpolación tipo cubic spline.
g=spline(x,y,f)
plot(x,y,'*',f,g)

Polinomios
MATLAB puede sacar ls raíces de un polinomio. Para capturar el polinomio deabajo, solamente
ponemos el valor de cada variable, respetando su lugar. Como nohay termino x1 ,de todos modos
se captura como cero.
X3 + 5x2 - 2
p = [1 5 0 -2]
Para sacar las raíces escribimos.
r=roots(p)

Tips de memoria.
Para obtener la máxima velocidad en Matlab debemos tratar de vectorizar losalgoritmos, por
ejemplo :
a=0
for a = 0:.0.1:10
a = a + 1;
y(a)=sin(t)
end
La versión vectorizada sería :
t= 0:0.01:10;
y = sin(t)
El primer ejemplo en MATLAB toma aproximadamente 15 segundos,mientras que el segundo toma
sólo 0.6 segundos.
Se recomienda ver los tutoriales propios de MATLAB como el intro, expo, elmanual de
MATLAB y otros libros de consulta.

Bibliografía
Resumen realizado a partir del tutorial electrónico del paquete Matlab porEnder José López
Méndez (Estudiante de la Escuela de Petróleo de la Facultadde Ingeniería de la Universidad del
Zulia Maracaibo Venezuela, Abril de 2003

Autor:
Ender José López Méndez
===============================================
=============
CONEXIONISMO

ÍNDICE

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario

I. INTRODUCCIÓN - LEER INTRODUCCIÓN

II. CARACTERÍSTICAS GENERALES DEL ENFOQUE CONEXIONISTA - LEER II.

III. IMPLEMENTACIÓN DE LAS REDES NEURONALES - LEER III.

IV. CAMPOS DE APLICACIÓN DE LAS REDES NEURONALES - LEER IV.

V. DIFERENCIAS ENTRE EL CONEXIONISMO Y LOS MODELOS COGNITIVOS TRADICIONALES -


LEER V.
V. 1. INSPIRACIÓN NEURO-FISIOLÓGICA: APROXIMACIÓN A LAS CIENCIAS NEUROLÓGICAS - LEER V. 1.

V. 2. EL PROCESAMIENTO ES PARALELO, NO SERIAL - LEER V. 2.

V. 3. PROCESAMIENTO Y REPRESENTACIÓN DE LA INFORMACIÓN DISTRIBUIDO, NO LOCALISTA - LEER V. 3.

V. 4. COMPUTACIÓN SIN REGLAS - LEER V. 4.

V. 5. DEGRADACIÓN ELEGANTE. TOLERANCIA A FALLOS - LEER V. 5.

VI. BREVE HISTORIA DEL CONEXIONISMO - LEER VI.


VI. 1. HASTA LA PRIMERA MITAD DE NUESTRO SIGLO - LEER VI. 1.

VI. 2. AÑOS CINCUENTA Y SESENTA - LEER VI. 2.


VI. 2. 1. La memoria asociativa - Leer VI. 2. 1.
VI. 2. 2. El reconocimiento de patrones - Leer VI. 2. 2.
VI. 2. 3. Limitaciones de perceptrones y adalines elementales - Leer VI. 2. 3.
VI. 3. AÑOS SETENTA Y OCHENTA - LEER VI. 3.

VII. ELEMENTOS DE LAS ARQUITECTURAS CONEXIONISTAS - LEER VII.


VII. 1. CONCEPTOS Y ELEMENTOS DE LA ESTRUCTURA CONEXIONISTA - LEER VII. 1.
VII. 1. 1. Las unidades - Leer VII. 1. 1.
VII. 1. 2. Las conexiones entre las unidades (las sinapsis) - Leer VII. 1. 2.
VII. 1. 3. Peso sináptico - Leer VII. 1. 3.
VII. 1. 4. El patrón de conexión - Leer VII. 1. 4.

VII. 2. CONCEPTOS Y MECANISMOS BÁSICOS PARA EL PROCESAMIENTO EN LAS REDES CONEXIONISTAS - LEER
VII. 2.
VII. 2. 1. Notación utilizada para representar los elementos y mecanismos de las redes conexionistas - Leer VII. 2. 1
VII. 2. 2. La entrada (input) total. La regla de propagación - Leer VII. 2. 2.
VII. 2. 3. El estado de activación - Leer VII. 2. 3.
VII. 2. 4. La regla o función de activación - Leer VII. 2. 4.
VII. 2. 4. a. Concepto y fórmula general - Leer VII. 2. 4. a.
VII. 2. 4. b. Tipos de funciones de activación - Leer VII. 2. 4. b.
VII. 2. 5. La salida de las unidades. La función de transferencia - Leer VII. 2. 5.
VII. 2. 5. a. Concepto y fórmula general de la función de transferencia - Leer VII. 2. 5. a.
VII. 2. 5. b. Tipos de función de salida o de transferencia - Leer VII. 2. 5. b.
VII. 2. 6. Reglas de aprendizaje - Leer VII. 2. 6.
VII. 2. 6. a. Concepto y modelos de aprendizaje - Leer VII. 2. 6. a.
VII. 2. 6. b. Regla de Hebb (o regla del producto) - Leer VII. 2. 6. b.
VII. 2. 6. c. Regla de Widrow-Hoff o regla delta o regla del menor error cuadrático - Leer VII. 2. 6. c.
VII. 2. 6. d. Regla Delta generalizada (o regla de propagación hacia atrás) - Leer VII. 2. 6. d.
VIII. ALGUNOS MODELOS DE REDES NEURONALES - LEER VIII.
VIII. 1. REDES DE McCULLOCH-PITTS O REDES DE NEURONAS FORMALES - LEER VIII. 1.

VIII. 2. PERCEPTRONES - LEER VIII. 2.

VIII. 3. EL PANDEMONIUM: UN MODELO PARA EL RECONOCIMIENTO DE PATRONES - LEER VIII. 3.


VIII. 3. 1. La tarea de reconocimiento de patrones: dos explicaciones, el modelo de plantillas
y el modelo de análisis de características - Leer VIII. 3. 1.

VIII. 3. 2. El Pandemonium: rasgos principales - Leer VIII. 3. 2.

VIII. 3. 3. El Pandemonium: base experimental - Leer VIII. 3. 3.

VIII. 3. 4. El Pandemonium: dificultades - Leer VIII. 3. 4.

VIII. 3. 5. El Pandemonium y el conexionismo - Leer VIII. 3. 5.

VIII. 4. NETtalk: APRENDER A LEER EN INGLÉS- 4.LEER VIII. 4.


IX. REDES NEURONALES PARA EXPLICAR EL CEREBRO - LEER IX.

APÉNDICE: MATRICES - LEER APÉNDICE

BIBLIOGRAFÍA BÁSICA EN CASTELLANO - LEER BIBLIOGRAFÍA


© Javier Echegoyen Olleta - Febrero 2004

CONEXIONISMO

I. INTRODUCCIÓN

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda. Envíe el


Buscar

formulario de búsqueda

Web www.e-torredebabel.com
pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario

La psicología cognitiva como paradigma psicológico tiene una historia reciente:


aunque algunas propuestas de finales de los años cuarenta y de la década de los cincuenta
se pueden considerar como primeros esbozos de esta forma de hacer psicología, es a partir
de los años sesenta cuando realmente se empieza a extender por el mundo entero,
compitiendo en los centros de estudio y de investigación con el conductismo, al que
finalmente parece haber desbancado como paradigma dominante.
El conductismo supuso uno de los mayores esfuerzos de los psicólogos por hacer de su
disciplina una ciencia. Los principios metodológicos que exigieron a la psicología
(experimentación, rechazo de la introspección, empleo de categorías explicativas definidas
operacionalmente, ...) supuso un adelanto y una conquista que la mayoría de los psicólogos
consideran irrenunciable. Sin embargo, estos triunfos se vieron claramente empañados en
cuestiones fundamentales: el conductismo es una psicología sin sujeto (psicología del
organismo vacío); su pretensión teórica fundamental consiste en explicar toda la conducta a
partir del aprendizaje: son los refuerzos y los estímulos presentes en la vida de los
organismos los que determinan su modo de relacionarse con el medio y de resolver sus
problemas adaptativos. Esta paradójica renuncia al sujeto para explicar lo que el sujeto hace
se puede plantear en los términos tradicionales de cuerpo y mente: el conductismo da poca
importancia al cuerpo y a las predisposiciones genéticas de la conducta; pero también
rechaza la mente, prescinde de forma explícita y, en muchos casos combativa, de la mente
como elemento explicativo. La psicología conductista estudia la conducta para explicar
la conducta.
Esta idea del ambientalismo y del organismo vacío entra en crisis en los años sesenta.
Por un lado los etólogos y las investigaciones en neurociencias, y por otro los desarrollos de
la propia la psicología, van a cuestionar estos principios explicativos básicos.
Por parte de la psicología cognitiva, la crítica se referirá básicamente al olvido de la
mente. Sabemos por qué resultó atractiva la psicología cognitiva: de nuevo se introducen en
la psicología temas como el de la atención, la percepción, la memoria, el pensamiento, el
lenguaje, temas que parecen irrenunciables para toda psicología que quiera ser completa y
que el conductismo a duras penas pudo incluir en sus investigaciones. Y como compendio
de todas estas capacidades y actividades, la mente. De nuevo la mente entra el la
psicología, y, además, explicada con métodos que heredan del conductismo la pretensión de
objetividad: la psicología cognitiva rechaza también la introspección como acceso
privilegiado a lo psíquico favoreciendo los informes objetivos obtenidos en laboratorio.
Simplificando, el mentalismo tradicional quiere estudiar la mente mirando a la mente, la
psicología cognitiva quiere estudiar la mente mirando la conducta. Considera
irrenunciable la referencia a la mente como causa de la conducta, pero también considera
irrenunciable la observación objetiva de la conducta para el descubrimiento de las
estructuras y procesos mentales supuestamente elicitadores de la conducta.
Pero la diferencia con otros mentalismos no está sólo del lado del método (el
conductismo metodológico del cognitivismo frente a la introspección del mentalismo
tradicional), sino, más importante aún, de los conceptos y categorías fundamentales con los
que intenta comprender la mente: la diferencia esencial está en la idea de mente.
La categoría explicativa básica que utiliza el paradigma cognitivo es la de
información: la mente es una entidad capaz de recibir, almacenar y procesar de
diversos modos la información, y de generar una conducta en virtud de dichas
actividades. Esta tesis primordial tiene importantísimas consecuencias en la idea de mente
y de psicología propuesta por este paradigma. Por ejemplo, parece claro que las actividades
mentales que no son cogniciones, las actividades mentales que no consisten en informar o
describir el mundo, sólo con enormes dificultades pueden entrar en el programa de
investigación cognitivo: aquí hay que incluir fundamentalmente el mundo de las emociones
y el de la motivación: estar triste no es tener un estado informativo determinado, desear no
es tener una representación del mundo, aunque, evidentemente, la información manejada
por el sujeto tiene clara influencia tanto en la emoción y el sentimiento como en el deseo y
la voluntad. En términos clásicos, la psicología cognitiva estudia la dimensión intelectual
de la psíque, pero no la emotiva y la volitiva.
En la forma de entender la información y el modo de procesar la información fueron
importantes tanto ciertas ideas filosóficas como los avances tecnológicos en informática.
Por parte de la filosofía, la influencia más clara tiene que ver con tesis racionalistas. En
primer lugar por la importancia que se le da a las representaciones: el trato con la cosas
está determinado por el conocimiento que el sujeto tiene del mundo, conocimiento que ha
de estar presente de algún modo en él para que su conducta resulte eficaz. A esta forma
vicaria de estar el mundo se le suele llamar representación, y la investigación de su estatuto
y peculiaridades es precisamente uno de los temas principales en el paradigma cognitivo.
Estas entidades tienen contenido semántico, significan algo (por ejemplo, conceptos,
figuras, formas, ángulos, notas o propiedades, ...) y gracias a dicho significado se refieren
al mundo De este modo, las representaciones son las unidades informativas que maneja el
sujeto y cuyo procesamiento determina la conducta. Pero las representaciones se combinan
unas con otras siguiendo reglas y el rendimiento de cada una de las facultades mentales
(percepción, memoria, lenguaje, atención, ...) se define a partir de las distintas reglas de
transformación y combinación de representaciones. De este modo, reglas y
representaciones son dos de los elementos conceptuales básicos del cognitivismo y dan
lugar al programa de investigación característico de este paradigma.
La tecnología existente estableció el modo concreto de concebir las formas de
instanciar la representación y de procesar la información. Aunque en los primeros años de
la informática hubo algunos intentos de construir sistemas artificiales de procesamiento que
reprodujesen algunos aspectos muy abstractos del cerebro (el Perceptrón, por ejemplo), el
modelo que sin embargo tuvo éxito fue el del ordenador Von Neumann (los ordenadores
actuales son ejemplos de este modelo). Sus características principales son las siguientes:
1. la información está localizada en partes físicas concretas: si guardo en el disco
duro de mi ordenador lo que ahora estoy escribiendo, la información se
almacenará físicamente en un lugar preciso, al que el ordenador sabrá acceder
mediante un sistema preciso de direcciones;
2. la información se procesa “en serie”, si hago que “corra” un programa en mi
ordenador, las instrucciones de que éste consta se realizarán siguiendo un
orden, y una en cada unidad de tiempo, nunca dos en el mismo momento
(decimos que no hay dos procesadores, sino uno);
3. además, la información con la que trabaja el ordenador es significativa –al
menos en el nivel del programador: una palabra, una letra, una línea, un
ángulo, una figura, ...
4. el ordenador consta de partes físicamente diferenciadas para tareas realmente
diferentes: grandes estructuras como la memoria, los periféricos, la unidad
lógico-matemática, la unidad de procesamiento central...
5. la información está controlada desde una parte del ordenador privilegiada: la
unidad central de procesamiento, unidad que se encarga de establecer las
jerarquías en la actuación y el control del sistema;
6. las reglas de procesamiento describen transformaciones que atienden a
restricciones lógicas, semánticas y sintácticas.
La psicología cognitiva clásica tomó estas ideas y las trasladó a la psicología: se
entendió que la mente era como un programa informático y el cerebro como el hardware
del ordenador. Se intentó describir el flujo de la información con la idea de que la mente
procesa la información, que consta de macroestructuras que la transforman a su manera, se
buscó el auténtico modo de darse las representaciones, ... hasta que en la segunda mitad de
los años ochenta se produce una modificación sustancial en el paradigma cognitivo con el
desarrollo del conexionismo. En 1986 D. E. Rumelhart y J. L. McClelland editan Parallel
Distributed Processing, obra considerada como la “Biblia” del conexionismo y que supuso
el cambio de rumbo en la psicología cognitiva. Es común señalar la radicalidad de dicho
cambio, hasta el punto de que algunos autores señalan que con el conexionismo se da
realmente un cambio de paradigma. Aunque sólo tras la lectura de la totalidad de este
informe sobre el conexionismo se puede apreciar de un modo más cabal el contraste entre
estas dos formas de hacer psicología cognitiva, se pueden adelantar algunas importantes
semejanzas y diferencias entre ambos enfoques:
• Parece claro que un primer punto común es la referencia a la computación: ambas
teorías entienden la mente como un sistema que procesa información y responde al
medio a partir de dicho procesamiento. Pero ni siquiera en este punto, que sin duda
es el que da continuidad a las dos corrientes, se da el acuerdo:
○ La psicología cognitiva clásica entiende el procesamiento como la
aplicación de un conjunto de reglas a entidades situadas en el nivel de la
psicología popular (creencias y deseos, básicamente); el conexionismo
entiende el procesamiento como el cálculo de las señales de salida a partir de
los cómputos que realizan las unidades de la red en función de los pesos de
las conexiones y de determinadas funciones matemáticas que determina la
activación de dichas unidades y las salidas correspondientes a cada una de
ellas. Para el conexionismo la computación no se realiza sobre entidades
reconocibles desde el nivel de la psicología popular.
○ Las dos teorías proponen el uso de la simulación por ordenador para la
comprobación de las hipótesis relativas a los procesos mentales, pero la
psicología cognitiva clásica propone la simulación en el ordenador
convencional y el conexionismo la simulación mediante arquitecturas
semejantes a la del cerebro.
○ La psicología cognitiva clásica propone la lógica y las reglas que imponen
restricciones semánticas y sintácticas para realizar los cómputos (como
ocurre en los programas de ordenador de la Inteligencia Artificial
tradicional); el conexionismo, sin embargo utiliza herramientas
matemáticas, particularmente estadísticas, para la realización de los
cómputos que se supone realiza nuestra mente.
• El objetivo de la psicología la psicología cognitiva clásica es el descubrimiento de
las reglas que rigen los procesos mentales y de los elementos o estructuras básicas
del procesamiento humano; el del conexionismo es el descubrimiento de redes
adecuadas para la simulación de tareas característicamente mentales y de reglas de
aprendizaje eficientes.
• Otro contraste que se suele destacar es el que se refiere al aprendizaje: los modelos
clásicos rechazan el asociacionismo y tienen a defender posiciones innatistas, el
conexionismo parece una vuelta al asociacionismo (las redes neuronales no son otra
cosa que asociaciones entre unidades) y, puesto que las redes comienzan el
aprendizaje con pesos establecidos aleatoriamente, tiende a defender la idea de la
mente como una “tabula rasa” o papel en blanco”, siendo la experiencia, el
ambiente en el que se desenvuelve la red, y no factores innatos, la que provoca la
aparición de los pesos adecuados para el procesamiento y el almacenamiento de la
información. Algunos autores consideran que estas diferencias separan al
conexionismo de la psicología cognitiva y lo aproximan al conductismo pues,
aunque no exactamente en el mismo sentido, éste también defiende el
asociacionismo y el ambientalismo.
CONEXIONISMO

II. CARACTERÍSTICAS GENERALES DEL ENFOQUE


CONEXIONISTA

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario

En psicología, esta nueva forma de estudiar y explicar la mente y la conducta


recibe el nombre de conexionismo (aunque otros prefieren el término
“neoconexionismo”, para distinguirlo del antiguo conexionismo propuesto por
Alexander Bain en la segunda mitad del siglo XIX, autor que también subrayó la
importancia de las conexiones entre neuronas, y la investigación y experimentación
fisiológica). Dado que para este paradigma el procesamiento y el almacenamiento de
la información recae en amplios conjuntos de elementos simples (las unidades de las
redes conexionistas), el modelo de procesamiento conexionista se llama también
Procesamiento Distribuido en Paralelo (o PDP).
En Inteligencia Artificial, los métodos de computación basados en redes
neurales se incluyen en un campo de computación que prescinde del enfoque
algorítmico tradicional y tomo como modelo los sistemas biológicos; esta nueva forma
de computación incluye, entre otras, la lógica borrosa, las redes neuronales y el
razonamiento aproximado, y recibe los nombres de computación cognitiva,
computación del mundo real o computación Soft, para distinguirlo del enfoque
algorítmico tradicional o Computación Hard.

En psicología llamamos conexionismo al paradigma que utiliza redes


neuronales para comprender y explicar la vida psíquica y la conducta. Las redes
neuronales son conjuntos de unidades interconectadas masivamente capaces de
procesar y almacenar información mediante la modificación de sus estados. Aunque la
siguiente afirmación exigiría importantes precisiones, en general se puede decir que el
psicólogo conexionista considera que ha explicado un fenómeno psicológico (el
reconocimiento de formas, la producción de lenguaje, la memoria, ...) cuando el
modelo neuronal que construye se comporta del mismo modo que los seres humanos
cuando realizan la misma tarea. No hay que olvidar que el conexionismo participa de
una idea común con la psicología cognitiva clásica: para la psicología cognitiva (tanto
la clásica como el conexionismo) la mente es un sistema capaz de procesar
información, un sistema capaz de recibir señales de entrada, almacenar información
y provocar información de salida a partir la información de entrada, la información
almacenada y los mecanismos de cómputo. Dada esta suposición de que los
fenómenos mentales y la conducta son consecuencia de elementos internos al sujeto,
el conexionismo considera adecuada la explicación cuando la red que construye es
capaz de realizar, a partir del vector de entrada, los distintos cómputos que provocan
el vector de salida deseado.
Los elementos característicos presentes en la mayoría de los modelos conexionistas
son los siguientes:

1. La red es un conjunto de unidades de procesamiento (neuronas) muy


simples.

2. Dichas unidades interactúan entre sí mediante las conexiones que los


asocian.

3. Los estímulos que afectan a las unidades de entrada se expresan en términos


cuantitativos.

4. Toda unidad de la red viene definida por un nivel de activación expresado de


forma cuantitativa.

5. Toda conexión viene caracterizada por un valor de fuerza del trazo o peso de
la conexión, también expresado de forma cuantitativa.

6. El procesamiento y almacenamiento de la información se realiza de forma


paralela y distribuida.

7. Existen reglas o funciones que computan la información en distintos niveles


del procesamiento (para la modificación del nivel de activación a partir de las
entradas, para la producción de la salida a partir del nivel de activación, ...).

8. Existen reglas o funciones de aprendizaje que le permiten a la red modificar


los pesos de las conexiones para acomodar de modo cada vez más perfecto la
información de entrada a la salida requerida.

9. La función de cada unidad es simplemente realizar cálculos con las entradas


que reciben y producir la información que envían a las unidades con las que
están conectadas.

10. Las señales de salida que emite la red se expresan en términos


cuantitativos.

11. Dado que toda la actividad de la red no es otra cosa que cálculos o
transformaciones de números, se puede afirmar que en realidad la red neural
es un dispositivo para computar una función, un sistema capaz de
transformar la información de entrada en información de salida. La función
presente en la red y que realiza el computo es básicamente el patrón o
conjunto de pesos sinápticos de las unidades.
CONEXIONISMO

III. IMPLEMENTACIÓN DE LAS REDES NEURONALES

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario

Las redes neuronales suelen implantarse en los ordenadores tradicionales, ordenadores


seriales con arquitectura Von Neumann. Pero, naturalmente, las máquinas más adecuadas
para este tipo de sistemas de computación son aquellas que reproducen en su arquitectura la
propia arquitectura de la red. Las máquinas más conocidas son los neurocomputadores y los
neurochips.
• Neurocomputadores: constan de un conjunto de procesadores
conectados entre sí y que operan concurrentemente. Por ejemplo, el
MARK IV está formado por un conjunto de procesadores Motorola 68020
asociados cada uno de ellos a un coprocesador matemático, es capaz de
simular hasta 256.000 neuronas y 5.500.000 sinapsis, y puede alcanzar
una velocidad de 5.000.000 de interconexiones por segundo. El ANZA
Plus puede simular redes de hasta 1.000.000 de neuronas y 15.000.000
de conexiones, a velocidades de 1.500.000 conexiones por segundo.

• Neurochips: en este caso las redes neuronales se implementan en o


uno o varios circuitos integrados específicos. Soportan menos neuronas
que los neurocomputadores, pero la velocidad es muy superior que en
los neurocomputadores pues las interconexiones entre neuronas se
encuentran dentro del propio chip. No son productos comerciales y los
encontramos fundamentalmente en las universidades y los centros de
investigación. Un ejemplo de estas máquinas es el chip N64 de Intel, que
incluye 64 neuronas, 10.000 sinapsis y cuya velocidad de procesamiento
es de 2.500 conexiones por segundo.

• Neurocomputadores de propósito especial: las máquinas anteriores


son de propósito general, pero existen también algunas máquinas que
han sido diseñadas para implementar un modelo específico de red
neuronal.

CONEXIONISMO

IV. CAMPOS DE APLICACIÓN DE LAS REDES NEURONALES

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario

La mayoría de los modelos existentes tienen que ver con el


reconocimiento de patrones: buscar un patrón a partir de una serie de
ejemplos, clasificar patrones, identificar un estímulo, reconstruir un patrón a
partir de datos distorsionados o incompletos, ... Muchas redes neuronales
trabajan a partir de datos sensoriales y otras a partir de datos introducidos por
el usuario.
Los campos de aplicación son fundamentalmente la psicología (en los
campos de percepción, memoria, pensamiento, aprendizaje y lenguaje) y la
Inteligencia Artificial, aunque también encontramos ejemplos en biología
(modelos de retina y del neocortex, por ejemplo).
Las aplicaciones obtenidas en Inteligencia Artificial se utilizan en muchos
dominios: por ejemplo, en medicina (diagnóstico y tratamiento a partir de
datos obtenidos mediante electrocardiograma, encefalograma, análisis
sanguíneo, ...), el ejército (clasificación de las señales de radar; creación de
armas inteligentes, reconocimiento y seguimiento en el tiro al blanco, ...), la
empresa y la industria (reconocimiento de caracteres escritos, optimización de
plazas y horarios en líneas de vuelo, construcción de robots y sistemas de
control, ...).

CONEXIONISMO

V. DIFERENCIAS ENTRE EL CONEXIONISMO Y LOS MODELOS


COGNITIVOS TRADICIONALES

V.1. Inspiración neuro-fisiológica: aproximación a las ciencias


neurológicas
V.2. El procesamiento es paralelo, no serial
V.3. Procesamiento y representación de la información distribuido, no
localista
V.4. Computación sin reglas
V.5. Degradación elegante. Tolerancia a fallos
Principio del formulario
w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1


Final del formulario

Como consecuencia de las característica citadas en la sección 2, el


conexionismo presenta importantes diferencias respecto de los modelos que
encontramos en la psicología cognitiva clásica. Veamos alguna de ellas.
V.1. INSPIRACIÓN NEURO-FISIOLÓGICA: APROXIMACIÓN A LAS
CIENCIAS NEUROLÓGICAS

La psicología cognitiva clásica no daba importancia a la base orgánica de


la vida mental. Cabe recordar que incluso sus propios postulados básicos le
llevaron a considerar que la lógica existente en los procesos mentales se
puede comprender y explicar con independencia de su realización en un
sistema físico (esto es lo que afirma la tesis del funcionalismo, la teoría
filosófica de la mente compartida por los psicólogos cognitivos). El
conexionismo, sin embargo, toma al cerebro como modelo de procesamiento y
su inspiración neurofisiológica aproxima la psicología a la biología. Si en la
psicología cognitiva clásica la metáfora dominante era la metáfora del
ordenador, ahora, en el conexionismo, la metáfora es el cerebro: la primera
psicología clásica consideraba que podíamos entender el comportamiento de la
mente comprendiendo el “comportamiento” del ordenador tipo Von Neumann,
sin embargo el conexionismo afirma que podemos entender el comportamiento
de la mente si comprendemos el comportamiento del cerebro humano. Con el
conexionismo la Inteligencia Artificial, la Psicología y la Biología se convierten
en disciplinas más próximas que lo que permitía el enfoque de la psicología
cognitiva clásica. Claro está que esta aproximación es interesante desde el
punto de vista de la unidad de las ciencias y la posición materialista
dominante, pero también puede ser una dificultad para los que quieren
defender la posibilidad de la psicología como ciencia independiente; de hecho
las posiciones filosóficas de los conexionistas en el tema del estatuto de la
mente tienden a ser reduccionistas o a defender el materialismo eliminativo
(en lo esencial, tesis según las cuales los estados mentales no tienen auténtica
realidad, son epifenómenos y, por lo mismo, no pueden ser causas de las
conductas).

Aunque también existen redes neuronales que intentan ser modelos de


los procesos reales de partes del cerebro, las que interesan a la psicología no
intentan imitar el comportamiento del sistema nervioso sino de la mente. El
conexionismo quiere ser una teoría psicológica no una teoría
fisiológica. Sin embargo, sí se puede hablar de inspiración biológica en los
modelos mentales propuestos. Las redes neuronales intentan reproducir las
características principales del comportamiento del cerebro, particularmente de
su estructura fisiológica básica, la neurona, y de su agrupación en estructuras
complejas o redes de neuronas. A continuación vamos a fijarnos en los
aspectos más elementales de las redes neuronales biológicas, aspectos que las
redes conexionistas intentan emular.
Las unidades básicas del sistema nervioso son las neuronas. Estas
unidades se conectan unas con otras formando redes extraordinariamente
complejas. La principal función de las neuronas es recoger señales de diversas
fuentes, transformarlas y producir señales de salida que transmiten a otras
neuronas u otras partes del organismo. De este modo, en el cerebro el
procesamiento de la información es paralelo y distribuido, paralelo en tanto
que las señales recibidas las procesan simultáneamente millones de
conexiones diferentes y distribuido porque la responsabilidad del
almacenamiento de la información no recae sobre una unidad (una neurona)
sino sobre amplios conjuntos de unidades.
Los órganos sensoriales reciben señales del exterior y mediante
elementos transductores convierten las distintas energías que reciben en
señales nerviosas. La información fluye desde los nervios sensoriales y,
recorriendo estaciones intermedias como la médula espinal, el tronco cerebral,
cerebelo, etc., llega hasta la corteza cerebral. A su vez, del cerebro parte la
información por los nervios motores hasta los músculos u otros órganos y
constituye la respuesta del organismo al medio.
En las neuronas cabe destacar las siguientes partes fundamentales:
• el cuerpo celular o soma, cuya función principal es procesar las señales
que recibe la unidad y enviar la información de salida hacia otras unidades;
• el axón: es la fibra más gruesa y larga de todas las que se originan en el
cuerpo celular; mediante los axones las neuronas se conectan unas con
otras; su función es transmitir la información generada en el cuerpo celular a
las otras células;
• las dendritas: son pequeñas extensiones del soma y su función es recibir
la información.

De este modo, las dendritas son los canales receptores de la


información, el soma la unidad de procesamiento y el axón el canal transmisor
de la información.
La información se traslada a través del axón y las dendritas en la forma
de señales eléctricas. Sin embargo, el paso de la información de una unidad a
otra no tiene la forma de cambios eléctricos sino químicos. La conexión entre el
axón de una neurona y las dendritas de otra recibe el nombre de sinapsis. Las
neuronas no están en contacto físico completo pues existe un pequeño espacio
en la sinapsis (el espacio intersináptico). Cuando el impulso eléctrico llega al
final del axón, se produce la liberación de unas sustancias químicas
denominadas neurotransmisores. Los neurotransmisores se difunden en el
espacio intersináptico y se unen a los extremos de las dendritas en ciertos
lugares denominados receptores. En estos receptores se producen cambios
químicos que provocan modificaciones eléctricas en la neurona y el flujo
eléctrico o impulso nervioso.
Por su importancia en las redes neuronales conexionistas, es importante
recordar también dos hechos más que se dan en las redes neuronales
biológicas:
• los efectos de los neurotransmisores sobre las dendritas pueden ser
excitadores o inhibidores de forma que para calcular la influencia final
del conjunto de entradas sobre una neurona es preciso sumar y restar sus
estímulos.

• para que la neurona responda enviando una señal eléctrica a lo largo del
axón (el impulso nervioso) es necesario que los estímulos que recibe de
otras unidades alcancen un cierto nivel eléctrico (el umbral del impulso
eléctrico o intensidad mínima del estimulo que es suficiente para provocar
el impulso nervioso); de este modo, la respuesta de la célula ante los
estímulos tiene la forma de todo o nada.

Cuando se habla de la inspiración biológica de los modelos


conexionistas se quiere señalar que estos modelos intentan reproducir gran
parte de los aspectos existentes en las redes neurológica biológicas y descritos
más arriba. Sin embargo hay otros aspectos del sistema nervioso que no se
intentan reproducir. Citemos algunos:
• Por ejemplo, el relativo al número de unidades de procesamiento: en todo el
sistema nervioso central hay del orden de 1011 neuronas y de 1015
interconexiones, mientras que las redes conexionistas generalmente
constan como mucho de varias centenas de unidades y de varios miles de
conexiones.

• En las redes conexionistas los pesos entre las conexiones se establecen


inicialmente de forma aleatoria y se van corrigiendo mediante el
aprendizaje; esto supone, traducido a los términos tradicionales, primar el
ambientalismo y el aprendizaje frente a los componentes innatos. En el
cerebro la importancia del aprendizaje para el desarrollo de las sinapsis no
se puede obviar, pero tampoco se puede negar la importancia de factores
innatos, factores que determinan los recursos fisiológicos necesarios para el
procesamiento e incluso las rutas en el establecimiento de las conexiones.

• En el caso de las redes biológicas, el aprendizaje da lugar a modificaciones


en las fuerzas de conexión, pero también a modificaciones de las estructuras
mismas de interconexión (por ejemplo, de las unidades conectadas y de los
tipos de conexiones); en las redes conexionistas el aprendizaje actúa sobre
los pesos de las conexiones pero no sobre las estructuras mismas.
V

A pesar de que los desarrollos técnicos permitieron incrementar


la velocidad de los ordenadores, los resultados de éstos en tareas
aparentemente sencillas como el reconocimiento de formas
necesitaban un tiempo de ordenador muy alto y sus resultados no
eran muy buenos. El contraste con la eficacia del cerebro se hizo cada
vez más manifiesto pues aunque la velocidad de procesamiento de
cada neurona es muy inferior a la del ordenador (la velocidad de
procesamiento en los ordenadores se mide en nanosegundos y la de
las neuronas en milisegundos o incluso centésimas de segundo) el
cerebro humano es capaz de realizar ciertas tareas en un tiempo
inferior que el ordenador. Los programas construidos por la
Inteligencia Artificial tradicional resultan muy buenos para tareas que
exigen la repetición del mismo proceso sobre los datos de entrada
(millones de cómputos recursivos), lo que les permite a las máquinas
aventajarnos en tareas como la de cálculos matemáticos; sin embargo
el cerebro parece más eficaz que los ordenadores tradicionales en
tareas típicas de los seres vivos: reconocer un enemigo en una
ambiente que no presenta su figura con precisión, recordar
instantáneamente formas de huida o aproximación, comprender una
frase, reconocer un rostro, seguir en tiempo real el movimiento de un
objeto en el espacio, ...; hay tareas para las cuales un niño de tres
años resulta más eficiente que los ordenadores más potentes y los
programas más sofisticados.

La explicación de la eficacia del cerebro para este tipo de tareas


se encuentra en el hecho de que para el procesamiento de la
información el cerebro utiliza simultáneamente millones de neuronas
y el ordenador convencional utiliza uno (o unos pocos) procesadores.
En un procesamiento serial en cada momento sólo se realiza una
operación, en un procesamiento en paralelo en cada momento se
realizan tantas operaciones como unidades participan en el
procesamiento completo. Ésta es precisamente una de las
características principales del cerebro: en el cerebro cada unidad, o
pequeñas poblaciones de unidades, participan en el procesamiento
conjunto de la información, y aunque cada una de ellas, tomadas por
separado, tarden en realizar sus procesamientos correspondientes, en
conjunto la actividad es más eficaz. Las redes neuronales nos
permiten reproducir más adecuadamente aquél tipo de tareas porque
reproducen el procesamiento en paralelo característico del cerebro, lo
que otorga a las redes una considerable ventaja en velocidad sobre un
ordenador convencional pues la multitud de sinapsis de cada nivel
ejecutan simultáneamente muchos pequeños cómputos, en lugar de
hacerlo en laboriosa sucesión como en los ordenadores tradicionales.

V. 3. PROCESAMIENTO Y

El carácter distribuido de la información típico de las redes


conexionistas se extiende a dos aspectos muy importantes relativos a
la información: el procesamiento mismo y el almacenamiento de las
representaciones.
El modelo conexionista no es localista en primer lugar porque, a
diferencia de lo que ocurre en los ordenadores tradicionales, en las
redes neuronales no existe la “unidad central de control”, unidad que
controle y coordine el conjunto de unidades del sistema; en este
modelo el procesamiento es responsabilidad de cada una de las
unidades o neuronas, cada una de ellas se encarga de cómputos
parciales cuya activación conjunta produce la señal de salida final.
Desde un punto de vista fisiológico estos modelos suponen que en el
cerebro no existe una parte encargada de un tipo específico de
procesamiento, sino que la actividad cerebral tiene carácter global.

La información se puede almacenar de dos formas: los sistemas


localistas retienen la información en unidades discretas: en cada
unidad (por ejemplo, en cada porción física del disco duro del
ordenador) se almacena una unidad informativa; en los sistemas
distribuidos cada unidad informativa se retiene en poblaciones de
individuos y cada una de ellas colabora de forma parcial en el
almacenamiento de la información. La ventaja de esta forma de
almacenamiento es que la destrucción de unidades en los sistemas
localistas tiene un efecto más devastador que la destrucción de
unidades en los sistemas distribuidos. En los modelos distribuidos de
memoria cada unidad informativa se representa a partir de amplias
poblaciones de unidades, pero, a la vez, cada unidad de memoria
colabora en el almacenamiento de varias unidades informativas. No se
puede dar interpretación cognitiva a cada una de las unidades o
neuronas; la interpretación cognitiva (el decir, por ejemplo, que
recuerda y relaciona conceptos) es algo válido sólo para la red en su
conjunto, y en todo caso para los patrones de los pesos de las
unidades.
Podemos apreciar qué se quiere indicar con la idea del carácter
distribuido del almacenamiento y procesamiento de la información
con dos ejemplos muy sencillos:
• los relojes digitales suelen expresar la información horaria
mediante segmentos; en este ejemplo, con los siete segmentos
siguientes podemos representar diez números, dependiendo de los
que estén activados y de los que están desactivados (es obvio en
realidad que se puede representar más información, por ejemplo,
además de números, letras); se puede observar que el daño en una
de las unidades afectaría a la capacidad del sistema para
representar la hora, pero no de un modo completo, a la vez que
está claro también que cuanto más distribuida sea la forma de
almacenar la información (cuantos más segmentos empleásemos)
menos se resentiría el sistema:

• las matrices nos pueden servir de ejemplo para mostrar


cómo un conjunto de elementos puede procesar distintos
conjuntos de datos (distintos vectores de entrada) para
producir cada uno de ellos la salida correspondiente (distintos
vectores de salida)
por ejemplo, la matriz

nos permite emparejar los vectores de entrada (1,1) y (1,-1) con los
vectores de salida (-1,1) y (-1,-1):

la entrada +1 +1 produce: 1x -1 + 1x 0 1x 0 + 1x 1 = -1 1

la entrada +1 -1 produce: 1x -1 + -1x 0 1x 0 + -1x 1 = -1 -1

Por cierto que ésta es precisamente una de las curiosas


eficacias de las redes conexionistas: un mismo patrón de pesos (que
se puede representar mediante matrices) permite emparejar distintos
vectores de entrada a sus vectores de salida correspondientes.

V. 4. COMPUTACIÓN SIN REGLAS


En las redes conexionistas la computación no se rige por reglas.
En los modelos cognitivos tradicionales el procesamiento consiste en
la manipulación de símbolos mediante el empleo de reglas. Los
símbolos tienen una interpretación semántica (son conceptos,
propiedades, clases, frases, líneas, ángulos, recuerdos, ...) y las
reglas describen el modo de transformar dichos símbolos en conjuntos
significativos más amplios. Para el conexionismo, sin embargo, la
computación no es otra cosa que el cálculo de las salidas a partir de
información de entrada, y los tres elementos, (entradas, salidas y
cálculos) expresados en términos cuantitativos. El comportamiento
general de la red puede parecer comportamiento guiado por reglas,
pero en realidad en sus componentes no hay otra cosa que elementos
de cómputo puramente cuantitativos. El sistema se sitúa en un estado
o en otro a partir de la modificación de los pesos y la activación o
inhibición de cada unidad. Dado que las redes conexionistas son
básicamente modelos de aprendizaje, la no utilización de reglas se
traslada también al campo del aprendizaje. En la psicología cognitiva
clásica aprender una destreza psicológica (la competencia lingüística,
la capacidad para narrar un cuento, la capacidad matemática, ...) se
describía como la adquisición o desarrollo de reglas capaces de
organizar las salidas correspondientes (frases significativas, narración
de cuentos, cálculos matemáticos, ...) a partir de los datos
almacenados en la memoria; en el conexionismo el aprendizaje no es
otra cosa que la modificación de los pesos de las conexiones para la
transformación de los vectores de entrada en los vectores de salida
pertinentes. Mediante funciones de aprendizaje adecuadas, las redes
pueden modificar los pesos de modo que tras sucesivas
presentaciones de los vectores de entrada representativos de una
clase de datos (fonemas, caracteres escritos, figuras bidimensionales,
ondas eléctricas, ...) la red va afinando sus respuestas hasta que se
logran aciertos estadísticamente aceptables en el emparejamiento de
los vectores de entrada con los vectores de salida pertinentes.

Podemos apreciar la diferencia de enfoques si nos fijamos en


una de las tareas para la que las redes neuronales parecen más
pertinentes, el reconocimiento de patrones; el reconocimiento de
patrones no es otra cosa que la capacidad para identificar ejemplos
de un mismo modelo, para clasificar distintos estímulos como siendo
del mismo tipo. Los sistemas de reconocimiento tradicionales, los que
aparecen en la psicología cognitiva clásica y en la Inteligencia
Artificial tradicional, exigían elaborar reglas explícitas que recogiesen
los aspectos esenciales que el sistema debía captar. Con las redes
neuronales podemos conseguir que el sistema reconozca patrones sin
presentarle dichas reglas explícitas de reconocimiento, basta con
presentarle los ejemplos adecuados y entrenar a la red. Esta
peculiaridad lleva también a caracterizar a las redes neuronales como
sistemas dinámicos autoadaptativos:

• autoadaptativos porque ellas mismas, sin que exista una unidad


central rectora, son capaces de ajustar sus unidades de
procesamiento o neuronas de modo conveniente para producir el
vector de salida requerido;
• dinámicos porque pueden cambiar constantemente para adaptarse
a las nuevas condiciones que imponen los nuevos conjuntos de
datos o vectores de entrada que se le presentan.

El aprendizaje no es otra cosa que la modificación de los pesos


o fuerzas de conexión existentes entre las distintas unidades, no la
adquisición de reglas o algoritmos explícitos. Se supone que la red ha
aprendido cuando consigue un patrón de pesos que provoca, para las
entradas del mismo tipo, las salidas deseadas. Los problemas más
importantes de la persona que diseña la red se refieren a la obtención
de la arquitectura apropiada (las capas y unidades necesarias, las
conexiones entre ellas, las funciones de activación y transferencia que
ha de utilizar) y de un buen algoritmo de aprendizaje que le permita a
la red discriminar los diferentes tipos de estímulos.

Una consecuencia de la ausencia de reglas explícitas y que


merecería la pena estudiar con detalle es que con este sistema de
procesamiento conseguiremos que el sistema o red reconozca las
semejanzas entre entidades, pero no seremos capaces de describir en
qué consisten dichas semejanzas.

V.5. DEGRADACIÓN ELEGANTE. TOLERANCIA A FALLOS

En estas redes, cuando algunas unidades dejan de funcionar


adecuadamente su efecto no es catastrófico, afecta sólo a la eficacia y
precisión de la red en una medida mayor o menor dependiendo de la
cantidad de unidades deterioradas. Esto no ocurre con los modelos
tradicionales en donde la pérdida de alguna de las unidades de
memoria provocaba efectos importantes en el sistema. Otra
dimensión de la degradación elegante es que la recuperación de la
memoria en redes distribuidas es capaz de darse aún en los casos en
que la información que se introduce para la búsqueda sea confusa,
incompleta e incluso errónea (lo que se suele llamar tolerancia a fallos
respecto de los datos). Esta es una característica de las redes y
también del funcionamiento real de nuestra memoria: por ejemplo,
cuando intentamos recordar el nombre de una persona utilizando
descripciones de sus características, somos capaces de dar con el
nombre aunque no recordemos todas sus propiedades y también
aunque algunas de estas descripciones no correspondan en realidad a
dicho sujeto. La razón por la que las redes son tolerantes a fallos es
la existencia de un cierto grado de redundancia en el procesamiento y
almacenamiento de la información, es decir su carácter distribuido y
paralelo. En los ordenadores tradicionales –y en los modelos
cognitivos basados en la arquitectura de dichos ordenadores– cada
unidad de información tiene una localización y dirección precisa, por
lo que los fallos de los distintos elementos que intervienen en el
procesamiento tienen consecuencias más graves que en los modelos
conexionistas.

CONEXIONISMO

VI. BREVE HISTORIA DEL CONEXIONISMO

VI.1. Hasta la primera mitad de nuestro siglo


VI.2. Años cincuenta y sesenta
VI.2.1. La memoria asociativa
VI.2.2. El reconocimiento de patrones
VI.2.3. Limitaciones de perceptrones y adalines elementales
VI.3. Años setenta y ochenta
Principio del formulario
w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario

VI.1. HASTA LA PRIMERA MITAD DEL SIGLO XX

LAS PRIMERAS APORTACIONES DESTACABLES PROVIENEN DE LA


NEUROFISIOLOGÍA: LURIA, LASHLEY Y HEBB SE ENFRENTARON A LAS
DOCTRINAS DOMINANTES A FINALES DEL SIGLO XIX, DOCTRINAS QUE
DEFENDÍAN EL CARÁCTER LOCALISTA DEL ALMACENAMIENTO Y DE LAS
FUNCIONES DEL CEREBRO; FRENTE A ESTAS DOCTRINAS DEFENDIERON
UNA CONCEPCIÓN DISTRIBUIDA DE LOS SISTEMAS DE PROCESAMIENTO Y
MEMORIA DEL CEREBRO. SUS INVESTIGACIONES DEMOSTRARON QUE LA
ESPECIALIZACIÓN PODÍA DARSE EN RELACIÓN A GRANDES REGIONES DEL
CEREBRO, PERO EN ABSOLUTO EN LAS NEURONAS SINGULARES. LASHLEY
LLEVÓ TAN LEJOS LA HIPÓTESIS DISTRIBUIDA QUE POSTULÓ EL CARÁCTER
EQUIPOTENTE DEL CEREBRO (CUALQUIER REGIÓN DEL CEREBRO PUEDE
REALIZAR CUALQUIER TAREA DETERMINADA).
DE LOS TRES AUTORES CITADOS ES SIN DUDA DONALD HEBB EL MÁS
IMPORTANTE EN RELACIÓN CON DESARROLLO DEL CONEXIONISMO,
PARTICULARMENTE A PARTIR DE SU LIBRO PUBLICADO EN 1949 LA
ORGANIZACIÓN DE LA CONDUCTA. HEBB DEFENDIÓ LA CONEXIÓN ENTRE
PSICOLOGÍA Y FISIOLOGÍA, PROPUSO LA TESIS DEL CARÁCTER DISTRIBUIDO
DE LA INFORMACIÓN EN UNIDADES INFORMATIVAS Y FORMULÓ UNO DE
LOS PRIMEROS PROCEDIMIENTOS DE APRENDIZAJE (PROCEDIMIENTO QUE
ALGUNOS AUTORES CREEN QUE YA HABÍA SUGERIDO SANTIAGO RAMÓN Y
CAJAL): SI UN CONJUNTO DE NEURONAS CONECTADAS ENTRE SÍ SE
ACTIVAN REPETIDAMENTE, SUS SINAPSIS AUMENTAN SU CONDUCTIVIDAD,
O DE OTRO MODO: CONJUNTOS DE NEURONAS SINCRÓNICAMENTE
ACTIVADAS TIENDEN A ORGANIZARSE EN CONJUNTOS CONECTADOS.
ESTAS IDEAS DE HEBB HAN RESULTADO PARTICULARMENTE
FECUNDAS. POR EJEMPLO, YA EN 1954 ALBERT M. UTTLEY DEMOSTRÓ EN
THE CLASSIFICATION OF SIGNALS IN THE NERVOUS SYSTEM QUE REDES
ENTRENADAS CON EL MODELO DE APRENDIZAJE HEBBIANO ERAN CAPACES
DE RECONOCER PATRONES SIMPLES BINARIOS (111000, 110111, ...) EN CLASES
(POR EJEMPLO LAS QUE COMIENZAN POR 110).
EL SIGUIENTE HITO RESEÑABLE SE REFIERE A LA APORTACIÓN DEL
NEUROFISIÓLOGO WARREN MCCULLOCH Y EL MATEMÁTICO WALTER
PITTS: EN 1943 PUBLICARON A LOGICAL CALCULUS OF THE IDEAS IMMANENT
IN NERVOUS ACTIVITY. EL ARTÍCULO DE MCCULLOCH Y PITTS FUE
IMPORTANTE, ENTRE OTRAS RAZONES, PORQUE EN ÉL SE TRATA AL
CEREBRO COMO A UN ORGANISMO COMPUTACIONAL. PROPUSIERON LA
CONSTRUCCIÓN DE MÁQUINAS DE COMPUTAR CON UNA ESTRUCTURA
ABSTRACTA SIMILAR A LA QUE CREYERON ENCONTRAR EN LAS REDES
NEURONALES BIOLÓGICAS, AUNQUE, A DIFERENCIA DE LAS REDES
CONEXIONISTAS ACTUALES, DIRIGIDAS POR UN ENFOQUE LÓGICO Y NO
UNO PROBABILÍSTICO. DIERON MÁS IMPORTANCIA AL APRENDIZAJE QUE A
DISPOSICIONES INNATAS EN LA FORMACIÓN DE LAS CONEXIONES ENTRE
LAS UNIDADES, Y DEMOSTRARON QUE REDES NEURONALES SENCILLAS
CONECTADAS ENTRE SÍ MEDIANTE SINAPSIS EXCITADORAS E INHIBIDORAS
Y ASIGNANDO UN VALOR UMBRAL PARA LA ACTIVACIÓN DE LA UNIDAD DE
SALIDA, ERAN CAPACES DE REPRESENTAR ADECUADAMENTE LAS LEYES
LÓGICAS FUNDAMENTALES. A ESTAS NEURONAS SENCILLAS LAS
LLAMARON NEURONAS “FORMALES”; ACTUALMENTE A LAS REDES
CONSTITUIDAS POR DICHAS UNIDADES SE LAS SUELE LLAMAR REDES DE
MCCULLOCH-PITTS. AUNQUE INTENTARON MODELAR ASPECTOS
ELEMENTALES DE LAS NEURONAS BIOLÓGICAS, LAS NEURONAS FORMALES
ERAN SIMPLEMENTE CONMUTADORES LÓGICOS, SEMEJANTES A LOS
CIRCUITOS LÓGICOS QUE SE PUEDEN CREAR MEDIANTE INTERRUPTORES Y
POR LOS QUE PUEDE FLUIR LA CORRIENTE ELÉCTRICA.
EN 1947 MCCULLOCH Y PITTS ESCRIBIERON HOW WE KNOW UNIVERSALS:
THE PERCEPTION OF AUDITORY AND VISUAL FORMAS, OBRA EN LA QUE
TRATARON EL PROBLEMA DEL RECONOCIMIENTO DE PATRONES O
PROBLEMA DEL RECONOCIMIENTO DE VARIACIONES DE UN MISMO PATRÓN
Y EN LA QUE PRESENTARON DOS REDES. LA PRIMERA TENÍA COMO
OBJETIVO RECONOCER PROPIEDADES COMUNES EN DISTINTOS INDIVIDUOS
(PROPIEDADES INVARIANTES DEL MISMO PATRÓN); LA SEGUNDA ERA
CAPAZ DE GENERAR EL PATRÓN A PARTIR DE EJEMPLOS DE DICHO PATRÓN.
HICIERON UNA INTERPRETACIÓN BIOLÓGICA DE ESTAS REDES SUPONIENDO
QUE LAS REDES NEURONALES DE LOS CÓRTICES AUDITIVO Y VISUAL ERAN
REDES DEL PRIMER TIPO Y QUE EL COLÍCULO SUPERIOR (INVOLUCRADO EN
EL CONTROL DEL MOVIMIENTO DE LOS OJO) ERA UNA RED DEL SEGUNDO
TIPO.

VOLVER AL ÍNDICE

EN LA DÉCADA DE LOS CINCUENTA LAS REDES NEURONALES SE


UTILIZARON PARA DAR CUENTA DE DOS CAPACIDADES IMPORTANTES DE
LA MENTE HUMANA: LA MEMORIA ASOCIATIVA Y EL RECONOCIMIENTO DE
PATRONES.

VI.2.1. LA MEMORIA ASOCIATIVA

EMPECEMOS CON LA MEMORIA ASOCIATIVA: LA ASOCIACIÓN ENTRE


RECUERDOS ES UN HECHO CONOCIDO DESDE HACE MUCHO TIEMPO;
CUANDO DOS RECUERDOS TIENE ALGÚN ASPECTO COMÚN QUEDAN
LIGADOS ENTRE SÍ DE TAL MODO QUE UNO PUEDE EVOCAR A OTRO.
EL PRIMER TRABAJO EN ESTE CAMPO CORRESPONDE A WILFRID K.
TAYLOR CON SU OBRA DE 1956 ELECTRICAL SIMULATION OF SOME NERVOUS
SYSTEM FUNCTIONAL ACTIVITIES. TAYLOR PROPONE UNA RED EN TRES
CAPAS: UNA CON UNIDADES SENSORIALES, OTRA CON UNIDADES
ASOCIATIVAS Y LA ÚLTIMA CON UNIDADES MOTORAS. LOS PESOS DE LAS
SINAPSIS SON MODIFICABLES Y LAS UNIDADES YA NO SON NEURONAS
BIESTABLES (TODO-O-NADA), AL MODO DE LAS NEURONAS FORMALES DE
MCCULLOCH-PITTS, SINO DISPOSITIVOS ANALÓGICOS. EL PROCEDIMIENTO
DE ENTRENAMIENTO ES LA REGLA DE HEBB: SE AUMENTAN LOS PESOS
ACTIVADOS SI SE ACTIVAN LAS UNIDADES MOTORAS DESEADAS.
INICIALMENTE SE LE PRESENTAN PARES DE PATRONES; DE ESE PAR DE
PATRONES UNO PROVOCA UNA RESPUESTA PRECISA EN LAS NEURONAS
MOTORAS Y EL OTRO NO; MEDIANTE EL APRENDIZAJE, LA RED CONSIGUE
QUE ESTOS ÚLTIMOS PATRONES, LOS QUE ORIGINARIAMENTE NO
PROVOCABAN LA RESPUESTA EN LAS NEURONAS MOTORAS, AHORA SÍ LO
HAGAN. EN ESTE SENTIDO SE PUEDE DECIR QUE LA RED CONSIGUE
ASOCIAR PATRONES SENSORIALES DIFERENTES, Y MUESTRA UN
COMPORTAMIENTO PARECIDO AL CONDICIONAMIENTO PAVLOVIANO.
ADEMÁS EN SU RED, LA MEMORIA ASOCIADA SE ALMACENA EN EL PATRÓN
DE PESOS Y POR LO TANTO DE FORMA DISTRIBUIDA.
EN TRABAJOS POSTERIORES TAYLOR CONSTRUYÓ UNA RED MÁS
ELABORADA, CON SINAPSIS QUE VOLVÍAN DE LAS UNIDADES MOTORAS A
LAS UNIDADES SENSORIALES Y CON SINAPSIS ENTRE UNIDADES DE LA
MISMA CAPA. ESTA RED ERA MÁS EFICAZ EN LA ASOCIACIÓN DE
ESTÍMULOS APAREADOS Y SE MOSTRÓ TAMBIÉN CAPAZ DE DISCRIMINAR
PATRONES (RECOGIENDO POR TANTO LAS CAPACIDADES DE LOS
PERCEPTRONES Y ADALINES). EN 1964 (CORTICO-THALAMIC ORGANIZATION
AND MEMORY) AVENTURÓ INCLUSO UNA INTERPRETACIÓN BIOLÓGICA DE
SU RED, SUGIRIENDO QUE LAS ÁREAS DE ASOCIACIÓN DE LA CORTEZA
CEREBRAL Y EL TÁLAMO CONTENÍAN ESAS REDES.
LAS REDES ANTERIORES ASOCIAN INDIRECTAMENTE EL ELEMENTO A Y
EL ELEMENTO B AL ESTAR ASOCIADOS AMBOS CON C (COMO OCURRE CON
EL CONDICIONAMIENTO CLÁSICO); ESTUDIOS DE LOS AÑOS SESENTA Y
SETENTA MOSTRARON QUE ESTAS REDES PUEDEN SERVIR TAMBIÉN PARA
REPRESENTAR LA MEMORIA ASOCIATIVA ACCESIBLE O DIRECCIONABLE
POR EL CONTENIDO; LLAMAMOS MEMORIA ACCESIBLE POR EL CONTENIDO
A AQUELLA QUE NOS PERMITE RECORDAR ÍTEMS A PARTIR DE
DESCRIPCIONES PARCIALES DE SUS CONTENIDOS O CARACTERÍSTICAS,
INCLUSO CUANDO ALGUNA DE ESTAS DESCRIPCIONES ES ERRÓNEA. Y
PRECISAMENTE POR ESTA CAPACIDAD ACTUALMENTE A LAS REDES
ASOCIATIVAS SE LAS LLAMA TAMBIÉN MEMORIAS ASOCIATIVAS
DIRECCIONABLES O ACCESIBLES POR CONTENIDO (ACAMS).

VOLVER AL ÍNDICE
VI.2.2. EL RECONOCIMIENTO DE PATRONES

EN CUANTO AL RECONOCIMIENTO DE PATRONES, CABE DESTACAR LO


SIGUIENTE: EN ESENCIA EL PROBLEMA CONSISTE EN EXPLICAR CÓMO SE
PUEDE RECONOCER QUE INDIVIDUOS DISTINTOS PERTENECEN, NO
OBSTANTE, AL MISMO TIPO. UN CASO TÍPICO DE RECONOCIMIENTO DE
PATRONES ES NUESTRA CAPACIDAD DE INTERPRETAR COMO “A” SIGNOS
QUE SIN EMBARGO SON DISTINTOS (“A”, “A”, “A”, “A”, “A”, “A”), PERO
EVIDENTEMENTE ESTA CAPACIDAD APARECE TAMBIÉN EN OTROS
CONTEXTOS: SOMOS CAPACES DE RECONOCER EL ROSTRO DE UNA
PERSONA EN DISTINTAS CONDICIONES DE LUMINOSIDAD E INCLUSO
AUNQUE CAMBIE SU PEINADO, SU MAQUILLAJE O SE DEJE BARBA; UN
ANIMAL DEBE RECONOCER LOS INDIVIDUOS DE OTRA ESPECIE COMO
SIENDO LA PRESA CON LA QUE SE HA DE ALIMENTAR, O SU POSIBLE PAREJA
PARA LA REPRODUCCIÓN,...
YA SE HA CITADO LA APORTACIÓN DE MCCULLOCH Y PITTS EN ESTE
CAMPO, POR LO QUE AHORA PODEMOS REFERIRNOS A OTROS AUTORES,
COMENZANDO POR JOHN VON NEUMANN: EN SU ESCRITO DE 1956,
PROBABILISTIC LOGICS AND THE SYNTHESIS OF RELIABLE ORGANISMS FROM
UNRELIABLE COMPONENTS, MEJORÓ LAS REDES MCCULLOCH-PITTS
CREANDO REDES CONFIABLES: EN LAS REDES ORIGINALES DE
MCCULLUCH-PITTS CADA UNIDAD ACTUABA REPRESENTANDO UNA
UNIDAD INFORMATIVA Y LO HACÍA CON LA LÓGICA TODO-O-NADA. ESTA
REDES NO SON MUY CONFIABLES PUES EL DAÑO EN UNA UNIDAD PUEDE
TENER EFECTOS CATASTRÓFICOS EN LA COMPUTACIÓN. PARA RESOLVER
ESTA DIFICULTAD VON NEUMANN INTRODUJO LA REDUNDANCIA EN LA
RED: UNA UNIDAD INFORMATIVA NO SE REPRESENTA MEDIANTE UNA
NEURONA SINO MEDIANTE LA ACTIVACIÓN SINCRÓNICA DE UN CÚMULO DE
NEURONAS (POR EJEMPLO SE PUEDE REPRESENTAR 1 CUANDO MÁS DE LA
MITAD ESTÁ ACTIVADA Y 0 EN CASO CONTRARIO). VON NEUMANN PROBÓ
QUE ESTAS REDES REDUNDANTES PUEDEN REALIZAR CÁLCULOS
ARITMÉTICOS DE MODO MUY CONFIABLE.
EN 1963 SHAMUEL WINOGRAD Y JACK D. COWAN ESCRIBIERON
RELIABLE COMPUTATION IN THE PRESENCE OF NOISE. EN ESTA OBRA
RECOGIERON Y MEJORARON LAS IDEAS DE VON NEUMANN, DEFENDIENDO
UNA PROPUESTA AÚN MÁS DISTRIBUIDA DEL CONOCIMIENTO: EN LAS
REDES DE WINOGRAD-COWAN UN BIT O UNIDAD DE INFORMACIÓN SE
REPRESENTABA MEDIANTE VARIAS NEURONAS, COMO EN LAS REDES DE
VON NEUMANN, PERO, Y ESTA ERA LA NOVEDAD, CADA NEURONA
REPRESENTABA PARCIALMENTE VARIOS BITS.

LA FIGURA DE FRANK ROSENBLATT ES IMPRESCINDIBLE PAR ENTENDER


EL DESARROLLO DEL CONEXIONISMO. EN SUS OBRAS DE 1958 THE
PERCEPTRON, A PROBABILISTIC MODEL FOR INFORMATION STORAGE AND
ORGANIZATION IN THE BRAIN Y DE 1962 PRINCIPLES OF NEURODYNAMICS,
DEFIENDE LA IMPORTANCIA DE LAS REDES NEURONALES PARA LA
COMPUTACIÓN Y DE LOS MÉTODOS PROBABILÍSTICOS MÁS QUE DE LOS
LÓGICOS EN EL USO DE LAS REDES, MEJORA LA REGLA DE APRENDIZAJE DE
HEBB Y PRESENTA UNA RED A LA QUE LLAMÓ “PERCEPTRÓN”. EN SU
VERSIÓN MÁS SENCILLA, EL PERCEPTRÓN CONSTA DE DOS CAPAS: LA DE
ENTRADA O CAPA CON UNIDADES SENSORIALES Y, CONECTADA CON LA
ANTERIOR, LA DE SALIDA O CAPA CON UNIDADES MOTORAS. LAS
UNIDADES ERAN UNIDADES MCCULLOCH-PITTS (PODÍAN TOMAR
SIMPLEMENTE LOS VALORES ACTIVADO-DESACTIVADO). INICIALMENTE
LOS PESOS DE LAS CONEXIONES ERAN ALEATORIOS, Y EL APRENDIZAJE
CONSISTÍA EN LA MODIFICACIÓN DE LOS PESOS DE TAL FORMA QUE DADA
UNA ENTRADA SE CONSIGUIESE LA SALIDA DESEADA. ROSENBLATT
ENCONTRÓ UN SENCILLO PROCEDIMIENTO DE ENTRENAMIENTO CON EL
CUAL LA RED PODÍA DAR CON LOS PESOS REQUERIDOS PARA TAL TAREA.
EL PERCEPTRÓN ERA CAPAZ DE RECONOCER PATRONES SENCILLOS Y DE
GENERALIZAR SIMILITUDES ENTRE PATRONES. PERO A PESAR DE LAS
ESPERANZAS QUE MUCHOS INVESTIGADORES EN ESTE TIPO DE RED,
PRONTO SE VIO QUE TENÍA SERIAS LIMITACIONES, QUE SE EJEMPLIFICARON
EN LA IMPOSIBILIDAD DE LA RED PARA RESOLVER UNA TAREA LÓGICA
APARENTEMENTE SENCILLA: LA DEL PROBLEMA DE LA DISYUNCIÓN
EXCLUSIVA. EN TÉRMINOS MÁS TÉCNICOS, SE VIO QUE ERA INCAPAZ DE
CLASIFICAR CLASES O PATRONES NO SEPARABLES LINEALMENTE (VER MÁS
ADELANTE LA EXPOSICIÓN DEL PERCEPTRÓN Y DEL PROBLEMA CITADO).

EN ESTE BREVE RECORRIDO DE LA HISTORIA DEL CONEXIONISMO ES


PRECISO REFERIRSE A LA TRAYECTORIA DE MARVIN MINSKY, COMPAÑERO
DE ROSENBLATT EN EL INSTITUTO. EN SUS PRIMEROS ESCRITOS MANTUVO
ALGUNAS TESIS QUE, CLARAMENTE, SON UN ANTECEDENTE DEL
CONEXIONISMO:
• CARÁCTER RELATIVAMENTE INDIFERENCIADO DEL CEREBRO PUES
AUNQUE SE DAÑE UNA PARTE OTRAS PUEDEN REALIZAR SU
FUNCIÓN, PARTICULARMENTE SI EL DAÑO ES EN UNA ÉPOCA
TEMPRANA;
• IMPORTANCIA DEL APRENDIZAJE EN LA ORGANIZACIÓN DE LAS
REDES NEURONALES;
• IMPORTANCIA DEL ESTUDIO DEL CEREBRO Y DEL COMPORTAMIENTO
DE LAS NEURONAS PARA LA CONSTRUCCIÓN DE UNA MÁQUINA QUE
REPRODUZCA ASPECTOS SUSTANCIALES DE LA MENTE HUMANA.
FUE ÉL PRECISAMENTE UNO DE LOS PRIMEROS EN AFIRMAR QUE EL
CEREBRO NO ES OTRA COSA QUE UNA “MÁQUINA DE CARNE”. ESTAS TESIS
PERTENECEN A SUS PRIMERAS INVESTIGACIONES (CON LAS QUE CONSIGUIÓ
EL GRADO DE DOCTOR). SIN EMBARGO, PRONTO ABANDONÓ ESTE
PLANTEAMIENTO CONEXIONISTA DEFENDIENDO LA IDEA DE QUE ES
POSIBLE COMPRENDER LA MENTE HUMANA PRESCINDIENDO DEL ESTUDIO
DEL CEREBRO Y ATENDIENDO EXCLUSIVAMENE A SUS MECANISMOS O
COMPORTAMIENTO. COMO SE SABE, ESTA TESIS ES UNO DE LOS PRINCIPIOS
FUNDAMENTALES DE LA PSICOLOGÍA COGNITIVA TRADICIONAL, POR LO
QUE, EN RESUMEN, SE PODRÍA DECIR QUE LAS PRIMERAS PROPUESTAS DE
MINSKY FAVORECIERON LAS TESIS CONEXIONISTAS Y LAS SEGUNDAS (POR
LAS QUE ES CÉLEBRE) LAS TESIS DE LA PSICOLOGÍA COGNITIVA CLÁSICA.

OTRA IMPORTANTE Y CURIOSA APORTACIÓN FUE LA DE O. SELFRIDGE


CON SU OBRA DE 1959 PANDEMONIUM: A PARADIGM FOR LEARNING, EN
DONDE LLAMÓ “PANDEMONIUM” A SU MODELO DE PROCESAMIENTO
DISTRIBUIDO Y PARALELO DE LA INFORMACIÓN. SU PROPUESTA ES
IMPORTANTE PORQUE SU MODELO PARA EL RECONOCIMIENTO DE
PATRONES DESCANSA EN EL PROCESAMIENTO INTERACTIVO REALIZADO
POR UN CONJUNTO DE UNIDADES DE PROCESAMIENTO; Y ES TAMBIÉN
CURIOSA PORQUE EN VEZ DE HABLAR DE NEURONAS PARA REFERIRSE A
LAS UNIDADES DE PROCESAMIENTO LES DIÓ EL NOMBRE DE “DEMONIOS”
(INCLUSO EN LOS LIBROS QUE EXPLICAN EL MODELO SE LOS DIBUJA COMO
PEQUEÑOS DIABLILLOS). ES HABITUAL PRESENTAR ESTE MODELO COMO UN
INTENTO DE COMPRENDER EL RECONOCIMIENTO DE LAS LETRAS DEL
ALFABETO. MÁS ADELANTE SE PRESENTA EL PANDEMONIUM CON CON
CIERTO DETALLE.

BERNARD WIDROW Y MARCIAL HOFF (ADAPTIVE SWITCHING


CIRCUITS,1960) INVENTARON UNA VARIANTE DEL PERCEPTRÓN Y UN NUEVO
PROCEDIMIENTO DE APRENDIZAJE, LA REGLA DELTA DEL APRENDIZAJE.
LLAMARON “ADALINE” A SU RED (POR ADAPTIVE LINEAR NEURON,
NEURONA LINEAL ADAPTATIVA). EN REALIDAD, LA ÚNICA DIFERENCIA CON
EL PERCEPTRÓN ES EL PROCEDIMIENTO DE APRENDIZAJE O
ENTRENAMIENTO QUE UTILIZARON. ERA TAMBIÉN UNA RED DE DOS CAPAS
(CAPA DE ENTRADA Y CAPA DE SALIDA) INTERCONECTAS, Y COMPUESTAS
POR UNIDADES BIESTABLES. SU FINALIDAD ERA TAMBIÉN EL
RECONOCIMIENTO DE PATRONES. EL ADALINE FUE LA PRIMERA RED
NEURONAL APLICADA A UN PROBLEMA REAL (COMO FILTRO PARA
ELIMINAR LOS ECOS EN LAS LÍNEAS TELEFÓNICAS) Y SE HA USADO
COMERCIALMENTE DURANTE VARIAS DÉCADAS.

VOLVER AL ÍNDICE

VI.2.3. LIMITACIONES DE PERCEPTRONES Y ADALINES ELEMENTALES

MARVIN MINSKY Y SEYMOUR PAPERT, PUBLICARON EN 1969


PERCEPTRONS: AN INTRODUCTION TO COMPUTATIONAL GEOMETRY: EN ESTE
LIBRO ESTUDIARON LOS PERCEPTRONES Y DEMOSTRARON QUE LOS
PERCEPTRONES Y ADALINES ELEMENTALES (LOS QUE CONSTAN SÓLO DE
DOS CAPAS) ERAN INCAPACES DE DISTINGUIR ENTRE PATRONES TAN
SENCILLOS COMO T Y C, NI DE LLEVAR A CABO TAREAS LÓGICAS SIMPLES,
COMO LA DE DECIDIR LA TABLA DE VERDAD DE LA DISYUNCIÓN
EXCLUSIVA; PROBARON MATEMÁTICAMENTE QUE DICHAS REDES, AUNQUE
PUDIESEN MODIFICAR SUS PESOS MEDIANTE REGLAS DE APRENDIZAJE, NO
PODÍAN RESOLVER MÁS QUE PROBLEMAS LINEALMENTE SEPARABLES.
ADEMÁS, AMPLIARON SUS CRÍTICAS CONJETURANDO QUE ESTA
DIFICULTAD NO SE PODRÍA SUPERAR AÑADIENDO UNIDADES OCULTAS EN
REDES MULTICAPA. ESTO ÚLTIMO SE DEMOSTRÓ FALSO A PARTIR DE 1986,
CUANDO SE DESCUBRIÓ LA REGLA DELTA GENERALIZADA Y LA VALIDEZ
DE SU USO EN REDES CON CAPAS OCULTAS. ESTE TIPO DE REDES Y LA
REGLA CITADA PERMITIÓ RESOLVER EL PROBLEMA MÁS FAMOSO
PLANTEADO A LOS PERCEPTRONES Y ADALINES, EL PROBLEMA DE LA
DISYUNCIÓN EXCLUSIVA ANTES CITADO. SE SUELE INDICAR QUE COMO
CONSECUENCIA DE LAS CRÍTICAS DE ESTOS AUTORES LAS AUTORIDADES
AMERICANAS DIRIGIERON SUS FONDOS A LA INTELIGENCIA ARTIFICIAL Y
LA PSICOLOGÍA COGNITIVA CLÁSICA, CON EL CONSIGUIENTE FRENO DE LA
INVESTIGACIÓN EN LOS MODELOS DE COMPUTACIÓN CONEXIONISTA.

VI.3. AÑOS SETENTA Y OCHENTA

J. A. ANDERSON ESCRIBIÓ EN 1973 EL ARTÍCULO A THEORY FOR THE


RECOGNITION OF ITEMS FROM SHORT MEMORIZED LISTS Y EN 1977 NEURONAL
MODELS WITH COGNITIVE IMPLICATIONS. EN ESTOS ESCRITOS PRESENTÓ
ANÁLISIS MATEMÁTICOS DE ALGUNAS PROPIEDADES DE LAS REDES
NEURONALES Y DEFENDIÓ LA RELEVANCIA DE LAS REPRESENTACIONES
DISTRIBUIDAS EN DISTINTOS CAMPOS DE LA PSICOLOGÍA, POR EJEMPLO EN
EL DEL APRENDIZAJE DE CONCEPTOS; SUS INVESTIGACIONES FUERON
TAMBIÉN IMPORTANTES EN EL CAMPO DE LA MEMORIA ASOCIATIVA POR
CONTENIDO Y DE NUEVOS MODELOS DE REDES.
STEPHEN GROSSBERG ES UNO DE LOS MÁS DESTACADOS
INVESTIGADORES EN EL CAMPO CONEXIONISTA; SUS PROPUESTAS
APARECEN YA EN LOS AÑOS SESENTA Y CONTINÚAN EN NUESTROS DÍAS.
HA ESCRITO MUCHOS LIBROS Y DESARROLLADO DIVERSOS MODELOS DE
REDES (TAL VEZ LA MÁS CONOCIDA ES LA RED QUE PROPUSO EN 1967,
AVALANCHA, PARA EL RECONOCIMIENTO DEL HABLA Y EL APRENDIZAJE
DEL MOVIMIENTO DE LOS BRAZOS DE UN ROBOT); ADEMÁS DE REALIZAR
LAS PRIMERAS INVESTIGACIONES SOBRE EL APRENDIZAJE COMPETITIVO,
SUBRAYÓ LA IMPORTANCIA DE LOS MODELOS CONEXIONISTAS EN LOS
CAMPOS DE LA PERCEPCIÓN Y DE LA MEMORIA. DESTACA SU LIBRO DE 1982
STUDIES OF MIND AND BRAIN.

HOFSTADTER (GÖDEL, ESCHER, BACH: AN ETERNAL GOLDEN BRAID, 1979


Y METAMAGICAL THEMAS, 1985) DEFIENDE LA EXISTENCIA DE DOS NIVELES
DE PROCESAMIENTO, EL QUE ESTUDIA LA PSICOLOGÍA COGNITIVA CLÁSICA
(NIVEL ESTRUCTURAL) Y UN NIVEL DE PROCESAMIENTO MÁS BAJO, Y EN EL
QUE SE SITÚAN LOS TRABAJOS DEL CONEXIONISMO (NIVEL
MICROESTRUCTURAL), DE AHÍ QUE EN OCASIONES SE HABLE DEL
CONEXIONISMO COMO UN ENFOQUE QUE ANALIZA LA
“MICROESTRUCTURA DE LA COGNICIÓN” PARA COMPRENDER LOS
FENÓMENOS COGNITIVOS.
ES EN LOS AÑOS OCHENTA CUANDO EL CONEXIONISMO EMPIEZA A
TENER UN ÉXITO CONSIDERABLE, Y EN ESTA TRAYECTORIA ES
FUNDAMENTAL LA OBRA DE G. E. HINTON, Y J. A. ANDERSON EDITADA EN
1981 PARALLEL MODELS OF ASSOCIATIVE MEMORY, Y LA OBRA DE J. A.
ANDERSON DE 1983 COGNITIVE AND PSYCHOLOGICAL COMPUTATION WITH
NEURAL MODELS. EN ESTA ÚLTIMA ANDERSON ESTUDIA EL HARDWARE DEL
SISTEMA NERVIOSO REAL Y PROPONE MODELOS NEURONALES SENCILLOS
BASADOS EN LOS BIOLÓGICOS Y DESTINADOS A EXPLICAR LOS PROCESOS
COGNITIVOS.
J. A. FELDMAN Y D. H. BALLARD (1982: CONNECTIONIST MODELS AND
THEIR PROPERTIES. COGNITIVE SCIENCIE, 6) DESARROLLARON MUCHOS DE
LOS PRINCIPIOS COMPUTACIONALES DEL ENFOQUE PROCESAMIENTO
DISTRIBUIDO PARALELO (PDP), UTILIZARON POR PRIMERA VEZ EL NOMBRE
DE CONEXIONISMO PARA ESTE ENFOQUE, Y CRITICARON EL ENFOQUE
TRADICIONAL DE LA INTELIGENCIA ARTIFICIAL DESTACANDO SU POCA
PLAUSIBILIDAD BIOLÓGICA. PERO SIN DUDA EL IMPULSO DEFINITIVO A LA
INVESTIGACIÓN CONEXIONISTA TIENE COMO PROTAGONISTAS A DAVID. E.
RUMELHART, JAMES. L. MCCLELLAND Y VARIOS INVESTIGADORES MÁS
QUE FORMAN LO QUE SE HA LLAMADO “GRUPO PDP”, Y CULMINA CON LA
APARICIÓN DE LO QUE SE HA CONSIDERADO COMO LA “BIBLIA
CONEXIONISTA”, “PARALLEL DISTRIBUTED PROCESSING: EXPLORATIONS IN
THE MICROESTRUCTURE OF COGNITION” (DOS VOLÚMENES) EDITADA POR
RUMELHART Y MCCLELLAND EN 1986. EN ESTA OBRA SE TRATAN
IMPORTANTES CUESTIONES PERO SIN DUDA DESTACA LA DEMOSTRACIÓN
DE CÓMO LAS REDES CON MÁS DE DOS CAPAS PUEDEN SOLUCIONAR LAS
OBJECIONES MATEMÁTICAS PROPUESTAS POR MINSKY Y PAPERT Y QUE
TANTO LIMITARON EL DESARROLLO EN LA INVESTIGACIÓN DE REDES
NEURONALES.

A PARTIR DE PARALLEL DISTRIBUTED PROCESSING SE SUCEDEN MULTITUD


DE INVESTIGACIONES, ARTÍCULOS Y CONGRESOS, TANTO EN LOS CAMPOS
DE LA INTELIGENCIA ARTIFICIAL COMO EN LOS DE LA PSICOLOGÍA,
CONVIRTIÉNDOSE EL CONEXIONISMO EN UN MOVIMIENTO
REVOLUCIONARIO EN EL PANORAMA DE LA CIENCIA COGNITIVA. EN ESTE
CONTEXTO SE CREAN LA SOCIEDAD EUROPEA DE REDES NEURONALES
(ENNS) Y LA SOCIEDAD INTERNACIONAL DE REDES NEURONALES (INNS),
SOCIEDADES QUE ORGANIZAN CONGRESOS Y REUNIONES ANUALES Y
EDITAN REVISTAS PARA LA DIVULGACIÓN DE LAS INVESTIGACIONES EN
ESTE CAMPO DE INVESTIGACIÓN, REVISTAS ENTRE LAS QUE DESTACAN
NEURAL NETWORKS (REVISTA OFICIAL DE LA SOCIEDAD INTERNACIONAL DE
REDES NEURONALES); NETWORK, COMPUTATION IN NEURAL SYSTEM;
TRANSACTIONS ON NEURAL NETWORKS; NERUAL NETWORKS COUNCIL; NEURAL
COMPUTATION Y INTERNATIONAL JOURNAL OF NEURAL SYSTEMS.
DE OCTUBRE DE 1987 A FEBRERO DE 1988, EL INSTITUTO TECNOLÓGICO
DE MASSACHUSSETS (MIT), PATROCINADO POR LA OFICINA DE
TECNOLOGÍA TÁCTICA DE LA AGENCIA DE PROYECTOS DE INVESTIGACIÓN
AVANZADA DEL DEPARTAMENTO DE DEFENSA DE ESTADOS UNIDOS
(DARPA/TTO) LLEVÓ A CABO LA REVISIÓN DE LA INVESTIGACIÓN Y
TECNOLOGÍA BASADA EN REDES NEURONALES, REVISIÓN QUE SE PLASMÓ
EN EL LIBRO NEURAL NETWORK STUDY (DARPA 88).

EN ESPAÑA TAMBIÉN SE HA CREADO UNA SOCIEDAD PARA LA


INVESTIGACIÓN EN REDES NEURALES QUE YA HA ORGANIZADO VARIOS
CONGRESOS, SE ORGANIZAN SEMINARIOS (PRECISAMENTE EL QUE SE
REALIZÓ EN LA UNED EN EL CURSO 87-88 DIO LUGAR A LA EDICIÓN DE
INTRODUCCIÓN AL PROCESAMIENTO DISTRIBUIDO EN PARALELO, ALIANZA
EDITORIAL, EN DONDE SE REÚNEN LOS CAPITULOS MÁS IMPORTANTES
DE PARALLEL DISTRIBUTED PROCESSING). EL PROGRAMA EUROPEO DE
INVESTIGACIÓN ESPRIT HA FINANCIADO DIVERSOS PROYECTOS EN ESTE
CAMPO, PROYECTOS EN LOS QUE, EN ESPAÑA, HAN PARTICIPADO LAS
UNIVERSIDADES POLITÉCNICA Y AUTÓNOMA DE MADRID, LA POLITÉCNICA
DEL PAÍS VASCO, EL CENTRO DE ESTUDIOS AVANZADOS DE BLANES, EL
INSTITUTO DE CIBERNÉTICA DEL CSIC Y EL INSTITUTO DE INGENIERÍA DEL
CONOCIMIENTO (IIC), ENTRE OTROS.

CONEXIONISMO

VI. BREVE HISTORIA DEL CONEXIONISMO

VI.1. Hasta la primera mitad de nuestro siglo


VI.2. Años cincuenta y sesenta
VI.2.1. La memoria asociativa
VI.2.2. El reconocimiento de patrones
VI.2.3. Limitaciones de perceptrones y adalines elementales
VI.3. Años setenta y ochenta
Principio del formulario
w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es
Final del formulario

VI.1. HASTA LA PRIMERA MITAD DEL SIGLO XX

LAS PRIMERAS APORTACIONES DESTACABLES PROVIENEN DE LA


NEUROFISIOLOGÍA: LURIA, LASHLEY Y HEBB SE ENFRENTARON A LAS
DOCTRINAS DOMINANTES A FINALES DEL SIGLO XIX, DOCTRINAS QUE
DEFENDÍAN EL CARÁCTER LOCALISTA DEL ALMACENAMIENTO Y DE LAS
FUNCIONES DEL CEREBRO; FRENTE A ESTAS DOCTRINAS DEFENDIERON
UNA CONCEPCIÓN DISTRIBUIDA DE LOS SISTEMAS DE PROCESAMIENTO Y
MEMORIA DEL CEREBRO. SUS INVESTIGACIONES DEMOSTRARON QUE LA
ESPECIALIZACIÓN PODÍA DARSE EN RELACIÓN A GRANDES REGIONES DEL
CEREBRO, PERO EN ABSOLUTO EN LAS NEURONAS SINGULARES. LASHLEY
LLEVÓ TAN LEJOS LA HIPÓTESIS DISTRIBUIDA QUE POSTULÓ EL CARÁCTER
EQUIPOTENTE DEL CEREBRO (CUALQUIER REGIÓN DEL CEREBRO PUEDE
REALIZAR CUALQUIER TAREA DETERMINADA).
DE LOS TRES AUTORES CITADOS ES SIN DUDA DONALD HEBB EL MÁS
IMPORTANTE EN RELACIÓN CON DESARROLLO DEL CONEXIONISMO,
PARTICULARMENTE A PARTIR DE SU LIBRO PUBLICADO EN 1949 LA
ORGANIZACIÓN DE LA CONDUCTA. HEBB DEFENDIÓ LA CONEXIÓN ENTRE
PSICOLOGÍA Y FISIOLOGÍA, PROPUSO LA TESIS DEL CARÁCTER DISTRIBUIDO
DE LA INFORMACIÓN EN UNIDADES INFORMATIVAS Y FORMULÓ UNO DE
LOS PRIMEROS PROCEDIMIENTOS DE APRENDIZAJE (PROCEDIMIENTO QUE
ALGUNOS AUTORES CREEN QUE YA HABÍA SUGERIDO SANTIAGO RAMÓN Y
CAJAL): SI UN CONJUNTO DE NEURONAS CONECTADAS ENTRE SÍ SE
ACTIVAN REPETIDAMENTE, SUS SINAPSIS AUMENTAN SU CONDUCTIVIDAD,
O DE OTRO MODO: CONJUNTOS DE NEURONAS SINCRÓNICAMENTE
ACTIVADAS TIENDEN A ORGANIZARSE EN CONJUNTOS CONECTADOS.
ESTAS IDEAS DE HEBB HAN RESULTADO PARTICULARMENTE
FECUNDAS. POR EJEMPLO, YA EN 1954 ALBERT M. UTTLEY DEMOSTRÓ EN
THE CLASSIFICATION OF SIGNALS IN THE NERVOUS SYSTEM QUE REDES
ENTRENADAS CON EL MODELO DE APRENDIZAJE HEBBIANO ERAN CAPACES
DE RECONOCER PATRONES SIMPLES BINARIOS (111000, 110111, ...) EN CLASES
(POR EJEMPLO LAS QUE COMIENZAN POR 110).
EL SIGUIENTE HITO RESEÑABLE SE REFIERE A LA APORTACIÓN DEL
NEUROFISIÓLOGO WARREN MCCULLOCH Y EL MATEMÁTICO WALTER
PITTS: EN 1943 PUBLICARON A LOGICAL CALCULUS OF THE IDEAS IMMANENT
IN NERVOUS ACTIVITY. EL ARTÍCULO DE MCCULLOCH Y PITTS FUE
IMPORTANTE, ENTRE OTRAS RAZONES, PORQUE EN ÉL SE TRATA AL
CEREBRO COMO A UN ORGANISMO COMPUTACIONAL. PROPUSIERON LA
CONSTRUCCIÓN DE MÁQUINAS DE COMPUTAR CON UNA ESTRUCTURA
ABSTRACTA SIMILAR A LA QUE CREYERON ENCONTRAR EN LAS REDES
NEURONALES BIOLÓGICAS, AUNQUE, A DIFERENCIA DE LAS REDES
CONEXIONISTAS ACTUALES, DIRIGIDAS POR UN ENFOQUE LÓGICO Y NO
UNO PROBABILÍSTICO. DIERON MÁS IMPORTANCIA AL APRENDIZAJE QUE A
DISPOSICIONES INNATAS EN LA FORMACIÓN DE LAS CONEXIONES ENTRE
LAS UNIDADES, Y DEMOSTRARON QUE REDES NEURONALES SENCILLAS
CONECTADAS ENTRE SÍ MEDIANTE SINAPSIS EXCITADORAS E INHIBIDORAS
Y ASIGNANDO UN VALOR UMBRAL PARA LA ACTIVACIÓN DE LA UNIDAD DE
SALIDA, ERAN CAPACES DE REPRESENTAR ADECUADAMENTE LAS LEYES
LÓGICAS FUNDAMENTALES. A ESTAS NEURONAS SENCILLAS LAS
LLAMARON NEURONAS “FORMALES”; ACTUALMENTE A LAS REDES
CONSTITUIDAS POR DICHAS UNIDADES SE LAS SUELE LLAMAR REDES DE
MCCULLOCH-PITTS. AUNQUE INTENTARON MODELAR ASPECTOS
ELEMENTALES DE LAS NEURONAS BIOLÓGICAS, LAS NEURONAS FORMALES
ERAN SIMPLEMENTE CONMUTADORES LÓGICOS, SEMEJANTES A LOS
CIRCUITOS LÓGICOS QUE SE PUEDEN CREAR MEDIANTE INTERRUPTORES Y
POR LOS QUE PUEDE FLUIR LA CORRIENTE ELÉCTRICA.
EN 1947 MCCULLOCH Y PITTS ESCRIBIERON HOW WE KNOW UNIVERSALS:
THE PERCEPTION OF AUDITORY AND VISUAL FORMAS, OBRA EN LA QUE
TRATARON EL PROBLEMA DEL RECONOCIMIENTO DE PATRONES O
PROBLEMA DEL RECONOCIMIENTO DE VARIACIONES DE UN MISMO PATRÓN
Y EN LA QUE PRESENTARON DOS REDES. LA PRIMERA TENÍA COMO
OBJETIVO RECONOCER PROPIEDADES COMUNES EN DISTINTOS INDIVIDUOS
(PROPIEDADES INVARIANTES DEL MISMO PATRÓN); LA SEGUNDA ERA
CAPAZ DE GENERAR EL PATRÓN A PARTIR DE EJEMPLOS DE DICHO PATRÓN.
HICIERON UNA INTERPRETACIÓN BIOLÓGICA DE ESTAS REDES SUPONIENDO
QUE LAS REDES NEURONALES DE LOS CÓRTICES AUDITIVO Y VISUAL ERAN
REDES DEL PRIMER TIPO Y QUE EL COLÍCULO SUPERIOR (INVOLUCRADO EN
EL CONTROL DEL MOVIMIENTO DE LOS OJO) ERA UNA RED DEL SEGUNDO
TIPO.

VOLVER AL ÍNDICE

EN LA DÉCADA DE LOS CINCUENTA LAS REDES NEURONALES SE


UTILIZARON PARA DAR CUENTA DE DOS CAPACIDADES IMPORTANTES DE
LA MENTE HUMANA: LA MEMORIA ASOCIATIVA Y EL RECONOCIMIENTO DE
PATRONES.

VI.2.1. LA MEMORIA ASOCIATIVA

EMPECEMOS CON LA MEMORIA ASOCIATIVA: LA ASOCIACIÓN ENTRE


RECUERDOS ES UN HECHO CONOCIDO DESDE HACE MUCHO TIEMPO;
CUANDO DOS RECUERDOS TIENE ALGÚN ASPECTO COMÚN QUEDAN
LIGADOS ENTRE SÍ DE TAL MODO QUE UNO PUEDE EVOCAR A OTRO.
EL PRIMER TRABAJO EN ESTE CAMPO CORRESPONDE A WILFRID K.
TAYLOR CON SU OBRA DE 1956 ELECTRICAL SIMULATION OF SOME NERVOUS
SYSTEM FUNCTIONAL ACTIVITIES. TAYLOR PROPONE UNA RED EN TRES
CAPAS: UNA CON UNIDADES SENSORIALES, OTRA CON UNIDADES
ASOCIATIVAS Y LA ÚLTIMA CON UNIDADES MOTORAS. LOS PESOS DE LAS
SINAPSIS SON MODIFICABLES Y LAS UNIDADES YA NO SON NEURONAS
BIESTABLES (TODO-O-NADA), AL MODO DE LAS NEURONAS FORMALES DE
MCCULLOCH-PITTS, SINO DISPOSITIVOS ANALÓGICOS. EL PROCEDIMIENTO
DE ENTRENAMIENTO ES LA REGLA DE HEBB: SE AUMENTAN LOS PESOS
ACTIVADOS SI SE ACTIVAN LAS UNIDADES MOTORAS DESEADAS.
INICIALMENTE SE LE PRESENTAN PARES DE PATRONES; DE ESE PAR DE
PATRONES UNO PROVOCA UNA RESPUESTA PRECISA EN LAS NEURONAS
MOTORAS Y EL OTRO NO; MEDIANTE EL APRENDIZAJE, LA RED CONSIGUE
QUE ESTOS ÚLTIMOS PATRONES, LOS QUE ORIGINARIAMENTE NO
PROVOCABAN LA RESPUESTA EN LAS NEURONAS MOTORAS, AHORA SÍ LO
HAGAN. EN ESTE SENTIDO SE PUEDE DECIR QUE LA RED CONSIGUE
ASOCIAR PATRONES SENSORIALES DIFERENTES, Y MUESTRA UN
COMPORTAMIENTO PARECIDO AL CONDICIONAMIENTO PAVLOVIANO.
ADEMÁS EN SU RED, LA MEMORIA ASOCIADA SE ALMACENA EN EL PATRÓN
DE PESOS Y POR LO TANTO DE FORMA DISTRIBUIDA.
EN TRABAJOS POSTERIORES TAYLOR CONSTRUYÓ UNA RED MÁS
ELABORADA, CON SINAPSIS QUE VOLVÍAN DE LAS UNIDADES MOTORAS A
LAS UNIDADES SENSORIALES Y CON SINAPSIS ENTRE UNIDADES DE LA
MISMA CAPA. ESTA RED ERA MÁS EFICAZ EN LA ASOCIACIÓN DE
ESTÍMULOS APAREADOS Y SE MOSTRÓ TAMBIÉN CAPAZ DE DISCRIMINAR
PATRONES (RECOGIENDO POR TANTO LAS CAPACIDADES DE LOS
PERCEPTRONES Y ADALINES). EN 1964 (CORTICO-THALAMIC ORGANIZATION
AND MEMORY) AVENTURÓ INCLUSO UNA INTERPRETACIÓN BIOLÓGICA DE
SU RED, SUGIRIENDO QUE LAS ÁREAS DE ASOCIACIÓN DE LA CORTEZA
CEREBRAL Y EL TÁLAMO CONTENÍAN ESAS REDES.
LAS REDES ANTERIORES ASOCIAN INDIRECTAMENTE EL ELEMENTO A Y
EL ELEMENTO B AL ESTAR ASOCIADOS AMBOS CON C (COMO OCURRE CON
EL CONDICIONAMIENTO CLÁSICO); ESTUDIOS DE LOS AÑOS SESENTA Y
SETENTA MOSTRARON QUE ESTAS REDES PUEDEN SERVIR TAMBIÉN PARA
REPRESENTAR LA MEMORIA ASOCIATIVA ACCESIBLE O DIRECCIONABLE
POR EL CONTENIDO; LLAMAMOS MEMORIA ACCESIBLE POR EL CONTENIDO
A AQUELLA QUE NOS PERMITE RECORDAR ÍTEMS A PARTIR DE
DESCRIPCIONES PARCIALES DE SUS CONTENIDOS O CARACTERÍSTICAS,
INCLUSO CUANDO ALGUNA DE ESTAS DESCRIPCIONES ES ERRÓNEA. Y
PRECISAMENTE POR ESTA CAPACIDAD ACTUALMENTE A LAS REDES
ASOCIATIVAS SE LAS LLAMA TAMBIÉN MEMORIAS ASOCIATIVAS
DIRECCIONABLES O ACCESIBLES POR CONTENIDO (ACAMS).

VOLVER AL ÍNDICE

VI.2.2. EL RECONOCIMIENTO DE PATRONES

EN CUANTO AL RECONOCIMIENTO DE PATRONES, CABE DESTACAR LO


SIGUIENTE: EN ESENCIA EL PROBLEMA CONSISTE EN EXPLICAR CÓMO SE
PUEDE RECONOCER QUE INDIVIDUOS DISTINTOS PERTENECEN, NO
OBSTANTE, AL MISMO TIPO. UN CASO TÍPICO DE RECONOCIMIENTO DE
PATRONES ES NUESTRA CAPACIDAD DE INTERPRETAR COMO “A” SIGNOS
QUE SIN EMBARGO SON DISTINTOS (“A”, “A”, “A”, “A”, “A”, “A”), PERO
EVIDENTEMENTE ESTA CAPACIDAD APARECE TAMBIÉN EN OTROS
CONTEXTOS: SOMOS CAPACES DE RECONOCER EL ROSTRO DE UNA
PERSONA EN DISTINTAS CONDICIONES DE LUMINOSIDAD E INCLUSO
AUNQUE CAMBIE SU PEINADO, SU MAQUILLAJE O SE DEJE BARBA; UN
ANIMAL DEBE RECONOCER LOS INDIVIDUOS DE OTRA ESPECIE COMO
SIENDO LA PRESA CON LA QUE SE HA DE ALIMENTAR, O SU POSIBLE PAREJA
PARA LA REPRODUCCIÓN,...
YA SE HA CITADO LA APORTACIÓN DE MCCULLOCH Y PITTS EN ESTE
CAMPO, POR LO QUE AHORA PODEMOS REFERIRNOS A OTROS AUTORES,
COMENZANDO POR JOHN VON NEUMANN: EN SU ESCRITO DE 1956,
PROBABILISTIC LOGICS AND THE SYNTHESIS OF RELIABLE ORGANISMS FROM
UNRELIABLE COMPONENTS, MEJORÓ LAS REDES MCCULLOCH-PITTS
CREANDO REDES CONFIABLES: EN LAS REDES ORIGINALES DE
MCCULLUCH-PITTS CADA UNIDAD ACTUABA REPRESENTANDO UNA
UNIDAD INFORMATIVA Y LO HACÍA CON LA LÓGICA TODO-O-NADA. ESTA
REDES NO SON MUY CONFIABLES PUES EL DAÑO EN UNA UNIDAD PUEDE
TENER EFECTOS CATASTRÓFICOS EN LA COMPUTACIÓN. PARA RESOLVER
ESTA DIFICULTAD VON NEUMANN INTRODUJO LA REDUNDANCIA EN LA
RED: UNA UNIDAD INFORMATIVA NO SE REPRESENTA MEDIANTE UNA
NEURONA SINO MEDIANTE LA ACTIVACIÓN SINCRÓNICA DE UN CÚMULO DE
NEURONAS (POR EJEMPLO SE PUEDE REPRESENTAR 1 CUANDO MÁS DE LA
MITAD ESTÁ ACTIVADA Y 0 EN CASO CONTRARIO). VON NEUMANN PROBÓ
QUE ESTAS REDES REDUNDANTES PUEDEN REALIZAR CÁLCULOS
ARITMÉTICOS DE MODO MUY CONFIABLE.
EN 1963 SHAMUEL WINOGRAD Y JACK D. COWAN ESCRIBIERON
RELIABLE COMPUTATION IN THE PRESENCE OF NOISE. EN ESTA OBRA
RECOGIERON Y MEJORARON LAS IDEAS DE VON NEUMANN, DEFENDIENDO
UNA PROPUESTA AÚN MÁS DISTRIBUIDA DEL CONOCIMIENTO: EN LAS
REDES DE WINOGRAD-COWAN UN BIT O UNIDAD DE INFORMACIÓN SE
REPRESENTABA MEDIANTE VARIAS NEURONAS, COMO EN LAS REDES DE
VON NEUMANN, PERO, Y ESTA ERA LA NOVEDAD, CADA NEURONA
REPRESENTABA PARCIALMENTE VARIOS BITS.

LA FIGURA DE FRANK ROSENBLATT ES IMPRESCINDIBLE PAR ENTENDER


EL DESARROLLO DEL CONEXIONISMO. EN SUS OBRAS DE 1958 THE
PERCEPTRON, A PROBABILISTIC MODEL FOR INFORMATION STORAGE AND
ORGANIZATION IN THE BRAIN Y DE 1962 PRINCIPLES OF NEURODYNAMICS,
DEFIENDE LA IMPORTANCIA DE LAS REDES NEURONALES PARA LA
COMPUTACIÓN Y DE LOS MÉTODOS PROBABILÍSTICOS MÁS QUE DE LOS
LÓGICOS EN EL USO DE LAS REDES, MEJORA LA REGLA DE APRENDIZAJE DE
HEBB Y PRESENTA UNA RED A LA QUE LLAMÓ “PERCEPTRÓN”. EN SU
VERSIÓN MÁS SENCILLA, EL PERCEPTRÓN CONSTA DE DOS CAPAS: LA DE
ENTRADA O CAPA CON UNIDADES SENSORIALES Y, CONECTADA CON LA
ANTERIOR, LA DE SALIDA O CAPA CON UNIDADES MOTORAS. LAS
UNIDADES ERAN UNIDADES MCCULLOCH-PITTS (PODÍAN TOMAR
SIMPLEMENTE LOS VALORES ACTIVADO-DESACTIVADO). INICIALMENTE
LOS PESOS DE LAS CONEXIONES ERAN ALEATORIOS, Y EL APRENDIZAJE
CONSISTÍA EN LA MODIFICACIÓN DE LOS PESOS DE TAL FORMA QUE DADA
UNA ENTRADA SE CONSIGUIESE LA SALIDA DESEADA. ROSENBLATT
ENCONTRÓ UN SENCILLO PROCEDIMIENTO DE ENTRENAMIENTO CON EL
CUAL LA RED PODÍA DAR CON LOS PESOS REQUERIDOS PARA TAL TAREA.
EL PERCEPTRÓN ERA CAPAZ DE RECONOCER PATRONES SENCILLOS Y DE
GENERALIZAR SIMILITUDES ENTRE PATRONES. PERO A PESAR DE LAS
ESPERANZAS QUE MUCHOS INVESTIGADORES EN ESTE TIPO DE RED,
PRONTO SE VIO QUE TENÍA SERIAS LIMITACIONES, QUE SE EJEMPLIFICARON
EN LA IMPOSIBILIDAD DE LA RED PARA RESOLVER UNA TAREA LÓGICA
APARENTEMENTE SENCILLA: LA DEL PROBLEMA DE LA DISYUNCIÓN
EXCLUSIVA. EN TÉRMINOS MÁS TÉCNICOS, SE VIO QUE ERA INCAPAZ DE
CLASIFICAR CLASES O PATRONES NO SEPARABLES LINEALMENTE (VER MÁS
ADELANTE LA EXPOSICIÓN DEL PERCEPTRÓN Y DEL PROBLEMA CITADO).

EN ESTE BREVE RECORRIDO DE LA HISTORIA DEL CONEXIONISMO ES


PRECISO REFERIRSE A LA TRAYECTORIA DE MARVIN MINSKY, COMPAÑERO
DE ROSENBLATT EN EL INSTITUTO. EN SUS PRIMEROS ESCRITOS MANTUVO
ALGUNAS TESIS QUE, CLARAMENTE, SON UN ANTECEDENTE DEL
CONEXIONISMO:
• CARÁCTER RELATIVAMENTE INDIFERENCIADO DEL CEREBRO PUES
AUNQUE SE DAÑE UNA PARTE OTRAS PUEDEN REALIZAR SU
FUNCIÓN, PARTICULARMENTE SI EL DAÑO ES EN UNA ÉPOCA
TEMPRANA;
• IMPORTANCIA DEL APRENDIZAJE EN LA ORGANIZACIÓN DE LAS
REDES NEURONALES;
• IMPORTANCIA DEL ESTUDIO DEL CEREBRO Y DEL COMPORTAMIENTO
DE LAS NEURONAS PARA LA CONSTRUCCIÓN DE UNA MÁQUINA QUE
REPRODUZCA ASPECTOS SUSTANCIALES DE LA MENTE HUMANA.
FUE ÉL PRECISAMENTE UNO DE LOS PRIMEROS EN AFIRMAR QUE EL
CEREBRO NO ES OTRA COSA QUE UNA “MÁQUINA DE CARNE”. ESTAS TESIS
PERTENECEN A SUS PRIMERAS INVESTIGACIONES (CON LAS QUE CONSIGUIÓ
EL GRADO DE DOCTOR). SIN EMBARGO, PRONTO ABANDONÓ ESTE
PLANTEAMIENTO CONEXIONISTA DEFENDIENDO LA IDEA DE QUE ES
POSIBLE COMPRENDER LA MENTE HUMANA PRESCINDIENDO DEL ESTUDIO
DEL CEREBRO Y ATENDIENDO EXCLUSIVAMENE A SUS MECANISMOS O
COMPORTAMIENTO. COMO SE SABE, ESTA TESIS ES UNO DE LOS PRINCIPIOS
FUNDAMENTALES DE LA PSICOLOGÍA COGNITIVA TRADICIONAL, POR LO
QUE, EN RESUMEN, SE PODRÍA DECIR QUE LAS PRIMERAS PROPUESTAS DE
MINSKY FAVORECIERON LAS TESIS CONEXIONISTAS Y LAS SEGUNDAS (POR
LAS QUE ES CÉLEBRE) LAS TESIS DE LA PSICOLOGÍA COGNITIVA CLÁSICA.

OTRA IMPORTANTE Y CURIOSA APORTACIÓN FUE LA DE O. SELFRIDGE


CON SU OBRA DE 1959 PANDEMONIUM: A PARADIGM FOR LEARNING, EN
DONDE LLAMÓ “PANDEMONIUM” A SU MODELO DE PROCESAMIENTO
DISTRIBUIDO Y PARALELO DE LA INFORMACIÓN. SU PROPUESTA ES
IMPORTANTE PORQUE SU MODELO PARA EL RECONOCIMIENTO DE
PATRONES DESCANSA EN EL PROCESAMIENTO INTERACTIVO REALIZADO
POR UN CONJUNTO DE UNIDADES DE PROCESAMIENTO; Y ES TAMBIÉN
CURIOSA PORQUE EN VEZ DE HABLAR DE NEURONAS PARA REFERIRSE A
LAS UNIDADES DE PROCESAMIENTO LES DIÓ EL NOMBRE DE “DEMONIOS”
(INCLUSO EN LOS LIBROS QUE EXPLICAN EL MODELO SE LOS DIBUJA COMO
PEQUEÑOS DIABLILLOS). ES HABITUAL PRESENTAR ESTE MODELO COMO UN
INTENTO DE COMPRENDER EL RECONOCIMIENTO DE LAS LETRAS DEL
ALFABETO. MÁS ADELANTE SE PRESENTA EL PANDEMONIUM CON CON
CIERTO DETALLE.

BERNARD WIDROW Y MARCIAL HOFF (ADAPTIVE SWITCHING


CIRCUITS,1960) INVENTARON UNA VARIANTE DEL PERCEPTRÓN Y UN NUEVO
PROCEDIMIENTO DE APRENDIZAJE, LA REGLA DELTA DEL APRENDIZAJE.
LLAMARON “ADALINE” A SU RED (POR ADAPTIVE LINEAR NEURON,
NEURONA LINEAL ADAPTATIVA). EN REALIDAD, LA ÚNICA DIFERENCIA CON
EL PERCEPTRÓN ES EL PROCEDIMIENTO DE APRENDIZAJE O
ENTRENAMIENTO QUE UTILIZARON. ERA TAMBIÉN UNA RED DE DOS CAPAS
(CAPA DE ENTRADA Y CAPA DE SALIDA) INTERCONECTAS, Y COMPUESTAS
POR UNIDADES BIESTABLES. SU FINALIDAD ERA TAMBIÉN EL
RECONOCIMIENTO DE PATRONES. EL ADALINE FUE LA PRIMERA RED
NEURONAL APLICADA A UN PROBLEMA REAL (COMO FILTRO PARA
ELIMINAR LOS ECOS EN LAS LÍNEAS TELEFÓNICAS) Y SE HA USADO
COMERCIALMENTE DURANTE VARIAS DÉCADAS.

VOLVER AL ÍNDICE

VI.2.3. LIMITACIONES DE PERCEPTRONES Y ADALINES ELEMENTALES

MARVIN MINSKY Y SEYMOUR PAPERT, PUBLICARON EN 1969


PERCEPTRONS: AN INTRODUCTION TO COMPUTATIONAL GEOMETRY: EN ESTE
LIBRO ESTUDIARON LOS PERCEPTRONES Y DEMOSTRARON QUE LOS
PERCEPTRONES Y ADALINES ELEMENTALES (LOS QUE CONSTAN SÓLO DE
DOS CAPAS) ERAN INCAPACES DE DISTINGUIR ENTRE PATRONES TAN
SENCILLOS COMO T Y C, NI DE LLEVAR A CABO TAREAS LÓGICAS SIMPLES,
COMO LA DE DECIDIR LA TABLA DE VERDAD DE LA DISYUNCIÓN
EXCLUSIVA; PROBARON MATEMÁTICAMENTE QUE DICHAS REDES, AUNQUE
PUDIESEN MODIFICAR SUS PESOS MEDIANTE REGLAS DE APRENDIZAJE, NO
PODÍAN RESOLVER MÁS QUE PROBLEMAS LINEALMENTE SEPARABLES.
ADEMÁS, AMPLIARON SUS CRÍTICAS CONJETURANDO QUE ESTA
DIFICULTAD NO SE PODRÍA SUPERAR AÑADIENDO UNIDADES OCULTAS EN
REDES MULTICAPA. ESTO ÚLTIMO SE DEMOSTRÓ FALSO A PARTIR DE 1986,
CUANDO SE DESCUBRIÓ LA REGLA DELTA GENERALIZADA Y LA VALIDEZ
DE SU USO EN REDES CON CAPAS OCULTAS. ESTE TIPO DE REDES Y LA
REGLA CITADA PERMITIÓ RESOLVER EL PROBLEMA MÁS FAMOSO
PLANTEADO A LOS PERCEPTRONES Y ADALINES, EL PROBLEMA DE LA
DISYUNCIÓN EXCLUSIVA ANTES CITADO. SE SUELE INDICAR QUE COMO
CONSECUENCIA DE LAS CRÍTICAS DE ESTOS AUTORES LAS AUTORIDADES
AMERICANAS DIRIGIERON SUS FONDOS A LA INTELIGENCIA ARTIFICIAL Y
LA PSICOLOGÍA COGNITIVA CLÁSICA, CON EL CONSIGUIENTE FRENO DE LA
INVESTIGACIÓN EN LOS MODELOS DE COMPUTACIÓN CONEXIONISTA.

VI.3. AÑOS SETENTA Y OCHENTA

J. A. ANDERSON ESCRIBIÓ EN 1973 EL ARTÍCULO A THEORY FOR THE


RECOGNITION OF ITEMS FROM SHORT MEMORIZED LISTS Y EN 1977 NEURONAL
MODELS WITH COGNITIVE IMPLICATIONS. EN ESTOS ESCRITOS PRESENTÓ
ANÁLISIS MATEMÁTICOS DE ALGUNAS PROPIEDADES DE LAS REDES
NEURONALES Y DEFENDIÓ LA RELEVANCIA DE LAS REPRESENTACIONES
DISTRIBUIDAS EN DISTINTOS CAMPOS DE LA PSICOLOGÍA, POR EJEMPLO EN
EL DEL APRENDIZAJE DE CONCEPTOS; SUS INVESTIGACIONES FUERON
TAMBIÉN IMPORTANTES EN EL CAMPO DE LA MEMORIA ASOCIATIVA POR
CONTENIDO Y DE NUEVOS MODELOS DE REDES.
STEPHEN GROSSBERG ES UNO DE LOS MÁS DESTACADOS
INVESTIGADORES EN EL CAMPO CONEXIONISTA; SUS PROPUESTAS
APARECEN YA EN LOS AÑOS SESENTA Y CONTINÚAN EN NUESTROS DÍAS.
HA ESCRITO MUCHOS LIBROS Y DESARROLLADO DIVERSOS MODELOS DE
REDES (TAL VEZ LA MÁS CONOCIDA ES LA RED QUE PROPUSO EN 1967,
AVALANCHA, PARA EL RECONOCIMIENTO DEL HABLA Y EL APRENDIZAJE
DEL MOVIMIENTO DE LOS BRAZOS DE UN ROBOT); ADEMÁS DE REALIZAR
LAS PRIMERAS INVESTIGACIONES SOBRE EL APRENDIZAJE COMPETITIVO,
SUBRAYÓ LA IMPORTANCIA DE LOS MODELOS CONEXIONISTAS EN LOS
CAMPOS DE LA PERCEPCIÓN Y DE LA MEMORIA. DESTACA SU LIBRO DE 1982
STUDIES OF MIND AND BRAIN.

HOFSTADTER (GÖDEL, ESCHER, BACH: AN ETERNAL GOLDEN BRAID, 1979


Y METAMAGICAL THEMAS, 1985) DEFIENDE LA EXISTENCIA DE DOS NIVELES
DE PROCESAMIENTO, EL QUE ESTUDIA LA PSICOLOGÍA COGNITIVA CLÁSICA
(NIVEL ESTRUCTURAL) Y UN NIVEL DE PROCESAMIENTO MÁS BAJO, Y EN EL
QUE SE SITÚAN LOS TRABAJOS DEL CONEXIONISMO (NIVEL
MICROESTRUCTURAL), DE AHÍ QUE EN OCASIONES SE HABLE DEL
CONEXIONISMO COMO UN ENFOQUE QUE ANALIZA LA
“MICROESTRUCTURA DE LA COGNICIÓN” PARA COMPRENDER LOS
FENÓMENOS COGNITIVOS.
ES EN LOS AÑOS OCHENTA CUANDO EL CONEXIONISMO EMPIEZA A
TENER UN ÉXITO CONSIDERABLE, Y EN ESTA TRAYECTORIA ES
FUNDAMENTAL LA OBRA DE G. E. HINTON, Y J. A. ANDERSON EDITADA EN
1981 PARALLEL MODELS OF ASSOCIATIVE MEMORY, Y LA OBRA DE J. A.
ANDERSON DE 1983 COGNITIVE AND PSYCHOLOGICAL COMPUTATION WITH
NEURAL MODELS. EN ESTA ÚLTIMA ANDERSON ESTUDIA EL HARDWARE DEL
SISTEMA NERVIOSO REAL Y PROPONE MODELOS NEURONALES SENCILLOS
BASADOS EN LOS BIOLÓGICOS Y DESTINADOS A EXPLICAR LOS PROCESOS
COGNITIVOS.
J. A. FELDMAN Y D. H. BALLARD (1982: CONNECTIONIST MODELS AND
THEIR PROPERTIES. COGNITIVE SCIENCIE, 6) DESARROLLARON MUCHOS DE
LOS PRINCIPIOS COMPUTACIONALES DEL ENFOQUE PROCESAMIENTO
DISTRIBUIDO PARALELO (PDP), UTILIZARON POR PRIMERA VEZ EL NOMBRE
DE CONEXIONISMO PARA ESTE ENFOQUE, Y CRITICARON EL ENFOQUE
TRADICIONAL DE LA INTELIGENCIA ARTIFICIAL DESTACANDO SU POCA
PLAUSIBILIDAD BIOLÓGICA. PERO SIN DUDA EL IMPULSO DEFINITIVO A LA
INVESTIGACIÓN CONEXIONISTA TIENE COMO PROTAGONISTAS A DAVID. E.
RUMELHART, JAMES. L. MCCLELLAND Y VARIOS INVESTIGADORES MÁS
QUE FORMAN LO QUE SE HA LLAMADO “GRUPO PDP”, Y CULMINA CON LA
APARICIÓN DE LO QUE SE HA CONSIDERADO COMO LA “BIBLIA
CONEXIONISTA”, “PARALLEL DISTRIBUTED PROCESSING: EXPLORATIONS IN
THE MICROESTRUCTURE OF COGNITION” (DOS VOLÚMENES) EDITADA POR
RUMELHART Y MCCLELLAND EN 1986. EN ESTA OBRA SE TRATAN
IMPORTANTES CUESTIONES PERO SIN DUDA DESTACA LA DEMOSTRACIÓN
DE CÓMO LAS REDES CON MÁS DE DOS CAPAS PUEDEN SOLUCIONAR LAS
OBJECIONES MATEMÁTICAS PROPUESTAS POR MINSKY Y PAPERT Y QUE
TANTO LIMITARON EL DESARROLLO EN LA INVESTIGACIÓN DE REDES
NEURONALES.

A PARTIR DE PARALLEL DISTRIBUTED PROCESSING SE SUCEDEN MULTITUD


DE INVESTIGACIONES, ARTÍCULOS Y CONGRESOS, TANTO EN LOS CAMPOS
DE LA INTELIGENCIA ARTIFICIAL COMO EN LOS DE LA PSICOLOGÍA,
CONVIRTIÉNDOSE EL CONEXIONISMO EN UN MOVIMIENTO
REVOLUCIONARIO EN EL PANORAMA DE LA CIENCIA COGNITIVA. EN ESTE
CONTEXTO SE CREAN LA SOCIEDAD EUROPEA DE REDES NEURONALES
(ENNS) Y LA SOCIEDAD INTERNACIONAL DE REDES NEURONALES (INNS),
SOCIEDADES QUE ORGANIZAN CONGRESOS Y REUNIONES ANUALES Y
EDITAN REVISTAS PARA LA DIVULGACIÓN DE LAS INVESTIGACIONES EN
ESTE CAMPO DE INVESTIGACIÓN, REVISTAS ENTRE LAS QUE DESTACAN
NEURAL NETWORKS (REVISTA OFICIAL DE LA SOCIEDAD INTERNACIONAL DE
REDES NEURONALES); NETWORK, COMPUTATION IN NEURAL SYSTEM;
TRANSACTIONS ON NEURAL NETWORKS; NERUAL NETWORKS COUNCIL; NEURAL
COMPUTATION Y INTERNATIONAL JOURNAL OF NEURAL SYSTEMS.
DE OCTUBRE DE 1987 A FEBRERO DE 1988, EL INSTITUTO TECNOLÓGICO
DE MASSACHUSSETS (MIT), PATROCINADO POR LA OFICINA DE
TECNOLOGÍA TÁCTICA DE LA AGENCIA DE PROYECTOS DE INVESTIGACIÓN
AVANZADA DEL DEPARTAMENTO DE DEFENSA DE ESTADOS UNIDOS
(DARPA/TTO) LLEVÓ A CABO LA REVISIÓN DE LA INVESTIGACIÓN Y
TECNOLOGÍA BASADA EN REDES NEURONALES, REVISIÓN QUE SE PLASMÓ
EN EL LIBRO NEURAL NETWORK STUDY (DARPA 88).

EN ESPAÑA TAMBIÉN SE HA CREADO UNA SOCIEDAD PARA LA


INVESTIGACIÓN EN REDES NEURALES QUE YA HA ORGANIZADO VARIOS
CONGRESOS, SE ORGANIZAN SEMINARIOS (PRECISAMENTE EL QUE SE
REALIZÓ EN LA UNED EN EL CURSO 87-88 DIO LUGAR A LA EDICIÓN DE
INTRODUCCIÓN AL PROCESAMIENTO DISTRIBUIDO EN PARALELO, ALIANZA
EDITORIAL, EN DONDE SE REÚNEN LOS CAPITULOS MÁS IMPORTANTES
DE PARALLEL DISTRIBUTED PROCESSING). EL PROGRAMA EUROPEO DE
INVESTIGACIÓN ESPRIT HA FINANCIADO DIVERSOS PROYECTOS EN ESTE
CAMPO, PROYECTOS EN LOS QUE, EN ESPAÑA, HAN PARTICIPADO LAS
UNIVERSIDADES POLITÉCNICA Y AUTÓNOMA DE MADRID, LA POLITÉCNICA
DEL PAÍS VASCO, EL CENTRO DE ESTUDIOS AVANZADOS DE BLANES, EL
INSTITUTO DE CIBERNÉTICA DEL CSIC Y EL INSTITUTO DE INGENIERÍA DEL
CONOCIMIENTO (IIC), ENTRE OTROS.

CONEXIONISMO

VII. ELEMENTOS DE LAS ARQUITECTURAS CONEXIONISTAS (1)

VII.1. CONCEPTOS Y ELEMENTOS DE LA ESTRUCTURA CONEXIONISTA

VII.1.1. Las unidades

VII.1.2. Las conexiones entre las unidades (las sinapsis)

VII.1.3. Peso sináptico

VII.1.4. El patrón de conexión

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario


En las redes conexionistas es preciso distinguir dos tipos de elementos: los
relativos a su estructura y los relativos a sus mecanismos de procesamiento:

Conceptos y mecanismos
Conceptos y elementos de la
básicos para el procesamiento
estructura conexionista
en las redes conexionistas

Las unidades La entrada (input) total

La regla de propagación

Las conexiones entre las


unidades El estado de activación
(las sinapsis)
La regla o función de activación
La salida (output) de las
El peso sináptico
unidades
La función de transferencia

El patrón de conexión Reglas de aprendizaje

VII.1. CONCEPTOS Y ELEMENTOS DE LA ESTRUCTURA


CONEXIONISTA

VII.1.1. Las unidades


Los elementos básicos de procesamiento de la información en el cerebro son las
neuronas; dado que los modelos conexionistas son modelos de inspiración biológica,
a las unidades básicas encargadas del procesamiento en las redes conexionistas se las
llama habitualmente neuronas, aunque también podemos encontrar en la literatura los
términos “células”, “unidades”, “neuronas artificiales”, “nodos”, elementos de
procesamiento (PEs) o, simplemente, “elementos”. La función de estas unidades tiene
que ver esencialmente con el la recepción y tratamiento de la información: recibir
información a partir de las conexiones que mantienen con otras neuronas, elaborar o
transformar la información recibida y emitir información de salida hacia otras
neuronas.

Existen tres tipos de unidades:


1. Unidades de entrada: les corresponde este nombre por recibir información de
fuentes externas a la propia red. Si la red dispone de sensores (por ejemplo, un
scanner), la información externa es información sensorial; si la red está conectada
con otras redes, las unidades de entrada reciben datos de las salidas de las otras
redes; en otros casos, simplemente, las unidades de entrada reciben los datos que
el usuario de la red introduce manualmente en el ordenador.
2. Unidades de salida: ofrecen las señales o información al exterior de la red; dan la
respuesta del sistema. Si la red dispone de conexiones con sistemas motores
(robots, por ejemplo) su respuesta será la intervención en el mundo físico; si la red
está conectada con otras redes, su respuesta serán datos de entrada para éstas
últimas redes; y si, simplemente, son redes que utilizamos en nuestro ordenador,
las unidades de salida ofrece datos al usuario para su posterior tratamiento.
3. Unidades ocultas: aunque no todas las redes poseen este tipo de unidades, las
redes mínimamente sofisticadas las incluyen. Estas unidades no tienen una relación
directa ni con la información de entrada ni con la de salida, por lo que no son
“visibles” al ambiente exterior a la red, de ahí su nombre. Su función es procesar la
información en niveles más complejos, favorecer cómputos más eficaces.
La información que puede recibir una red, la que puede ser almacenada y la que
puede emitir, está determinada en gran medida por lo que se llama el abanico de
entrada (fan-in) y el abanico de salida (fan-out). El abanico de entrada es el
número de elementos que excitan o inhiben una unidad dada. El abanico de salida de
una unidad es el número de unidades que son afectadas directamente por dicha
unidad.

Se llama capa o nivel o estrato al conjunto de neuronas que reciben


información de la misma fuente (información externa, otra capa de neuronas) y
ofrecen información al mismo destino (al usuario, a sistemas motores, a otra capa de
neuronas).
Volver al índice
Las sinapsis son las conexiones entre las neuronas. En la mayor parte de redes
las sinapsis son unidireccionales: la neurona j transmite información a la neurona i y
la neurona i la recibe, y nunca ocurre lo contrario. Sin embargo, en redes como las de
Hopfield las sinapsis son bidireccionales.

Tipos de sinapsis:
a) sinapsis inhibidora: en este tipo de conexión el impulso transmitido por una
neurona inhibe la activación de la neurona con la que está conectada: si la neurona
j le transmite a la neurona i un impulso que inhibe a ésta, el nivel de activación de
la neurona i decrecerá, y decrecerá en función del peso establecido para dicha
conexión y de la cantidad de información que se transmite por dicha sinapsis. Se
suele representar la sinapsis inhibidora mediante puntos negros;
b) sinapsis excitadora: en este tipo de conexión el impulso transmitido por una
neurona excita la activación de la neurona con la que está conectada: si la neurona
j está conectada mediante una sinapsis excitadora con la neurona i, el nivel de
activación de la unidad i aumentará si le llega información por dicha conexión desde
la neurona j, y lo hará en función del peso de la conexión y de la magnitud de la
señal o información que por dicha conexión se le envía. Se suele representar este
tipo de conexión mediante puntos huecos.
Volver al índice

VII.1.3. Peso sináptico


O peso de la conexión. Es uno de los conceptos más importantes en las redes,
y ello por varias razones: en primer lugar porque los cómputos de la red tienen que
ver esencialmente con ellos; en segundo lugar, y concretando la afirmación anterior,
porque los cálculos que el sistema realiza a partir de la información de entrada para
dar lugar a la información de salida se basan en dichos pesos; y, en tercer lugar,
porque en cierto modo (como veremos) son el análogo a las representaciones de los
objetos en los modelos cognitivos tradicionales. Una sinapsis es fuerte, o tiene un gran
peso de conexión, si la información por ella recibida contribuye en gran medida en el
nuevo estado que se produzca en la neurona receptora, y es débil en caso contrario.
Los pesos sinápticos son valores numéricos, se expresan en términos numéricos
sencillos (generalmente números enteros o fraccionarios negativos o positivos) con los
que “se ponderan” las señales que reciben por dicha sinapsis. En la literatura sobre
redes encontramos ligeras variantes en la notación utilizada para

representar el peso sináptico de una conexión entre la neurona j y la neurona i, donde


la neurona i recibe la información que la neurona j emite: por ejemplo, Wij (del inglés
Weight, peso), pero también wij y wij.

Dado que en ocasiones es importante representar mediante un vector la


totalidad de los pesos correspondientes a las conexiones de varias neuronas con una
salida, y que se reserva para dicho vector correspondiente al peso la “W” mayúscula,
cuando nos referimos al peso correspondiente a una conexión parece más adecuado
utilizar la “w” minúscula.

Volver al índice

En los modelos conexionistas el conocimiento que la red alcanza a partir del


aprendizaje se representa mediante el patrón de conexión, patrón que determinará,
por lo tanto, el modo de procesamiento de las señales y la respuesta del sistema ante
cualquier entrada.

En los modelos más simples la entrada total correspondiente a cada unidad


depende esencialmente de los valores de entrada y de los pesos que ponderan el modo
en que dichos valores colaboran en la entrada total. Por ello en estos modelos el
patrón de conexión es simplemente el conjunto de pesos correspondientes a cada una
de las conexiones de la red; los pesos positivos indicarán entradas excitatorias y los
negativos entradas inhibitorias. Para representar el patrón de conexión se utiliza una
matriz de pesos W, en donde cada uno de los elementos de la matriz (representado
como wij) indica el peso correspondiente a la conexión de la unidad j y la unidad i. El
número correspondiente a w representa la intensidad o fuerza de la conexión, y el
signo (+ o –) indica si la unidad j excita a la unidad i (la conexión es excitatoria) o si la
unidad j inhibe a la unidad i (la conexión es inhibitoria). Si el número correspondiente
a w es 0 se quiere indicar que la unidad j no está conectada a la unidad i.

Veamos un ejemplo:
valores de los pesos
wi1: -0.5 wj1: 1

wi2: 0.3 wj2: 0.2

wi3: -1 wj3: 0

wi4: 0.6 wj4: -0.3

la matriz correspondiente al patrón de


conexión o, utilizando otra forma de representación:
(matriz de los pesos W ) será

ui uj

u1 -0.5 1

u2 0.3 0.2

u3 -1 0

u4 0.6 -0.3
CONEXIONISMO

VII. ELEMENTOS DE LAS ARQUITECTURAS CONEXIONISTAS (2)

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario


VII.2. CONCEPTOS Y MECANISMOS BÁSICOS PARA EL
PROCESAMIENTO EN LAS REDES CONEXIONISTAS

VII.2.1. Notación utilizada para representar los elementos y mecanismos


de las redes conexionistas

VII.2.2. La entrada (input) total. La regla de propagación

VII.2.3. El estado de activación

VII.2.4. La regla o función de activación

VII.2.4.a. Concepto y fórmula general

VII.2.4.b. Tipos de funciones de activación

• Función identidad
• Función de activación tipo umbral
VII.2.5. La salida de las unidades. La función de transferencia

VII.2.5.a. Concepto y fórmula general de la función de transferencia

VII.2.5.b. Tipos de función de salida o de transferencia


• Función identidad o función lineal
• Función umbral
• Función mixta
• Funciones de Saturación:
○ Función Sigmoide
○ Función Tangencial Hiperbólica
• Neuronas lineales
• Neuronas no lineales
VII.2.6. Reglas de aprendizaje

VII.2.6.a. Concepto y modelos de aprendizaje

• aprendizaje supervisado
• aprendizaje no supervisado
• aprendizaje reforzado
VII.2.6.b. Regla de Hebb (o regla del producto)

VII.2.6.c. Regla de Widrow-Hoff o regla delta o regla del menor error


cuadrático

VII.2.6.d. Regla Delta generalizada (o regla de propagación hacia atrás)

VII.2.1. Notación utilizada para representar los elementos y mecanismos de


las redes conexionistas
La tarea de cada neurona o unidad es simple: recibir las entradas de las
células vecinas y calcular un valor de salida, el cual es enviado a todas las
células restantes. Toda la información que la red recibe, almacena, transforma y
envía se expresa en términos matemáticos, en la forma de cantidades y de fórmulas
aplicadas a cantidades.

La representación interna de la información se genera en las sinapsis o


conexiones y en la actividad de las neuronas, particularmente en las de la capa oculta.
Dado que las redes modifican sus estados a través del tiempo como consecuencia de
las distintas entradas de información, es imprescindible también introducir en la
descripción de los estados de activación la referencia al tiempo:

1. a cada neurona (unidad i, ui) le corresponde en cualquier instante un valor


numérico denominado valor o estado de activación ai(t);

2. cada unidad utiliza una función de salida, fi, que calcula la señal de salida (“oi”, del
inglés output o salida) a partir del estado de activación que en ese momento tiene
la neurona;

3. la señal de salida se trasmite a otras unidades con las que dicha neurona está
conectada;

4. una neurona recibe la señal de todas las unidades con las que está conectada, pero
lo hace teniendo en cuenta:
• el peso asociado a cada una de las conexiones, wij (del inglés “wheit”,
peso)
• y la intensidad o señal que se transmite por la sinapsis;
a la suma de todas las señales ponderadas por el peso de las correspondientes
conexiones se le llama NETi

5. el nuevo estado de activación ai(t+1) de la neurona i se calcula mediante una


función de activación Fa, teniendo en cuenta la entrada total calculada o NET y su
anterior estado de activación, ai(t)

(Tomado de "Redes neuronales artificiales", J. R. Hilera y V. J. Martínez, Editorial Ra-ma; p. 51.)

La notación empleada en las redes neuronales no es unánime:

• las unidades o neuronas se representan como “u” o como “n”


• la función de activación se suele representar por Fa, pero también,
simplemente, por F; dado que es preciso referirse a dos funciones, la de
activación y la de transferencia, conviene utilizar una notación distinta para
cada una de ellas, por ejemplo para la función de activación la F mayúscula
(Fa) y para la de transferencia la f minúscula (fi);
• la referencia a la activación actual se suele representar como a(t) y la
siguiente como a(t+1); pero en la literatura sobre el tema también podemos
encontrar la referencia a la activación actual como a(t-1) y el estado de
activación siguiente como a(t) (y tanto en negrita como en caracteres
normales);
• para distinguir la parte de la fórmula que corresponde al nombre de las
unidades de la parte de la fórmula correspondiente a los otros elementos, se
pueden emplear varias estrategias:
○ subíndice para los nombres y letra normal para el resto: oi
○ letra normal para el nombre de la unidad y negrita para el resto: oi
• para referirse al peso de cada conexión se puede emplear tanto la O mayúscula
como la o minúscula, lo mismo que para el peso (W o w) y para la entrada
total en cada unidad (Net o NET O NET o net).
Volver a al índice

VII.2.2. La entrada (input) total. La regla de propagación


Una neurona recibe señales desde múltiples neuronas por lo que es necesario
calcular el efecto global que tendrá ese conjunto de señales o inputs. El input total se
denomina NET, y para el caso de las entradas que le llega a la neurona i en el tiempo
t, NETi(t). Llamamos regla de propagación a la fórmula que nos indica cómo calcular
dicha entrada total o NET; existen varias reglas de propagación, pero la más sencilla y
habitual es la que se representa del siguiente modo:

NETi(t+1) = ∑j wij * oj(t)

NETi es la suma de todas las señales que llegan a la neurona i (señales


representadas como oj), ponderada cada una de ellas por el peso de conexión
asociado, (wij). Cuando una determinada señal oj llega a la neurona i por una sinapsis
inhibidora, el peso wij asociado a dicha sinapsis será negativo, por lo que el resultado
del producto, wij*oj, aportará un elemento negativo a la suma.

Los valores que transmite una neurona a las neuronas con las que está
conectada se representan como “o” (oj sería el valor que transmite la neurona j).
Pongamos que los valores que transmite las neuronas de la capa de entrada, y los
pesos correspondientes a sus conexiones con la neurona i son los siguientes:

valores: O(t) oj: 0.5 ok: 0.3 ot: 0.5 ou: -1

pesos: (Wij) wil: -0.5 wik: 1 wit: 0.5 wiu: -0.3

En ocasiones los pesos de todas las conexiones o sinapsis correspondientes a


una neurona se suelen representar mediante una matriz: la matriz Wij incluiría todos
los pesos de las conexiones con la neurona i (wi1, wi2, wi3, ...wij); si un elemento de
la matriz es positivo indica que la conexión es excitatoria, si es negativo, la conexión
es inhibitoria y si es 0 no existe conexión entre neuronas; en el caso anterior la matriz
sería:

Wij = [–0.5, 1, 0.5, –0.3]

También es habitual referirse al conjunto de valores de entrada de una unidad


como el vector O(t) (de “output”, salida, puesto que normalmente estos valores que le
llegan a una unidad son la salida que produce otra unidad). En el caso anterior, el
vector de valores que le llegan desde otras neuronas y correspondiente al instante
anterior a la modificación de la neurona i (instante que se suele representar como
(t)) sería:

O(t) = [0.5, 0.3, 0.5, -1].

Si utilizamos la regla de propagación antes señalada, la entrada total que le


llega a la neurona i o NETi será la suma de las entradas parciales ponderadas por los
pesos correspondientes:

(0.5 x -0.5) + (0.3 x 1) + (0.5 x 0.5) + (-1 x -0.3) = -2.5 + 0.3 + 2.5 + 0.3
= 0.6

La entrada total se calcula para después averiguar el estado de activación que


la va a corresponder a la unidad, pero, dado que la regla de propagación citada es muy
sencilla, la función de activación que ha de calcular su activación no se suele referir a
NETi, sino simplemente al sumatorio de los productos del peso por el valor de las
entradas (Wij * Oj).
Volver a al índice

VII.2.3. El estado de activación


La activación (o excitación, o actividad) de una neurona es muy importante
para el procesamiento puesto que la salida que la neurona provoca depende de ella. La
activación es el grado o nivel de excitación de una neurona, y, generalmente,
cambia en función de cuatro factores:

• el anterior estado de activación de la unidad;


• las entradas que la neurona recibe;
• los pesos de las conexiones por las que recibe las señales;
• la función de activación utilizada para calcular la activación a partir de dichas
entradas.
Se llama ciclo a cada una de las veces que la red toma los vectores de entrada
(conjunto de valores de entrada) para realizar los cómputos correspondientes; pues
bien, dado que en cada ciclo la activación de las neuronas puede ser distinta, es
preciso caracterizar dicha activación en cada pasada de la información o ciclo, por ello
es necesario referirse al tiempo; así, es habitual representar como Ai(t) (o también,
con minúscula, como ai(t)), el nivel de activación de la neurona i en el tiempo t.

Lo que la red representa en cada momento depende del conjunto o patrón de


activación de la totalidad de las unidades que la componen, por ello es conveniente
también especificar dicho patrón. Para reflejar el patrón de activación se suele utilizar
un vector de N números reales a(t), vector que representa el estado de activación de
todas las unidades de la red en el tiempo t; en el vector, cada uno de los elementos
representa la activación de cada unidad en el tiempo t:

A(t) = (a1(t), a2(t), ..., ai(t), ...., an(t))

De este modo, cabe caracterizar el procesamiento que realiza la red como la


evolución que sufren a través del tiempo los patrones de activación de las unidades.

Hay muchos modelos de redes conexionistas y los valores de activación que


pueden tomar las unidades no son los mismos en todos ellos. Los valores utilizados
con más frecuencia son los siguientes:

I. CONTINUOS
a) abiertos; los modelos que utilizan este tipo reciben el nombre de modelos no
acotados (o modelos sin límite): el valor de activación de una neurona i puede
ser cualquier número real;
b) o cerrados; los modelos que utilizan este tipo reciben el nombre de modelos
acotados (o modelos con límites): pueden tomar cualquier valor real
comprendido en un intervalo con un valor mínimo y un valor máximo, por
ejemplo, el intervalo {0,1}, o el intervalo {-1,1}, generalmente siguiendo una
función sigmoidal.

II. DISCRETOS: estos valores se utilizan en los modelos más sencillos.

a) los más frecuentes son los valores binarios: la neurona sólo puede tener dos
estados: activada o desactivada, estados que se suelen identificar mediante el
par de valores {0,1}, representado el 1 el estado de activado y el 0 el estado de
desactivado o en reposo, o bien {-1,+1}; o, simplemente, {–,+}, representado
el 1 (o el +) el estado de activado y el -1 (o el –) el estado de desactivado.

b) en otros casos son valores discretos no binarios, valores que están entre
cualquiera de un pequeño conjunto: por ejemplo, pueden estar restringidos al
conjunto de valores {-1, 0, +1}, o a un pequeño conjunto finito de valores
tales como {1, 2, 3, 4, 5, 6, 7, 8, 9}.

Naturalmente, el comportamiento y las utilidades de las redes con distintos


tipos de valores de activación son también distintos; por ejemplo, si las entradas
responden a información analógica y no a señales discretas, entonces los valores más
adecuados son los continuos, no los discretos.

Volver a al índice

VII.2.4. La regla de activación


VII.2.4.a. Concepto y fórmula general
El estado de activación de una unidad depende de la función de activación,
que no es otra cosa que una función matemática utilizada para calcular el siguiente
estado de activación; dicha función calcula la nueva actividad de la unidad o neurona a
partir de:
• el anterior estado de activación de la unidad (aunque esta cantidad no
siempre se tiene en cuenta);
• todas las entradas que recibe dicha unidad de las otras unidades;
• los pesos de las conexiones que la unidad en cuestión tiene con las unidades
de las que recibe las entradas.

Si tenemos la unidad i, su actividad en el tiempo t+1 dependerá de la función de


activación (Fa) aplicada a:

• el estado de activación de la neurona i en el tiempo t;


• todas las entradas oj recibidas por la unidad i desde las neuronas j de la capa
anterior en el tiempo t;
• los pesos de conexión wij correspondientes a las distintas sinapsis por los que
cada señal oj llega a la neurona i en el tiempo t.
De este modo, podemos representar la función de activación para el cálculo del
nuevo estado de activación de la unidad i en el tiempo t+1 utilizando la siguiente
notación:

ai(t+1) = Fa [ai(t), oj(t), wij]

Dado que la entrada total o NET correspondiente a dicha unidad es igual a la


suma de todas las entradas ponderadas por sus correspondientes pesos, la anterior
fórmula también se puede expresar del siguiente modo:

ai(t+1) = Fa [ai(t), NETi(t)]

Como más arriba se ha indicado, la notación utilizada no es la misma en todos


los autores, así en la fórmula algunos utilizan F, otros Fa, y para referirse al tiempo
algunos utilizan la notación t y t-1 y otros t+1 y t, pero son fórmulas equivalentes.

Como ocurría para los valores de activación de cada neurona, existen múltiples
funciones de activación, y es el diseñador de la red quien debe establecer la que se ha
de utilizar en función de las peculiaridades de la tarea para la que se diseña la red.

Volver a al índice
VII. 2. 4. b. Tipos de funciones de activación

• Función identidad
Se trata de una función muy simple que no tiene en cuenta el anterior estado
de activación de la unidad. Se puede expresar con la siguiente fórmula:

ai(t+1) = ∑j wij oj(t)

Según esta función de activación, el estado de activación que le corresponde a


la unidad i (ai(t+1)) tras recibir las señales desde las unidades a las que está
conectada es el resultado de sumar todas las señales recibidas (oj), ponderadas cada
una de ellas por el peso sináptico (wij) asociado a la sinapsis por la que se transmite la
señal.

Podemos representar el conjunto de estímulos de entrada que le llegan a una


unidad desde la capa anterior como un vector, y los pesos sinápticos correspondientes
mediante una matriz; en esta circunstancia, el cálculo del nuevo estado de activación
de todas las neuronas se obtiene simplemente mediante el producto de matrices.

En algunas redes se incluye en la función de activación un factor que representa


una fracción del valor de activación anterior, por ejemplo:

ai(t+1) = ½ ai(t) + ∑j wij oj(t)

Con esta variante conseguimos que la unidad o neurona mantenga cierto estado
de activación durante varios ciclos, incluso en el caso de que las entradas sean cero,
en esta última circunstancia en cada período de tiempo su estado de activación
corresponderá a la mitad del valor de activación anterior. Con este tipo de funciones de
activación se garantiza que cada neurona no varíe en su estado y en su respuesta
demasiado bruscamente (recordamos que la respuesta de la red depende en gran
medida de los estados de activación de las unidades que la componen).

• Función de activación tipo umbral


Esta función es algo más complicada que la anterior y se utiliza con frecuencia
en las redes conexionistas, en particular cuando cada unidad sólo puede tener dos
estados: activada o desactivada (1 ó 0, respectivamente). Se suele representar la
función tipo umbral del siguiente modo:
1 si ∑j wij oj(t) > umbral
ai(t+1) =
0 si ∑j wij oj(t) ≤ umbral

Estas fórmulas quieren indicar, simplemente, que la neurona i se activará


(tomará el valor 1) si y sólo si la suma ponderada de sus entradas supera cierto
umbral, umbral que ha de ser decidido por el diseñador de la red.

Volver a al índice

VII.2.5. La salida de las unidades. La función de transferencia

VII.2.5.a. Concepto y fórmula general de la función de transferencia

Las unidades o neuronas transmiten señales a otras con las que están
conectadas. La intensidad de estas señales y, por lo tanto, el grado en que influyen en
las unidades con las que están conectadas está determinado por dos factores:

• su grado de activación;
• una función matemática que modula dicho estado de activación provocando la
señal de salida, función que suele ser la misma para todas las unidades.
Por lo tanto, unidades con el mismo grado de activación pero distintas funciones
de salida producirán distintas señales (oi). A dicha función se le llama habitualmente
función de transferencia, y puede representarse del siguiente modo:

oi(t+1) = fi[ai(t+1)]

El valor de salida o respuesta de la unidad i (representado por oi), en el tiempo


t+1, será el resultado de aplicar la función de transferencia (fi) a su estado de
actividad (ai) en el tiempo t+1.

Podemos utilizar la notación vectorial para representar el conjunto de todos los


valores de salida en el tiempo t+1. Así, el vector O(t+1) contendrá las salidas de todas
las neuronas o unidades en el tiempo t+1:
O(t+1) = (f1[a1(t+1)], f2[a2(t+1)],..., fi[ai(t+1)],..., fn[an(t+1)])

VII.2.5.b. Tipos de función de salida o de transferencia

Existen varios tipos de funciones de transferencia. La función escalón o umbral


únicamente se utiliza cuando las salidas de la red son binarias (dos posibles valores):
la salida de una neurona se activa sólo cuando el estado de activación es mayor o igual
que cierto valor umbral. Las funciones mixta y sigmoidal son las más apropiadas
cuando queremos como salida información analógica.

• Función identidad o función lineal


Es la más sencilla y la de menos uso. Se llama función de identidad porque la
salida correspondiente a la unidad es igual a su estado de activación. En realidad esta
función equivale a no aplicar función de salida. La fórmula correspondiente a esta
función es

fi[ai(t+1)] = ai(t+1)

y la salida correspondiente a dicha unidad se puede representar como

oi(t+1) = ai(t+1)

y, en representación gráfica:
La función de identidad es adecuada cuando la función de activación que hemos
utilizado para calcular la activación de la unidad es de tipo umbral. En este caso la
activación de la unidad será 1 si está activa y 0 si está inactiva, y la salida
correspondiente será 1 en el primer caso y 0 en el segundo (o 1 y -1 si hemos
preferido esta notación).

• Función umbral
O función escalón. Su uso es más frecuente que la función identidad. Con la
función umbral la unidad envía señales de salida sólo cuando su activación es mayor o
igual que cierto valor umbral. La respuesta de salida será binaria o discreta: sólo 1 ó 0
(o bien 1 y -1 si utilizamos esta otra notación), y dependerá de si el valor de activación
(que en este caso es un valor continuo) supera cierto umbral.

1 si ai(t+1) ≥
umbral
oi(t+1) =
0 si ai(t+1) <
umbral

si el umbral es 0 tendríamos

1 si ai(t+1) ≥
0 1 si ai(t+1) ≥ 0
oi(t+1) = oi(t+1) =
0 si ai(t+1) < -1 si ai(t+1) < 0
0

y, en representación gráfica:
Si en lugar de 0 el umbral fuese otro número, el escalón quedaría desplazado.

• Función mixta
Con esta función, si la activación es menor que un límite inferior, la salida es 0
(ó -1). Si la activación es mayor o igual que el límite superior, entonces la salida es 1.
Si la activación está entre los límites, la salida es una función lineal de la activación

0 si x < -C -1 si x < - C

1 si x ≥ C 1 si x ≥ C
f(x) = f(x) =
x/ (2C) + ½ en otro
caso a.x en otro caso

y, en representación gráfica
C es el límite superior de la activación y -C el límite inferior

• Funciones de Saturación
Son las funciones en las que los incrementos o disminuciones de la intensidad
de la actividad de la unidad producen incrementos o disminuciones de los valores de
salida hasta llegar a unos límites de salida máxima o mínima a partir de los cuales la
salida se estabiliza y es la misma a pesar del incremento o disminución de la
intensidad de actividad de la unidad. Dicho de otro modo: mediante las funciones de
saturación conseguimos que el aumento de la actividad de la unidad por encima de un
límite no se traduzca en un incremento de salida (y lo mismo para los valores
mínimos). Las funciones de saturación establecen límites máximos y mínimos para las
salidas (por ejemplo 1 y -1) y aunque la actividad de la unidad esté por encima de
dichos límites, la salida es siempre el valor máximo.

Hay varias funciones de saturación, siendo la más utilizada la función sigmoide.

• Función Sigmoide
Es una de las funciones de transferencia más utilizadas. Produce salidas
continuas y proporcionales al nivel de activación de la neurona dentro del
rango [0,1]; sus niveles de saturación son 0 y 1, por lo que su salida máxima
será 1 y la mínima 0. Cuando el nivel de activación supere al umbral de
saturación máximo la salida seguirá siendo 1 y cuando el nivel de activación
sea inferior al umbral de saturación mínimo la salida seguirá siendo 0.

• Función Tangencial Hiperbólica


Es similar a la anterior pero en este caso la saturación es 1 para el valor
máximo y -1 para el mínimo.
Atendiendo a los tipos de funciones que intervienen en el cómputo, las neuronas se
pueden clasificar en neuronas lineales y neuronas no lineales.

• Neuronas lineales
Tienen funciones de activación y de transferencia lineales, por lo que la
composición de ambas funciones da lugar a otra función lineal. En estas neuronas la
salida oi es linealmente dependiente (es decir, proporcional) de sus entradas Oj
ponderadas cada una de ellas por el peso asociado a las sinapsis (Wij) por las que le
llega a la unidad i las entradas señal. La respuesta de las neuronas lineales no está
acotada y puede tomar cualquier valor.

Está demostrado que los cómputos que realizan redes con más de dos capas
con unidades lineales se pueden realizar también con redes de dos capas, con lo que
se hace superfluo construir redes de más de dos capas si las funciones utilizadas son
siempre lineales.

Las primeras redes que aparecieron eran de este tipo y presentaban por esta
característica dos grandes problemas:

1. Falta de persistencia en las respuestas: todo cambio en las señales de entrada


produce inevitablemente cambios en las salidas; ello puede dar lugar a que cambios
realmente muy pequeños en las entradas provoquen fluctuaciones bastante grandes
en la respuesta.
2. Falta de adecuación simultánea a señales grandes y pequeñas: si las
funciones utilizadas amplifican mucho las señales de entrada, entonces señales de
entrada de pequeña intensidad no se perderán sino que provocarán una respuesta
de la neurona (señales de entrada moderada provocarán respuestas elevadísimas).
En el caso de que dichas funciones amplifiquen poco las señales de entrada (si
produce salidas moderadas ante valores medios), entonces las señales de entrada
débiles producirán señales poco significativas.

• Neuronas no lineales
En estas neuronas su respuesta no es una función lineal o proporcional de sus
entradas pues o bien la función de activación o bien la de transferencia o bien ambas
son funciones no lineales. Este es el caso cuando la unidad o neurona utiliza las
funciones no lineales Umbral, Sigmoide o Hiperbólica Tangente.

Estas neuronas son más interesantes que las anteriores pues producen
respuestas acotadas y con ello resuelven en gran medida los problemas anteriores; por
ejemplo en el caso del uso de la función umbral, la neurona produce una salida
discreta (0 o 1 por ejemplo) con lo que no se da el problema de la fluctuación de la
respuesta. En el caso de neuronas con función sigmoide o hiperbólica tangente las
repuestas sólo varíen significativamente ante los cambios de las entradas cuando el
valor de la actividad de la neurona está a medio camino entre los dos niveles de
saturación, mientras que cuando se alcanza los niveles de saturación pequeñas
fluctuaciones en los datos de entrada no producen cambios en la respuesta; con ello se
consigue el efecto de que la neurona no produce salidas con cambios significativos
cuando las nuevas señales de entrada no son muy diferentes de los actuales.
Volver a al índice

VII.2.6. Reglas de aprendizaje

VII.2.6.a. Conceptos y modelos de aprendizaje

En las redes neuronales se dice que la red aprende cuando es capaz de ofrecer
ante un determinado patrón de entrada el correspondiente patrón de salida. Esta
capacidad para emparejar adecuadamente los vectores de entrada y los vectores de
salida lo consigue la red mediante la modificación de los patrones de interconexión. Las
redes neuronales biológicas realizan estas modificaciones mediante, al menos, los
siguientes procedimientos:

1. el desarrollo de nuevas conexiones;

2. la pérdida de las conexiones existentes;

3. la modificación de la fuerza de las conexiones que ya existen.

Los aspectos 1 y 2 han sido poco tratados en el marco de las redes neuronales
conexionistas. De todos modos, pueden considerarse como un caso especial de 3,
puesto que el cambio de la fuerza de conexión de cero a algún otro valor, sea positivo
o negativo, tiene un efecto similar al hecho de desarrollarse una nueva conexión; y, a
la inversa, siempre que se modifique la fuerza de conexión situándola en cero es como
si se perdiese una conexión existente. En definitiva, el aprendizaje en las redes
conexionistas consiste en la modificación de las intensidades de las
conexiones; las reglas de aprendizaje no son otra cosa que las reglas o
procedimientos para cambiar los pesos sinápticos o pesos de las conexiones.

En la vida de la red se suelen distinguir dos periodos o fases: durante la fase


de aprendizaje se la entrena para que modifique sus pesos sinápticos hasta que su
respuesta ante los patrones de entrada sea correcta. En la fase de funcionamiento
real o fase de ejecución la red ya es operativa y sus pesos sinápticos no volverán a
ser modificados; la red ya se puede utilizar en la tarea para la que ha sido diseñada.

Existen varios modelos de aprendizaje, siendo los principales el supervisado, el


no supervisado y el reforzado.

• aprendizaje supervisado: en este modelo existe un agente externo


(supervisor o maestro) que controla el proceso de aprendizaje de la red. La red
debe relacionar dos fenómenos (X e Y) mediante la presentación de un conjunto
de ejemplos (x1, y1), (x2, y2), ..., (xn, yn). En la formulación anterior, "X"
representa las entradas e "Y" las salidas requeridas Se llama “juego de ensayo”
al conjunto formado por las parejas anteriores, “patrón de estímulos-respuesta
deseada”. En algunos casos no hay ninguna duda en cuanto a los elementos
que deben componer dicho juego de ensayo puesto que se conocen
perfectamente todos los patrones que la red debe reconocer y sus salidas
correspondientes (este ocurre, por ejemplo con el uso del Perceptrón para el
cómputo de las funciones lógicas); pero en la mayoría de los casos esto no es
así y es preciso tener mucho cuidado en la elección del juego de ensayo y tratar
de incluir en él los patrones más representativos del problema o fenómeno que
se intenta computar. El maestro presenta a la red una entrada x y la red
produce una salida oi. Normalmente esta salida no coincide con la salida
requerida, por lo que el maestro debe calcular el error de salida, ei = e(oi, yi) y
proceder a la modificación de los pesos utilizando alguna regla de aprendizaje
con la intención de aproximar la salida obtenida a la salida deseada. Tras esta
modificación se presenta el siguiente patrón del juego de ensayo y se procede
de la misma manera. Cuando se termina con el último patrón del juego de
ensayo, se tiene que volver a empezar de nuevo pues los pesos se han
modificado y es preciso comprobar que la red responde adecuadamente. A cada
uno de los pasos completos del juego de ensayo se le llama ciclo; dependiendo
de la complejidad del problema, serán precisos pocos o muchos ciclos para el
aprendizaje. La fase de aprendizaje termina cuando los pesos se estabilizan o
convergen en unos valores óptimos. En este caso la red consigue responder
correctamente a todas las presentaciones de los patrones estimulares del juego
de ensayo. Aunque el ideal de aprendizaje es el cien por cien de aciertos, se
considera que concluye cuando se minimizan razonablemente los errores ante
el conjunto de ejemplos presentados.
• aprendizaje no supervisado: en este tipo de aprendizaje no existe dicho
agente externo que vaya modificando los pesos sinápticos en función de la
corrección de la salida de la red; la red no compara su respuesta efectiva con la
salida correcta puesto que no se le especifica cuál ha de ser dicha salida
correcta. Con este aprendizaje se busca que la red se autoorganice y encuentre
por sí misma características, regularidades, correlaciones o categorías en los
datos de entrada. En el aprendizaje no supervisado es necesario presentar un
mayor número de patrones de entrada y utilizar reglas de aprendizaje distintas
a las que nos sirven para el caso anterior; además las arquitecturas de las
redes suelen ser distintas (por ejemplo muchas de ellas tienen dos capas),
destacando las redes de Kohonen y de Grossberg. El modelo que
comentamos tiene mucha importancia para los sistemas biológicos pues es
evidente que la cantidad de habilidades aprendidas con la ayuda de un
“profesor” es muy inferior a la que se aprende “espontáneamente”.
• aprendizaje reforzado: en cierto modo es una variante del aprendizaje
supervisado pues también utiliza un supervisor que examina las salidas del
sistema; sin embargo en el aprendizaje reforzado no se dispone de salidas
deseadas precisas por lo que no es posible computar el error para cada una de
las unidades de salida; el supervisor valora el comportamiento global de la red
mediante un criterio y en función de él modifica los pesos mediante un
mecanismo de probabilidades. Para ilustrar la diferencia entre este tipo de
aprendizaje y el supervisado se suele indicar que en el reforzado el supervisor
se comporta como un crítico (que opina sobre la respuesta de la red) y no
como un maestro (que indica a la red la respuesta concreta que debe generar),
mientras que en el supervisado el supervisor se comporta como un maestro. En
el aprendizaje reforzado los algoritmos son más complejos que en el
supervisado y el tamaño de las muestras superior. Uno de los algoritmos más
conocidos para este tipo de aprendizaje es el algoritmo asociativo con
recompensa y penalización presentado en 1985 por Barto y Anandan
Volver a al índice

VII.2.6.b. Regla de Hebb (o regla del producto)

En La organización de la conducta, escrito en 1949, Hebb defiende la idea de


que el aprendizaje y la memorización se basa en modificaciones de las conexiones
existentes entre las neuronas y en la creación de conexiones nuevas; pero el cambio
que le pareció más determinante para explicar el aprendizaje y la memoria es el
relativo a la modificación del potencial con el que se transmiten las señales nerviosas
entre las neuronas. Expresó esta modificación del modo siguiente (regla de Hebb):
cuando dos neuronas tienden a estar activas o inactivas simultáneamente, la fuerza o
intensidad de sus conexiones aumenta, y disminuye en caso contrario.

Para dar cuenta de esta modificación supuso que el incremento de la conexión


se debe a un aumento del área de unión sináptica. En la actualidad se considera que
esta explicación biológica no es adecuada puesto que se cree más bien que la causa
está en un incremento de la velocidad con que se libera el neurotransmisor en la célula
presináptica. Sin embargo, no interesa su explicación biológica sino la formulación
general antes citada, que como se observa no se expresa en términos matemáticos
precisos; por esta razón, existen muchas interpretaciones matemáticas de la regla de
Hebb. Al aprendizaje que sigue este modelo se le llama aprendizaje tipo Hebb.
Veamos algunas de dichas interpretaciones matemáticas:

∆wij = ai(t) * aj(t)


∆wij = µ(ai–ai) * (aj–aj)

∆wij = µ * ai(t) * aj(t)


∆wij = µ * ai(t) * oj(t)

∆wij : es el incremento que se ha de sumar o restar al peso sináptico


µ : es la tasa de aprendizaje
ai(t) : es la activación de la neurona i en el tiempo t
ai : media de los valores de activación de i
aj : es la activación de la neurona j
aj : media de los valores de activación de j
oj(t) : es la señal que emite la neurona j en el tiempo t
Se trata de una regla de aprendizaje no supervisado, pues no existe
ninguna información externa que nos indique si los resultados de la red son erróneos,
ni que nos ayude a decidir cómo y en qué grado modificar las conexiones.; la regla
hace simplemente que las unidades vayan influyéndose unas a otras, y se
autoconfiguran la permeabilidad sináptica de la red a partir de las reacciones a los
estímulos recibidos.

Volver a al índice

VII.2.6.c. Regla de Windrow-Hoff o regla delta o regla del menor error


cuadrático

La utilizaron por primera vez, en 1960, B. Widrow y M. Hoff para su red


ADALINE. Se trata de una regla de aprendizaje supervisado (es preciso presentar a la
red todos los casos de pares entrada-salida que se desea que la red aprenda, y que el
maestro modifique los pesos de las conexiones para corregir los errores en las salidas).
Se denomina “regla delta” porque en esencia el procedimiento consiste en modificar
los pesos de las conexiones (por lo tanto, favorecer el aprendizaje de la red) a partir
del cálculo de la diferencia (o delta) entre las salidas efectivas de la red y las salidas
deseadas.

El maestro presenta a la red un vector o patrón de entrada. Si la red produce el


vector de salida deseado no realiza ningún cambio en los pesos. Si existe discrepancia
entre ambos vectores, los pesos se cambian para reducir la diferencia. Cuando existe
diferencia entre las salidas efectivas y las deseadas la modificación afecta a todos los
pesos de las neuronas que colaboran en el error, y se modifican en proporción a su
influencia en el error. Se sigue el procedimiento citado minimizar el error y, en los
mejores casos, convertirlo en cero. En la literatura sobre el tema existen varias
formulaciones; presentamos dos de las más sencillas:

∆wij = µ [Ti(t+1) – ai(t+1)] oj(t)

∆wij : incremento o decremento del peso sináptico


µ : tasa de aprendizaje
Ti(t+1) : activación deseada en la neurona i
ai(t+1) : activación real de la neurona i
oj(t) : señal emitida por la neurona j y enviada a la neurona i
En esta primera fórmula intervienen los valores de los estados de activación (el
que realmente tiene la unidad y el deseado), por lo que para averiguar si la salida final
de la red es la correcta es preciso tener en cuenta la función de transferencia.

Otra formulación es la siguiente:

∆wij = µ [Ti(t+1) – oi(t+1)] aj(t)

∆wij : incremento o decremento del peso sináptico


µ : tasa de aprendizaje
Ti : es la señal deseada de la unidad i (la unidad de salida)
oi : es la señal producida por la unidad i (la unidad de salida)
aj(t) : es la activación de la unidad j (la unidad de entrada)

La expresión entre corchetes representa el error que se comete en el nivel de


activación de la neurona. El nuevo peso sináptico wij se calcula sumando o restando el
incremento obtenido con la fórmula general.

Volver a al índice

VII.2.6.d. Regla Delta Generalizada (o regla de propagación hacia atrás)

La regla delta no se puede utilizar en redes que tengan más de dos capas de
unidades pues con él no es posible averiguar en cuánto colaboran las unidades de las
capas intermedias en el error total. Dado que hay muchos problemas de clasificación
que las redes de dos capas no pueden resolver y sí lo pueden hacer las redes
multicapa, es necesario ampliar la regla delta para aplicarla a estas últimas. La regla
delta generalizada es precisamente una modificación de la regla delta para su
aplicación a redes multicapa Se suele atribuir su desarrollo a David E. Rumelhart,
Geoffrey Hinton, Robert J. Williams (“Learning internal representations by error
propagation”, en Parallel Distributed Processing: Explorations in the Microstructure of
Cognition, vol. 1, Foundations, ed. David E. Rumelhart y James L. McClelland,
Cambridge: Mit Press, 1986).

Esta regla trabaja con el modelo de aprendizaje supervisado, su aplicación es


válida sólo con redes alimentadas hacia adelante, y al igual que la regla delta, compara
la respuesta emitida por la red con la respuesta deseada y reajusta los pesos
sinápticos de todas las sinapsis de forma proporcional a la diferencia encontrada. Pero,
y esta es la diferencia fundamental, con la regla delta generalizada el cálculo se hace
capa a capa desde la capa de salida hacia la de entrada (de ahí que se llame
retropropagación del error, o mejor, de la corrección del error). Dada la complejidad de
la táctica empleada para la modificación de los pesos no se incluye en este informe su
desarrollo matemático.

La regla delta de aprendizaje presenta también algunas dificultades


características, por ejemplo, que se caiga en un mínimo local: en el proceso de
minimización del error la red puede llegar a una situación en la que cualquier pequeño
cambio en los pesos, positivo o negativo, incrementa el error; en esta situación la
regla no es capaz de determinar la dirección en la que se debe mover los pesos para
que, con un incremento mayor, el error vuelva a decrecer.

La regla delta generalizada es una de las más utilizadas en las redes conexionistas
multicapa alimentadas hacia adelante; desde un punto de vista histórico y
metodológico supuso un impulso muy importante para el conexionismo pues consiguió
superar las dificultades matemáticas descubiertas por Minsky y Papert y que tanto
frenaron la investigación en redes neurales. Con este algoritmo de aprendizaje
utilizado en redes multicapa es posible resolver el problema de la disyunción exclusiva
y el de la distinción entre T y C (recordamos que estos problemas se utilizaron como
ejemplo de las limitaciones del Perceptrón).

CONEXIONISMO

VIII. ALGUNOS MODELOS DE REDES NEURONALES


VIII.1. REDES DE McCULLOCH-PITTS O REDES DE NEURONAS FORMALES
VIII.2. PERCEPTRONES
VIII.3. EL PANDEMONIUM: UN MODELO PARA EL RECONOCIMIENTO DE PATRONES
VIII.3.1. La tarea de reconocimiento de patrones: dos explicaciones, el modelo de plantillas y
modelo de análisis de características
VIII.3.2. El Pandemonium: rasgos principales
VIII.3.3. El Pandemonium: base experimental
VIII.3.4. El Pandemonium: dificultades
VIII.3.5. El Pandemonium y el conexionismo
VIII.4. NETtalk: APRENDER A LEER EN INGLÉS

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda. Envíe el formulario


Buscar

búsqueda

www.e-
torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1 GALT:#660000;G

Final del formulario

VIII. 1. REDES DE McCULLOCH-PITTS O REDES DE NEURONAS FORMALE


En 1943, Warren McCulloch (neurofisiólogo) y Walter Pitts (matemático) publicaron en el Bul
Mathematical Biophysics "Un cálculo lógico de las ideas inmanentes en la actividad nerviosa"; en este
defendieron la tesis de que las actividades de las neuronas y las relaciones existentes entre ellas
estudiarse mediante la lógica proposicional. Creyeron que las neuronas tenían un comportamiento biest
producir salidas todo-nada) y que, en este sentido, eran semejantes al comportamiento también biestá
los conmutadores eléctricos (abierto-cerrado). Junto con la idea relativa al comportamiento supuest
lógico de las neuronas, presentaron también la idea de construir máquinas de computar con una arqu
similar a las neuronas. A pesar de su conocimiento insuficiente de las neuronas y las sinapsis orgánic
ideas han tenido mucha importancia en el desarrollo de la psicología cognitiva: consideraron que las ley
gobiernan la mente tienen más que ver con las leyes que gobiernan la información que con las relativ
materia (idea más común a la psicología cognitiva clásica que al conexionismo); pero en su comprens
aprendizaje anticiparon también ideas conexionistas: dieron más importancia al aprendizaje que a f
innatos, consideraron que nuestro cerebro comienza con redes aleatorias, que los estímulos pr
conexiones de una determinada manera y que los estímulos posteriores, si son fuertes y constantes, llev
la red a manifestar una configuración determinada. Esta configuración determinaría que la respuesta de
fuese distinta ante nuevos estímulos. En definitiva, su artículo fue importante al tratar al cerebro co
organismo computacional.
Demostraron también que redes neuronales sencillas, conectadas entre sí mediante sinapsis exci
CONEXIONISMO

IX. REDES NEURONALES PARA EXPLICAR EL CEREBRO

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario

Cuando nos enfrentamos con la difícil tarea de comprender los presupuestos,


tesis y alcance del conexionismo muy pronto se nos presenta la siguiente pregunta: los
modelos conexionistas, ¿qué quieren explicar, la mente o el cerebro? ¿Son modelos de
la mente o del cerebro? Una respuesta que habitualmente se ofrece es que las redes
conexionistas se han desarrollado en el campo de la psicología para explicar
habilidades y competencias mentales (percepción, lenguaje, pensamiento, ...); ese tipo
de redes pertenecen a la psicología y son modelos de la mente; frente a ellas, se
indican ejemplos de redes creadas en el marco de la neurociencia para dar cuenta de
procesos puramente cerebrales (y, en este caso, son por lo tanto modelos del
cerebro).

Con el término “psicobiología” podemos referirnos al enfoque que intenta


explicar el mundo de la mente y la conducta a partir de elementos, estructuras y
procesos biológicos. Una parte importante de esta disciplina incluye el estudio de la
influencia que sobre la psíque tienen las substancias químicas, tanto exógenas como
endógenas (por ejemplo el influjo de los neurotransmisores en la conducta). Pero
parece claro que también el estudio de cómo la arquitectura y procesos del sistema
nervioso influyen en la mente y la conducta (lo que cabría llamar psiconeurología)
debe formar parte de la psicobiología. En el momento actual de la ciencia disponemos
ya de explicaciones “biologistas” para dar cuenta de importantes fenómenos
psicológicos, y no sólo en el ámbito de los trastornos de conducta; no es arriesgado
afirmar que en el campo de la percepción este enfoque ya nos permite explicar algunos
fenómenos perceptuales (por ejemplo, simplemente el hecho de poder percibir colores,
o la distinción de contornos a partir de peculiaridades del procesamiento neural como
la del efecto de la inhibición lateral, ...). Aunque la siguiente tesis exigiría,
naturalmente, un análisis cuidadoso parece que el conexionismo tiene como
destino formar parte de la psicobiología (o psiconeurología) antes que de lo
que tradicionalmente entendemos por psicología.

El conexionismo oscila entre las siguientes posiciones:


• la Inteligencia Artificial: si las redes que se construyen no intentan
reproducir el funcionamiento real del cerebro y buscan, simplemente, imitar
competencias típicamente humanas, entonces no tenemos psicobiología pero
tampoco psicología, tenemos una tecnología que nos faculta para construir
arquitecturas que puedan ser implementadas en sistemas físicos no biológicos
como los ordenadores y los robots (por ejemplo para el reconocimiento de
textos, el reconocimiento del habla, el movimiento preciso en un entorno poco
amigable, ...);
• la biología: si se construyen redes que quieren ser fieles a los mecanismos y
estructuras reales de nuestro sistema nervioso, y se las utiliza para dar cuenta
de competencias tradicionalmente atribuidas a la mente (lenguaje, percepción,
memoria, ...); este enfoque no es psicología (al menos psicología mentalista)
sino psiconeurología y, por supuesto, sus descubrimientos pueden tener
relevancia en Inteligencia Artificial.

El conexionismo parece ser una teoría que apela al cerebro para explicar
competencias atribuidas tradicionalmente a la mente. Con esto se quiere sugerir que
desde el conexionismo se defiende la tesis de que lo mental no tiene un estatuto
propio, que la vida mental no posee un tipo de regularidades que puedan dar lugar a
una disciplina independiente de la biología (más exactamente de las ciencias del
sistema nervioso). En esta línea de interpretación se incluyen, por ejemplo, las tesis de
dos de los representantes más destacados en el campo de la reflexión teórica sobre el
sentido, valor y límites del conexionismo, los Churchland.

Por otro lado, la idea de que es preciso comprender el funcionamiento de las


estructuras nerviosas para dar cuenta de los procesos mentales (es decir, la idea de
que las redes conexionistas han de ser modelos del cerebro) se encuentra en los
orígenes mismos del conexionismo y ha dado lugar a redes neuronales e hipótesis que
gozan de cierto apoyo experimental; citemos algunos ejemplos:
• la regla de aprendizaje descubierta por Hebb quería describir el modo real en
que se relacionan las neuronas en el cerebro para formar asociaciones estables
entre ellas;
• en su obra de 1947 How We Know Universals: The Perception of Auditory and
Visual Formas, McCulloch y Pitts, defendieron la tesis de que las redes
neuronales de los córtices auditivo y visual eran capaces de reconocer
propiedades invariantes del mismo patrón, que las redes neuronales del
colículo superior (involucrado en el control del movimiento de los ojo) podían
generar el patrón a partir de ejemplos de dicho patrón, y presentaron una
descripción abstracta de dichas redes;
• Taylor propuso las redes que llevan su nombre para explicar la memoria
asociativa y afirmó que las áreas de asociación de la corteza cerebral y el
tálamo contenían dichas redes;
• y en este mismo contexto hay que situar las teorías del cerebelo, del
hipocampo y del neocortex defendidas por Marr a finales de los sesenta y
principios de los años setenta:
* el funcionamiento del cerebelo es semejante a las redes asociativas direccionables
por contenido (ACAMs), y gracias a dicho funcionamiento los animales pueden realizar
movimientos voluntarios delicados y precisos;

* el hipocampo es el soporte físico de la memoria a corto plazo o memoria de trabajo,


y puede clasificar patrones y recuperar un patrón a partir de datos fragmentarios
porque es también un ACAM;

* las representaciones que nos formamos de las clases y subclases de objetos se


basan en el hecho de que el neocortex tiene una estructura y mecanismo similares al
del Perceptrón.

La figura siguiente representa la red propuesta por Marr para explicar el


funcionamiento del cerebelo (tomado de Stephen R. Graubard, comp. El nuevo debate
sobre la inteligencia artificial).

células
granulares (g);
son las únicas
células excitatorias,
el resto son
inhibitorias;

células de Golgi
(Go) controlan los
umbrales de las
células granulares;

células de cesta
(Ba): controlan los
umbrales de las
células de Purkinje
(Pu)

células
estrelladas (S):
controlan los
umbrales de las
células de Purkinje
(Pu)

La red se comporta
como una red ACAM
y asocia los
patrones de las
fibras musgosas
(MF) y de las
células en
pendiente (CF).

CONEXIONISMO

APÉNDICE: MATRICES
Principio del formulario
w w w .e-torredeb

Introduzca los términos de búsqueda. Envíe el


Buscar

formulario de búsqueda

Web www.e-torredebabel.com
pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario

Una matriz es una formación rectangular de números. Una matriz de m por n


(escrito m x n) tiene m filas y n columnas. Por ejemplo:

es una matriz 2 x 4 es una matriz 4 x 2

es una matriz cuadrada 4 x 4 es una matriz fila 1 x 4

es una matriz columna 4 x 1


Generalmente las matrices se representan con letras mayúsculas en negrita, por
ejemplo, A, B y C podrían representar tres matrices.
La posición de un elemento en una matriz es de importancia fundamental. Si son
intercambiados elementos distintos, la matriz también cambia. Por ejemplo:
,,
son todas matrices distintas. Dos matrices son idénticas si y sólo si cada elemento de
una es igual al correspondiente elemento de la otra. Dos matrices no pueden ser
iguales a menos que tengan el mismo número de filas y el mismo número de
columnas; así:

La suma (o sustracción) de matrices es sencilla, pero solamente puede realizarse


si las matrices son del mismo orden (es decir, m x n), esto es, cuando tienen el mismo
número de filas y columnas. Los elementos correspondientes se suman (o, en el caso
de la sustracción, los elementos se restan).
Ejemplo

+ + = =

Ejemplo

+ = =

Multiplicación de matrices por números reales


Multiplicar una matriz por un número p es multiplicar cada elemento de la
matriz por p.

2 =

Multiplicación de matrices
Dos matrices se pueden multiplicar si y sólo si el número de columnas de la
primera matriz es igual al número de filas de la segunda

AxB=

Ejemplo

* = =

Ejemplo
* = =
Ejemplo
* = =2

CONEXIONISMO

BIBLIOGRAFÍA BÁSICA EN CASTELLANO

Principio del formulario


w w w .e-torredeb

Introduzca los términos de búsqueda.


Buscar

Envíe el formulario de búsqueda

We www.e-
b torredebabel.com

pub-3445538573 1 6474334069 ISO-8859-1 ISO-8859-1

GALT:#660000;G es

Final del formulario


1. Ballesteros Jiménez, Soledad. (1995). Psicología general. Un enfoque
cognitivo. Madrid: Editorial Universitas, Segunda edición.

2. Boden, Margaret A. (compiladora).(1990). The Philosophy of Artificial


Intelligence. Londres: Oxford University Press. Traducción castellana
(1994): Filosofía de la Inteligencia Artificial. México: Editorial Fondo de
Cultura Económica.

3. Churchland, Paul M. (1988). Matter and Consciousness. Cambridge, MA:


Revised Edition. The MIT Press. Traducción castellana (1992): Materia y
conciencia. Una introducción contemporánea a la filosofía de la mente.
Barcelona: Editorial Gedisa.

4. Churchland, Paul M. y Churchland, Patricia Smith. (1990). ¿Podría pensar


una máquina? Investigación y Ciencia. Marzo.
5. Corbí, Josep y Prades, Josep L. (1995). El conexionismo y su impacto en la
filosofía de la mente. En Fernando Broncano (ed.) La mente humana.
Madrid: Editorial Trotta y Consejo Superior de Investigaciones Científicas.

6. Engel, Pascual (comp.). (1988). Psichologie ordinaire et sciences cognitives.


Paris: Centre National de la Recherche Scientifique. Traducción castellana
(1993): Psicología ordinaria y ciencias cognitivas. Barcelona: Editorial
Gedisa.

7. Fernández Trespalacios, José Luis. (1986). Psicología General (I). Madrid:


Editorial Gráficas Maravillas.

8. Fernández Trespalacios, José Luis. (1990). ¿Qué es la psicología? Una visión


actual de sus puntos de vista teóricos y de sus aplicaciones. Madrid:
Editorial Gráficas Maravillas.

9. Fernández Trespalacios, José Luis. (1990). Enfoques actuales de la


psicología científica. Madrid: Lección de la sesión inaugural del curso
1990/1991.

10.Ferrater Mora, José. (1990). Modos de modelar la mente. en VVAA.


Modelos de la mente. Madrid: Editorial de la Universidad Complutense.

11.Fodor, Jerry A. (1995). The Language of Thought. Cronwell. Nueva York.


Traducción castellana (1984): El lenguaje del pensamiento. Madrid: Alianza
Editorial.

12.Freeman, James A. y Skapura, David M. (1991). Neural Networks.


Algorithms, Applications, and Programming Techniques. Massachusetts:
Addison-Wesley Publishing Company. Traducción castellana (1993): Redes
neuronales. Algoritmos, aplicaciones y técnicas de programación.
Wilmington, Delaware, USA: copublicado por Addison-Wesley
Iberoamericana y Ediciones Díaz de Santos

13.Fuentes Melero, Luis J. (1992). Reconocimiento de patrones. En José Luis


Fernández Trespalacios y Pío Tudela, (coord.), Tratado de Psicología
General. Vol. 3. Atención y percepción. Madrid: Alhambra Universidad.

14.García-Albea, José E. (1991). Entrevista con Jerry Fodor. En La mente y


sus representaciones: cognición e inteligencia artificial. Madrid: Revista de
Occidente, Abril 1991.

15.García-Albea, José E. (1991). La mente como máquina simbólica. En La


mente y sus representaciones: cognición e inteligencia artificial. Madrid:
Revista de Occidente, Abril 1991.

16.García Madruga, Juan A. (1991). El enfoque computacional en el estudio del


desarrollo de la mente. En La mente y sus representaciones: cognición e
inteligencia artificial. Madrid: Revista de Occidente, Abril.
17.Graubard, Stephen R. (compilador). (1988). The artificial intelligence
debate False starts, real foundations. Cambridge, MA: Mit Press edition.
Traducción castellana (1993): El nuevo debate sobre la inteligencia
artificial. Sistemas simbólicos y redes neuronales. Barcelona: Editorial
Gedisa.

18.Hilera, José R. y Martínez, Victor J. (1995). Redes neuronales artitificiales.


Fundamentos, modelos y aplicaciones. Madrid: Editorial RA-MA.

19.Johnson-Laird, Philip N. (1988). The Computer and the Mind: An


Introduction to Cognitive Science. William Collins Sons and Co. Lid.,
Glasgow. Traducción castellana (1990): El ordenador y la mente.
Introducción a la ciencia cognitiva. Barcelona: Editorial Paidós.

20.Lindsay, Peter H. y Norman, Donald A. 1977 Human Information


Processing. An Introduction to Psychology Nueva York, Academic Press.
Traducción castellana (1986): Introducción a la psicología cognitiva. Primera
reimpresión. Madrid: Editorial Tecnos.

21.Martínez Arias, Rosario y Yela, Mariano (coordinadores). (1991).


Pensamiento e inteligencia. Madrid: Editorial Alhambra.

22.Mayor, Juan. (1990). Modelos de la mente y modelos mentales. en VVAA.


Modelos de la mente. Madrid. Editorial de la Universidad Complutense.

23.Mora, Francisco y Sanguinetti, Ana María. (1994). Diccionario de


neuronciencias. Madrid: Alianza Editorial.

24.Olmeda, Ignacio y Barba-Romero, Sergio (editores). (1993). Redes


neuronales artificiales. Fundamentos y aplicaciones. Alcalá de Henares:
Servicio de Publicaciones de la Universidad de Alcalá.

25.Pitarque, Alfonso y Algarabel, Salvador. (1991). El conexionismo como


marco de simulación: aplicación a una tarea de facilitación semántica.
Cognitiva, vol. 3, 2.

26.Pylyshyn, Zenon W. (1984). Computation and Cognition. Toward a


Foundation for Cognitive Science. Cambridge, MA: The MIT Press.
Traducción castellana (1988): Computación y conocimiento. Hacia una
fundamentación de la ciencia cognitiva. Madrid: Editorial Debate.

27.Ríos, Juan, Pazos, Alejandro, Brisaboa, Nieves R. y Caridad, Serafín.


(1991). Estructura, dinámica y aplicaciones de las redes de neuronas
aritificiales. Madrid: Editorial Centro de Estudios Ramón Areces.

28.Rivière, Angel. (1991). Objetos con mente. Madrid: Alianza Editorial.

29.Rumelhart, David E., McClelland, James L. y el grupo PDP. (1986). Parallel


Distributed Processing: Explorations in the Microstructure of Cognition.
Massachusetts: The MIT Press. Traducción castellana: (1992). Introducción
al procesamiento distribuido en paralelo. Madrid: Alianza Editorial.
30.Searle, John R. (1990). ¿Es la mente un programa informático?
Investigación y Ciencia. Marzo, 1990.

31.Sierra-Vázquez, V. (1992). Procesamiento visual inicial: aspectos


biológicos, psicofísicos y computacionales del análisis espacial de imágenes
por el sistema visual humano. En José Luis Fernández Trespalacios y Pío
Tudela, (coord.), Tratado de Psicología General. Vol. 3. Atención y
percepción. Madrid: Alhambra Universidad.

32.Toribio Mateas, Josefa. (1995) Eliminativismo y el futuro de la Psicología


Popular. En Fernando Broncano (ed.) La mente humana. Madrid: Editorial
Trotta y Consejo Superior de Investigaciones Científicas.

http://www.e-torredebabel.com/Psicologia/Conexionismo/Conexionismo-
Indice.htm

==============================================

Herramientas en GNU/Linux para estudiantes


universitarios
Redes Neuronales con GNU/Linux
Francisco José Palacios Burgos
Copyright (c) 2.003 Francisco J. Palacios Burgos.
Permission is granted to copy, distribute and/or modify this document under the terms of
the GNU Free Documentation License, Version 1.2 or any later version published by the
Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-
Cover Texts. A copy of the license is included in the section entitled "GNU Free
Documentation License".

Tabla de contenidos

1. Historia de las Redes Neuronales

1.1. Inteligencia Artificial

1.2. Redes Neuronales

2. Conceptos Básicos sobre RNA

2.1. La neurona artificial

2.2. Arquitectura de una RNA

3. Tipos de Redes Neuronales

3.1. Clasificación de las RNA


3.2. El perceptron multicapa (MLP)

3.3. Redes Autoorganizadas. Redes SOFM

3.4. Redes de funcion de base radial (RBF)

4. Ejemplo de entrenamiento de una red neuronal. Caso RBF

4.1. Ejemplo de aprendizaje para un problema de clasificacion por medio


de una red RBF

A. Referencias interesantes

B. GNU Free Documentation License

B.1. PREAMBLE

B.2. APPLICABILITY AND DEFINITIONS

B.3. VERBATIM COPYING

B.4. COPYING IN QUANTITY

B.5. MODIFICATIONS

B.6. COMBINING DOCUMENTS

B.7. COLLECTIONS OF DOCUMENTS

B.8. AGGREGATION WITH INDEPENDENT WORKS

B.9. TRANSLATION

B.10. TERMINATION

B.11. FUTURE REVISIONS OF THIS LICENSE

B.12. ADDENDUM: How to use this License for your documents

Lista de tablas

4-1. Datos de entrenamiento

Lista de figuras

1-1. Representación de una neurona biológica

2-1. Representación de una neurona artificial tipo McCulloch-Pitts

2-2. Funciones de activación más usuales

3-1. Representación de redes unidireccionales y realimentadas


3-2. Representación de un Perceptrón Multicapa (MLP)

3-3. Forma funcional de una sigmoide

3-4. Arquitectura típica de un mapa SOM

3-5. Arquitectura típica de una red de tipo RBF

3-6. Forma funcional de una función tipo Gaussiana

3-7. Centros en el espacio de las entradas

Lista de ecuaciones

2-1. Suma ponderada

3-1. Error cuadrático medio

3-2. Términos delta

3-3. Distancia Euclídea entre el vector sináptico y la entrada

3-4. Actualización de los pesos en una red SOM

3-5. Actualización de los pesos de la capa de salida en una red RBF

http://softwarelibre.unsa.edu.ar/docs/descarga/2003/curso/htmls/redes_neuron
ales/index.html

Das könnte Ihnen auch gefallen