You are on page 1of 7

Inteligencia Artificial y Redes Neuronales

(M. Daniela Lpez De Luise-EnterpriseWare SRL-Junio de 2001)


1. Inteligencia Artificial
Poda decirse que la Inteligencia artificial es el estudio de los comportamientos
que permiten percibir, razonar y actuar.
Desde el punto de vista de objetivos, debemos decir que adems de abarcar la
ingeniera, es en s una ciencia.
El objetivo ingenieril: resolver problemas reales usando como base las tcnicas
de representacin y utilizacin del conocimiento y de cmo construir sistemas.
El objetivo cientfico: determinar qu ideas acerca de la representacin del
conocimiento, del uso que se da a ste, y del ensamblaje de sistemas explican
diversas clases de inteligencia.
La Inteligencia Artificial, para cumplir con su objetivo, aborda el estudio de los
mtodos de representacin de conocimiento, uso y alcance. Tambin estudia los
mtodos de aprendizaje con mayor o menor complejidad.
Entre las reas ms destacadas de la AI, podemos encontrar:
- Aprendizaje automtico y Redes neuronales
- Robtica
- Percepcin
- Computacin evolutiva (algoritmos genricos)
- Arquitecturas con agentes inteligentes (ej. Bases de Datos inteligentes)
- Sistemas basados en el conocimiento: sistemas expertos
- Recuperacin de la informacin y procesamiento de lenguaje natural
2. Por qu redes neuronales
2.1. Se adapta al procesamiento paralelo masivo, realizando clculos lgicos
que en una arquitectura de Von Neumann sera casi ridculo pensar. Este
procesamiento masivo es caracterstico de cierto tipo de aplicaciones como
reconocimiento de patrones, clasificacin, etc.
2.2. Dada la flexibilidad de adaptacin es apto para aprendizaje de
caractersticas a partir de sus entradas.
2.3. Su naturaleza de procesamiento no lineal, es apto para aproximaciones
funcionales y para filtrado de seales con resultados altamente superiores a los
sistemas convencionales.
2.4. Son excelentes sistemas de clasificacin donde los dominios de inters son
complejo.
3. Problemas de las redes neuronales
3.1.Requieren de una capacidad de clculo muy alta para obtener resultados
significativos
3.2.Debido a su naturaleza matemtica, la red puede alcanzar un nivel de
optimizacin local y no global (ac hay que tener en cuenta que en definitiva
siempre se est optimizando una especie de funcin de costo, que ser la que
refleje el objetivo a alcanzar).

3.3.Para la resolucin de muchos problemas de la vida real an son tcnicas


impracticables debido al estado de avance de la tecnologa y a la complejidad de
la implementacin e interpretacin de las redes.
4. Conceptos bsicos
Una manera de ver el comportamiento bsico de una red es compararla contra
un sistema algortmico tradicional.

Ac vemos unas diferencias importantes:


1.En el caso del clasificador tradicional (A), los patrones de entrada son
introducidos secuencialmente, luego se realizan ciertos clculos internos
tambin secuencialmente. En el caso del clasificador neuronal (B), las entradas
son paralelas y los clculos internos se realizan paralelamente.
2.En el caso tradicional, los parmetros del sistema son calculados previamente
a partir de los datos de muestra. Una vez determinados, estos parmetros
permanecen invariables en el tiempo. En cambio en el clasificador neuronal (B)
los parmetros internos y los pesos que unen los nodos (donde se deposita
parte del conocimiento acerca del algoritmo de clasificacin), son aprendidos
por la red durante el transcurso de su proceso de aprendizaje, que solo consta
de la presentacin de las entradas de muestra y de la respuesta esperada por
parte de la red. Al terminar este proceso (totalmente automtico), puede optarse
o no por dejar los parmetros estticos.

5. Taxonoma
Los componentes bsicos de una red de neuronas son:
5.1. Nodos de entrada:
Los datos de entrada a la red de neuronas, deber presentarse de manera que
sea procesable por sta. Normalmente se trata de un conjunto de valores que
conforman un vector de n elementos numricos (algunas redes admiten solo
elementos dentro de los nmeros enteros, otras permiten entradas reales
acotadas y otras simplemente reales). Estos nodos son los que reciben la
entrada en algn formato relacionado con el entorno real del problema y se
dedica a transformar las entradas en algo entendible por la red. Es un
preprocesamiento de adaptacin.

entradas

problema real

x0
x1
x2
xn-2
xn-1

5.2. Nodo interno: Funcin de Combinacin


Cada unidad en la red neuronal que no es de entrada combina valores
alimentados va una conexin sinptica o de otras unidades, produciendo un
nico valor denominado neto. No existe una definicin estndar de cmo debe
ser esta funcin. Normalmente se las denomina funcin de combinacin, y es
una funcin con dominio en el campo de los vectores y con imagen en los
escalares. Es decir, es una funcin que recibe un vector de valores y que
devuelve un nmero. La mayora de las redes de neuronas utilizan la funcin de
combinacin lineal o bien la distancia eucldea de las entradas respecto a la
salida esperada. La principal caracterstica afectada por esta funcin es la
habilidad de generalizar que pueda llegar a tener la red, especialmente cuando
la cantidad de patrones de aprendizaje son muchos.
Un esquema de este tipo de nodos sera:

entradas

