Anda di halaman 1dari 5

2

Introduccin.
Una de las ramas ms notorias en el rea de la Inteligencia Artificial corresponde a las Redes
Neuronales Artificiales (RNA), propuestas en 1943 por Warren MacCulloh y Walter Pitts. Las RNA
tratan de emular el comportamiento del cerebro humano, caracterizado por el aprendizaje a travs
de la experiencia y la extraccin de un conocimiento genrico a travs de un conjunto de datos. Por
ello las RNA se utilizan para la solucin de problemas complejos, que pueden estar mal definidos o
requieren una gran capacidad de procesamiento.
Actualmente las redes neuronales tienen diversas aplicaciones como el control de seal y potencia
irradiadas, aplicaciones militares de radar para deteccin y reconocimientos de objetivos y en
cmputo de problemas de electromagnetismo. El objetivo de esta prctica es conocer las bases para
el desarrollo e implementacin de una red neuronal para reconocer patrones.
Fundamentacin Terica.
Una red neuronal est constituida por un nmero variable de procesadores interconectados entre
s que realizan una transferencia mutua de valores llamadas activaciones. Estos procesadores son
neuronas y constituyen la base de una red neuronal. Las neuronas estn integradas bsicamente
por:
Un canal de recepcin de informacin, las dendritas, que reciben seales de entrada
procedentes de otras clulas o del exterior.
Un rgano de cmputo, el soma, que combina e integra las entradas recibidas, emitiendo
seales de salida en forma de estmulos nerviosos.
Un canal de salida, el axn, que enva la salida generada por el soma a otras neuronas o
directamente al musculo. Para transmitir la informacin el axn se conecta a travs de sus
ramificaciones a las dendritas de otras neuronas, que reciben seales y las combinan para
producir nuevas salidas. La conexin entre el axn de una neurona y las dendritas de otra
recibe el nombre de sinapsis y determina la fuerza y relacin entre ellas. El hecho de que
unas sinapsis sean excitadoras o inhibidoras, y que tengan mayor o menor importancia con
respecto a la entrada final que recibe el soma se determina biolgicamente a travs del
aprendizaje. Sin embargo, las sinapsis son unidireccionales.


Figura 1 Sinapsis Neuronales.
En una red neuronal tres tipos de neuronas: las de entrada, de salida y unidades ocultas (figura 3).
Las neuronas de entrada reciben seales desde el entorno, provenientes de sensores o de otros
sectores del problema (como archivos de almacenamiento de patrones de aprendizaje). Las

3
neuronas de salida envan su seal directamente fuera del sistema una vez finalizado el tratamiento
de informacin. Finalmente, las neuronas de unidades ocultas reciben estmulos y emiten salidas
dentro del sistema sin mantener contacto alguno con el exterior. En ellas se lleva a cabo el
procesamiento bsico de informacin.

Figura 2 Tipos de Neuronas Artificiales.
Adems de las definiciones anteriores existen otras importantes:
Perceptron simple: Red neuronal con solo una neurona de procesamiento (figura 3).
Interconexiones: Canales de flujo de informacin.
Capa de entrada: Denotado por neuronas , no llevan procesamiento pero almacenan las
entradas a la red.
Capa oculta: Denotada por neuronas de procesamiento. Tienen cantidad limitada de
memoria y realizan clculos locales.
Capa de salida: Denotada por neuronas , son de procesamiento.
Neurona de procesamiento: Formada por la funcin de excitacin y la funcin de
transferencia.
Las entradas se denotan con

y las salidas con

con = 1,2
Los trminos , , se denominan pesos y su variabilidad permite el aprendizaje del
perceptrn (o red en su caso)
Bias: Sirve para modelar salidas distintas de cero cuando todas las entradas son cero.
La funcin de excitacin est definida como:
s =

=1

+
+1,
(1)
Existen diversos tipos de funcin de transferencia o de activacin para las neuronas.
o Hard Lim (Limitador fuerte):

