-
Instituto Politcnico Nacional
Escuela Superior de Cmputo.
NEURAL NETWORKS
Prctica 1: Modelos Neuronales Simples
Integrantes:
Arana Roa Juan Bruno.
Basurto Martnez Csar Arturo.
Falcn Lozada Nallely Aiko.
Hernndez Badillo Rodrigo.
Prez Prez Jos Ricardo.
Grupo: 3CM9.
Profesor: Jos Luis Caldern Osorno.
-
Objetivo
Analizarneuronas artificiales simples de una y dos entradas para
conocer su funcionamiento interno al
modificar cada uno de sus parmetros de aprendizaje, su funcin de
transferencia y su relacin con la
frontera de decisin; mediante la ejecucin de programas
demostrativos de la herramienta Neural
Network Toolbox de Matlab.
Analizarneuronas artificiales simples para el funcionamiento
resolver problemas de clasificacin de
patrones linealmente separables empleando la regla de
aprendizaje del Perceptrn, mediante la
ejecucin de programas demostrativos, la generacin y ejecucin de
archivos fuente en la herramienta
Neural Network Toolbox de Matlab,la programacin de una aplicacin
en lenguaje visual para clasificar
caracteres linealmente separables.
Marco Terico
Los modelos neuronales y la arquitectura de redes neuronales
describen como una red transforma sus
entradas en salidas. Esta transformacin puede ser vista como
computacin. La forma en que la red
neuronal calcula su salida, debe ser entendida antes que los
mtodos de entrenamiento de la red sean
explicados.
-
Introduccin
Las redes de neuronas artificiales denominadas habitualmente
como RNA son
un paradigma de aprendizaje y procesamiento automtico inspirado
en la forma en que funciona el
sistema nervioso de los animales. Se trata de un sistema de
interconexin de neuronas que colaboran
entre s para producir un estmulo de salida. En inteligencia
artificial es frecuente referirse a ellas como
redes de neuronas o redes neuronales.
Una red neuronal se compone de unidades llamadas neuronas. Cada
neurona recibe una serie de
entradas a travs de interconexiones y emite una salida. Esta
salida viene dada por tres funciones:
1. Una funcin de propagacin (tambin conocida como funcin de
excitacin), que por lo general consiste en el sumatorio de cada
entrada multiplicada por el peso de su interconexin (valor
neto). Si el peso es positivo, la conexin se
denominaexcitatoria; si es negativo, se
denomina inhibitoria.
2. Una funcin de activacin, que modifica a la anterior. Puede no
existir, siendo en este caso la
salida la misma funcin de propagacin.
3. Una funcin de transferencia, que se aplica al valor devuelto
por la funcin de activacin. Se
utiliza para acotar la salida de la neurona y generalmente viene
dada por la interpretacin que
queramos darle a dichas salidas. Algunas de las ms utilizadas
son la funcin sigmoidea (para
obtener valores en el intervalo [0,1]) y la tangente hiperblica
(para obtener valores en el
intervalo [-1,1]).
Ventajas
Las RNA tienen muchas ventajas debido a que estnbasadas en la
estructura del sistema nervioso,
principalmente el cerebro.
Aprendizaje: Las RNA tienen la habilidad de aprender mediante
una etapa que se llama etapa de aprendizaje. Esta consiste en
proporcionar a la RNA datos como entrada a su vez que se le
indica
cul es la salida (respuesta) esperada.
Auto organizacin: Una RNA crea su propia representacin de la
informacin en su interior, descargando al usuario de esto.
Tolerancia a fallos: Debido a que una RNA almacena la informacin
de forma redundante, sta puede seguir respondiendo de manera
aceptable aun si se daa parcialmente.
Flexibilidad: Una RNA puede manejar cambios no importantes en la
informacin de entrada, como seales con ruido u otros cambios en la
entrada (por ejemplo si la informacin de entrada es la
imagen de un objeto, la respuesta correspondiente no sufre
cambios si la imagen cambia un poco su
brillo o el objeto cambia ligeramente).
Tiempo real: La estructura de una RNA es paralela, por lo cual
si esto es implementado con computadoras o en dispositivos
electrnicos especiales, se pueden obtener respuestas en tiempo
real.
-
Desarrollo
PARTE 1.
Neurona de una entrada
a) Inicie una sesin enMatlab; en la lnea de comando escriba
nnd2n1 y entre al programa
demostrativo de una neurona artificial simple.
b) Emplee una funcin de transferencia lineal, con un valor de
umbral b=0; vare en pasos de uno, el
valor de w, en el intervalo de 2 a 2 y observe el comportamiento
de la neurona en la grfica. Qu efecto produce en la salida de la
neurona (ver la grfica de la figura 1.8), el cambio en
valor del peso w? El cambio que se presenta es la variacin en
nuestra frontera de decisin cuando hacemos un
cambio en la pendiente. Este efecto se da al incrementar o
disminuir los pesos de la pendiente.
Cuando vamos incrementando en el intervalo -2 a 2 de nuestro
valor de 2 vemos que nuestra
pendiente gira en sentido contrario a las manecillas del
reloj.
W= 0
W= -2 W= -1
-
c) Con la misma funcin de transferencia anterior, ahora,
manteniendo constante el valor de peso,
w = 1.Vari en pasos de uno el valor de b y observe los cambios
en la salida de la neurona en la
grfica de salida.
Qu efectos produce en la funcin de transferencia, el cambio en
el nivel de umbral b?
Permitir cambiar el umbral en dos regiones, ahora se cambiara
entre los ejes de la frontera.
W= 1 W= 2
W= -2
W= -1
W=0 W= 1
W= -1
-
d) Mantenga constantes los siguientes parmetros: w=1 y b=0.
Cambien cadauna de las funciones
de transferencia y observe la grfica de salida de la neurona.Que
observa en la grfica para
cada cambio en la funcin de transferencia?
Cambia la pendiente dividiendo en dos regiones, los ejes de la
frontera variaran dependiendo de
la funcin a emplear con los valores del umbral y el peso de la
pendiente.
W= 2
HARDLIM SATLINS
TANSIG SATLIN
-
PARTE 2.
Neurona de dos entradas.
a) Inicie una sesin en Matlab; en la lnea de comando escriba
nnd2n2 y entre al programa
demostrativo de una neurona artificial simple con dos entradas;
en dicha neurona es posible
modificar cada uno de sus parmetros adems de cambiar de funcin
detransferencia.
b) Una neurona con dos entradas tiene como parmetros b =1, W =
[2 1], p = [-1 1]. Calcule la salida
de la neurona para las funciones de transferencia siguientes y
lasreglas de activacin respectivas:
i. Funcin en escaln (harlim).
ii. Funcin en escaln simtrica (harlims).
iii. Funcin lineal (pureline).
iv. Funcin sigmoidal logaritmica (logsig).
v. Funcin sigmoidal tangente hiperblica (tansig)
c) Compruebe los resultados del problema anterior con ayuda del
programademostrativo de una
neurona con dos entradas nnd2n2.
PURELIN
LOGSIG
LOGSIG
HARDLIMS
-
a) Una neurona con dos entradas tiene como parmetros b =1, W =
[2 1], p = [-1 1]
Funcin en escaln (hardlim).
Sabiendo que la salida de la neurona a es igual a:
= ( + ) Entonces, sustituyendo los valores de la prctica en
cuanto a la matriz de pesos, los vectores de entrenamiento y el
umbral b, tenemos que:
= ([ ]
+ )
= ( + + ) = ()
Como:
Entonces:
= Comprobando en Matlab:
-
Funcin en escaln simtrica (hardlims).
Funcin lineal (purelin). Comprobacin: Al tener una relacin
entrada/salida tenemos que
=
= ([ ]
+ )
= ( + + ) = ()
=
-
Funcin sigmoidal logartmica (logsig).
Tambin tenemos una funcin con relacin entrada/salida, sabiendo
que:
=
+
= ([ ]
+ )
= ( + + ) = ()
=
-
Funcin sigmoidal tangente hiperblica (tansig)
= ( + )
= ([ ]
+ )
= ( + + ) = ()
=
-
Cuestionario
1. Qu efecto tiene eliminar el umbral (b=0) en cualquiera de las
estructuras neuronales anteriores?
Explique.
Grficamente a funcin de transferencia parte desde el origen
(0,0). El valor de salida de la
neurona es la multiplicacin de la matriz de pesos por el patrn
deentrenamiento evaluado en la
funcin de transferencia sin corrimientos (sin el umbral).
2. En la estructura neuronal de dos entradas, que tipo de red
neuronal representara, si su funcin
de transferencia fuera una seal en escaln? ; Y si fuera una
funcin lineal?
PerceptrnAdaline
3. Que representa la salida n de la neurona?
La salida lineal de la neurona
4. Qu caractersticas tiene la funcin gaussiana y en qu tipo de
redes neuronales se utiliza?
La funcin gaussiana es una funcin exponencial cuya grfica tiene
forma de campana y
estdefinida por:
Se utiliza parar redes de base radial.
5. Qu es una regla de Propagacin? Proporcione ejemplos de la
misma.
La regla de propagacin es una expresin matemtica que indica la
forma en que se propaga la
informacin de la entrada a la salida de la red neuronal.
6. Qu es una regla de Activacin? Proporcione ejemplos de la
misma.
La regla de activacin es una expresin matemtica que nos indica
el grado de activacin de la
neurona, a travs un valor numrico en la salida de la neurona.
Para una neurona con funcin
escaln.
a = 0 para n < 0
a = 1 para n 0 Para una neurona con funcin lineal.
a = n Para una neurona con funcin Sigmoidal.
a = 1/(1+exp(-n))
7. Qu es una funcin de transferencia? y Cules son las
principales funciones usadas en redes
neuronales artificiales?
Cambia el estado de activacin a una seal de salida, se utiliza
para acotar la salida de la
neurona y generalmente viene dada por la interpretacin que
queramos darle a dichas salidas.
Funcin escaln
Funcin lineal
-
Funcin mixta
Funcin sigmoidal
Funcin gaussiana
8. Qu relacin existe entre la ecuacin de recta y el argumento de
la regla de propagacin
siguiente Wp+b?
La expresin tiene la forma de la ecuacin de recta dada por
mx + b
Donde:
m (la pendiente) es relacionada con la matriz de pesos W, que al
multiplicarse por el patrn de
entrenamiento p modifica el valor de la pendiente.
Mientras que b representa el corrimiento en el eje de las X para
que la frontera de decisin
serecorra.
9. Qu es una frontera de decisin? y Cul es su funcin?
Se encarga de separar patrones o vectores de entrenamiento, no
es posible trazar una frontera
de decisin si el problema no es linealmente separable. Cualquier
vector en la regin, sobre y a la
derecha de la frontera tendr un producto interno mayor que b y
el resto tendr un producto
interno menor que b, para todos los puntos sobre la frontera, el
producto interno del vector de
entrada con el vector de pesos es el mismo, eso significa que
los vectores de entrada (sobre la
frontera) tendrn todos la misma proyeccin sobre el vector de
pesos, es decir, ellos estn sobre
una recta ortogonal al vector de pesos.
-
Conclusiones
Arana Roa Juan Bruno. Esta prctica funciona muy bien como una
introduccin al manejo de las redes neuronales en la
herramienta Matlab, y como vimos en los ejemplos resulta
relativamente sencillo observar el
comportamiento de un perceptrn mediante una grfica variando
distintas caractersticas en l como
por ejemplo su lnea de frontera o su umbral.
Basurto Martnez Cesar Arturo En la prctica conocimos las partes
que conforman una red neuronal artificial como la matriz depesos,
el
patrn de entrenamiento, umbral, funcin de transferencia y la
relacin con la fronterade decisin
visualizando como es que cada una de sus variables afectan para
graficar lafrontera de decisin gracias
al toolbox para neural networks que Matlab tiene. Analizamos
neuronas artificiales simples para resolver problemas de
clasificacin de patroneslinealmente
separables empleando la regla de aprendizaje del Perceptrn y nos
dimos cuentaque la neurona es
capaz de tomar decisiones una vez entrenada.
Falcn Lozada Nallely Aiko En la prctica pudimos ver el
funcionamiento de Matlab con las redes neuronales, utilizar esta
parte del
Matlab hace que se entienda mejor cmo funciona la neurona y
todos los posibles movimientos se
pueden hacer y formas. Algo caracterstico de esta prctica fue
precisamente como se mueve la funcin
respecto al cambio de umbral o del peso.
Prez Prez Jos Ricardo En esta prctica de Redes Neuronales
Artificiales pudimos observar cuales son los elementos bsicos
de
una red neuronal artificial y como es que funcionan a partir de
un ambiente grfico que contiene MatLab,
observamos los efectos que presentan a partir de una funcin al
momento de manipular el umbral y/o su
lnea de frontera gracias a un la red neuronal que presenta
MatLab y pudimos leer los valores de salida de
manera sencilla.
Hernndez Badillo Rodrigo Con esta primera prctica conocimos las
caractersticas bsicas que MatLab nos ofrece para el manejo
de Redes Neuronales y las facilidades que ste mismo nos brinda.
Gracias a esto pudimos trabajar con las
cualidades que las neuronas artificiales tienen observando el
comportamiento segn los parmetros de
entrada y ms adelante en conjunto con las funciones de
activacin. De manera que al final
confirmamos el conocimiento que se haba adquirido en clase a
travs de un mtodo grfico y prctico.
-
Bibliografa
http://www.bioingenieria.edu.ar/academica/catedras/control/archivos/material/Anexos/apunte
%20matlab%20parte1%20y%202.pdf
http://es.wikipedia.org/wiki/Red_neuronal_artificial
http://catarina.udlap.mx/u_dl_a/tales/documentos/lis/navarrete_g_j/capitulo2.pdf