x0
x1
x2

w1

...
xn-2
xn-1

w0
w2

salidas

wn-2
wn-1

El nodo gris representa la funcin de combinacin. En el caso de las


denominadas redes de Hopfield la ecucin que representa al nodo es:
(1) y = w0 . x0 + w1. x1+...+ wn-1 . xn-1 = wi. xi (i = [0..N-1])

Aqu los wi, son los pesos de las conexiones entre el nodo de entrada y el nodo
gris. Los xi, son cada uno de los elementos en que ha sido descompuesta la
entrada para conformar el vector mencionado para los nodos de entrada.
Como puede verse aqu, los pesos dependen de los nodos que interconectan.
En estos pesos quedar parte de la informacin algortmica almacenada, de
modo que al modificar el peso de una conexin estamos modificando el
algoritmo que cumple la red y por lo tanto su comportamiento.
5.3. Funcin de activacin
La mayora de las unidades dentro de la red convertir su entrada a otro valor
escalar utilizando esta funcin. El valor resultante es denominado activacin.
Salvo para las neuronas de salida, normalmente estos valores son enviados va
sinpsis a otras unidades. En algunos casos estos valores son acotados. Todas
las redes tienen esta funcin, y en el peor de los casos su resultado ser
idntico a su entrada, o sea una funcin identidad o lineal.
Para nuestro estudio, tomaremos una red muy sencilla que se utiliza para
clasificar patrones, es el caso de la red de Hopfield.Para adaptar (1) conforme a
esta red, incluyendo la funcin de activacin, debemos tomar el valor obtenido
en (1) (llammoslo ) y hacerlo pasar por una funcin fh:
+1, > 1
(2) fh = 0 , [-1..+1]
-1, < -1
lo que grficamente sera:
+1

fh

-1

Nuestra neurona tendr el siguiente aspecto:

entradas

x0
x1
x2

w1

...
xn-2
xn-1

w0
w2

wn-2

fh

salidas

wn-1

Ac nuestra ecuacin (1) se transformar con (2) en :


(3) y = fh (w0 . x0 + w1. x1+...+ wn-1 . xn-1)= fh ( wi. xi) (i = [0..N-1])
5.4. Funcin de error
Para la etapa de aprendizaje, normalmente se utiliza una funcin que mide la
diferencia entre la salida obtenida por la red y el valor que debi dar (respuesta

esperada). Por medio de la misma se puede corregir el comportamiento de la


red.
En nuestro caso (red de Hopfield), no tendremos esta funcin, pero en redes
ms complejas es una componente que sirve para ajustar los pesos luego de
que el nodo haya provocado su salida. Suele ser del estilo:
(4) wi(t+1) = wi(t) + ..xi
donde vemos que se agregan dos cosas: un valor de error () y un valor que
determina la rapidez con que la red aprende de sus errores (). Los pesos wi
cambian con el tiempo, la sucesin temporal sera aproximadamente:
t
0

2
...

suceso
ingresa el vector de entrada en los
nodos input. Se inicializan los pesos wi.
Se establece que tan rpido se quiere
aprender dndole un valor a .
el nodo procesa por primera vez la
entrada y obtiene un error , que se
usa para corregir los pesos con la
rapidez dada por
se repite el paso de t=1

5.5. Funcin objetivo


Es la funcin que representa el objetivo a alcanzar durante el entrenamiento.
Normalmente se trata de una minimizacin del error total, en funcin de los
pesos de las conexiones.
En el caso de la red de Hopfield que nos planteamos, no ser ni la maximizacin
ni la minimizacin de ninguna funcin. Esta red termina de procesar cuando las
salidas obtenidas no cambian al iterar. En ese momento, la salida estable
obtenida representar el resultado deseado.
6. Demostracin
Para llevar a la prctica lo anterior veamos la red de Hopfield cuando se
compone de 120 nodos, y donde suponemos que hubo en algn momento un
proceso de aprendizaje (del cual no hablaremos en esta presentacin). La red
fue entrenada con los siguiente 8 patrones que siguen:

Cada patrn contiene 120 pixels, y slo nmeros 1 o +1 (para puntos blancos o
negros)
Luego se tom el patrn del nmero 3 y se lo distorcion invirtiendo bits al azar
con una probabilidad de 0.25. El resultado de la distorcin fue introducido en la
red para ver si reconoca que el patrn original era realmente un 3 o si lo
confunda con otra cosa (esta es la misma tcnica que se utiliza para los filtros).
A continuacin estn las 8 salidas sucesivas de la red desde el momento inicial
en t=0, hasta que se llega al resultado final en t=7:
t=0

t=4

t=1

t=5

t=2

t=6

t=3

t=7

La responsable de este resultado es la red de Hopfield, que tendr el siguiente


aspecto (incluyendo algunos artefactos matemticos no explicados):

7. Aplicacin

1.
2.
3.
4.
5.

Clasificacin
Reconocimiento de imgenes
Determinacin de patrones de comportamiento (ej.webmining)
Filtros (eliminacin de ruidos)
Robtica (ej. para que el robot aprenda a mantener el equilibrio)

Lic. M. Daniela Lpez De Luise


EnterpriseWare SRL- Buenos Aires- Argentina
TE/FAX: +54(11)4964-2435
email: dll@enterpriseware.net

You might also like