= (

) = {
0

0
< 0
1

0
0
(2)

o Sigmoide:

= (

) =
1
1+

(3)

o Tangente hiperblico:

= (

) =

(4)
o Lineal:

(5)

4
El error se calcula como:

(6)
Para los nuevos pesos:

1
+

(7)
Donde es el coeficiente de aprendizaje.

Figura 3 Perceptrn Simple.
Metodologa.
Perceptrn simple con patrn de puntos.
Para programar la red neuronal de una sola neurona de procesamiento se sigui el esquema
mostrado en la figura 3. Para ello se inicializaron dos vectores donde se guardan los patrones de
entrada (
1
y
2
) y uno ms para los valores deseados de salida (
1
). Posteriormente se calcul la
funcin de excitacin

con (1) y posteriormente la funcin de activacin

con (2), asimismo, se


recalcularon los pesos

con (7) y este proceso se repiti hasta que no hubiera cambio en el error.
Por otra parte, la secuencia completa de datos de entrada
1
y
2
est compuesta de cuatro valores
para cada uno y una salida
1
correspondiente para cada par; este conjunto de datos de entrada y
salida se le conoce como poca de tal manera que no debera haber cambio del error en toda la
poca. Los resultados de esta implementacin se muestran en la siguiente seccin, sin embargo,
para algunos puntos propuestos de entrada el perceptrn se result limitado por lo que se necesit
la implementacin de una red neuronal con una capa oculta de dos neuronas y una neurona en la
capa de salida (XOR).
Red neuronal con una capa oculta de dos neuronas y una neurona en la capa de
salida (XOR).
Para programar esta XOR se tom como base la red neuronal mostrada en la figura 4, la cual
consta de una capa oculta de dos neuronas, dos bias y una neurona en la capa de salida. El algoritmo
para la implementacin es muy parecido al del perceptrn con la diferencia que en la capa de salida
se reciben las salidas de las neuronas de la capa oculta (

). Para recalcular los pesos

se tom la
ecuacin 7 pero se sustituy

por

, esto tambin se aplic para la funcin de activacin y


excitacin. Este programa finaliza hasta que no haya ningn cambio en el error en la poca.


5

Figura 4 Red Neuronal XOR.
Red Neuronal Multicapa.
Las redes neuronales diseadas hasta el momento han servido para identificar patrones de puntos.
Sin embargo, para identificar patrones complejos como funciones, imgenes, etc. Se necesitan redes
neuronales multicapa, es decir, se requiere que contenga ms de una capa oculta. Un ejemplo de
una red neuronal multicapa se muestra en la figura 5.

Figura 5 Red Neuronal Multicapa.
Para calcular las funciones de excitacin se utiliza la ecuacin 1 y para el caso de estudio se usa la
funcin sigmoidal (ecuacin 3) como funcin de activacin. Para la funcin de excitacin y de
activacin de las neuronas de la capa oculta se redefinen las ecuaciones 1 y 3:

=1

+
+1,
(8)

=
1
1+

(9)
Y el error se redefine como:

(10)
Los pesos se redefinen por medio del mtodo de retropropagacin del error, el cual consiste en
llevar a cero el error. Esto consiste en utilizar el mtodo del descenso ms rpido que se basa en
seguir el negativo del gradiente del error, el cual est definido en la siguiente ecuacin:

6

= [

] (11)
Despus de derivar estos parmetros obtendremos los siguientes coeficientes que posteriormente
nos servirn para calcular los nuevos pesos.

= (

(1

=1
(12)

= (

=1
)

(1

) (13)
Y los nuevos pesos se calculan con la siguiente ecuacin:

1
+

(14)

1
+

(15)
Las ecuaciones hasta aqu presentadas funcionan bien con entradas mayores a cero, pero si
queremos detectar un patrn que contenga datos negativos se requerir cambiar la funcin de
activacin sigmoide por la de tangente hiperblica y eso nos lleva a redefinir algunas de las
ecuaciones:

(16)

(17)

4
(

)
2
(18)

=1

4
(

)
2
(19)
Con estas modificaciones la red neuronal multicapa pudo aproximarse de mejor manera a funciones
con partes negativas. Para encontrar patrones como el de una funcin parbola o una hiprbola se
sigui el siguiente esquema de red neuronal:

Figura 6 Red Neuronal Multicapa Propuesta.