02 - neurona artificial
DESCRIPTION
Clases Modelo para nuestras pruebasTRANSCRIPT
CLASE MODELO-PRUEBA Nº1
UNIFIM GISCIA
NEURONA ARTIFICIAL
1
Rumbo al INTERCON 2011
INTRODUCCIÓN
La idea de esta clase es que ustedes investiguen los términos que no entiendan, hagan las preguntas a este blog y traten de entender la utilidad de esta clase, dependiendo de los comentarios que se reciban, se terminara con la entrega final del curso de INTELIGENCIA ARTIFICIAL que comprende varios ppts.
2
3
Similitudes entre una neurona biológica y una artificial
Las entradas Xi representan las señales que provienen de otras neuronas y que son capturadas por las dendritas
Los pesos Wi son la intensidad de la sinápsis que conecta dos neuronas; tanto Xi como Wi son valores reales.
es la función umbral que la neurona debe sobrepasar para activarse; este proceso ocurre biológicamente en el cuerpo de la célula.
4
Neurona Artificial
Las señales de entrada a una neurona artificial X1, X2,.., Xn son variables continuas en lugar de pulsos discretos, como se presentan en una neurona biológica.
Cada señal de entrada pasa a través de una ganancia o peso, llamado peso sináptico o fortaleza de la conexión cuya función es análoga a la de la función sináptica de la neurona biológica. Los pesos pueden ser positivos (excitatorios), o negativos (inhibitorios).
El nodo sumatorio acumula todas las señales de entradas multiplicadas por los pesos o ponderadas y las pasa a la salida a través de una función umbral o función de transferencia.
La entrada neta a cada unidad puede escribirse de la siguiente manera:
WXwxnetan
iiij
1
5
Neurona Artificial
Cada entrada es multiplicada por el peso de arco correspondiente.
Cada neurona calcula su entrada neta como:
n
iiij wxneta
1
El valor de salida (único) se obtiene como )(netafy
6
Funciones de Transferencia
Esta función crea neuronas que clasifican las entradas en dos categorías diferentes.
Hardlim (limitador fuerte)
7
Funciones de Transferencia
Esta función crea neuronas que clasifican las entradas en dos categorías diferentes.
Hardlims (limitador fuerte simétrico)
8
Funciones de Transferencia
A diferencia de las anteriores, esta función no es acotada.
Purelin (Lineal)
9
Funciones de Transferencia
Es acotada y derivable
Logsig (Sigmoide)
10
Arquitecturas formadas por un único EP
Comenzaremos trabajando con arquitecturas simples formadas por un único elemento de procesamiento.
La neurona trabaja como una función discriminante lineal.
11
Perceptrón
netasi
netasiy
0
1
12
Ejemplo
Verifique si la siguiente red neuronal se comporta como la función lógica AND
13
AND
Graficar la función discriminante (recta)
2211 wxwx
5.121 xx
14
Entrenamiento del perceptrón
Se busca una estrategia iterativa que permita adaptar los valores de las conexiones a medida que se presentan los datos de entrada.
Ver que el estímulo de entrada se corresponde con el producto interior de los vectors X y W.
15
Producto interior
Calcular v . w
16
Signo del producto interior
17
Vector de proyección
18
Uso del vector de proyección
XW .
||WX w
XW .
||WX w
XW .
||WX w
19
Entrenamiento del Perceptrón
Inicializar los pesos de las conexiones con valores random (vector W)
Mientras no se clasifiquen todos los patrones correctamente
Ingresar un patrón a la red.
Si fue clasificado incorrectamente
Si esperaba obtener W.X > y no lo logró, “acerque” el vector W al vector X.
Si esperaba obtener W.X < y no lo logró, “aleje” el vector W al vector X.
Aprendizaje supervisado
20
Ajuste del vector de pesos Si W.X < no es el valor esperado entonces acercar W a X de la siguiente forma
w’ = w + x
es un valor real perteneciente a (0,1]
Si W.X > no es el valor esperado entonces aleje W a X de la siguiente forma
w’ = w - x
21
Ajuste del vector de pesos
Recordemos que la salida del perceptrón es
En general, si llamamos t al valor esperado y al valor obtenido
wnuevo = w + (t - y) x
XWsi
XWsiy
.0
.1
t = 1y = 0t = 0y = 1
22
Entrenamiento del Perceptrón
Seleccionar el valor de y
Inicializar los pesos de las conexiones con valores random (vector W)
Mientras no se clasifiquen todos los patrones correctamente
Ingresar un patrón a la red.
Si fue clasificado incorrectamente
Wnuevo = W + (t - y) x
23
Ejemplo 1
Entrenar un perceptrón para que se comporte como la función lógica AND.
Utilice = 0.3
= 1.5
W1 = 0
W2 = 0.25 Ej1_AND.m
24
------------------------------------------------------------- 0.30 0.55 0 0.30 0.55 0.30 0.55 0 0.30 0.55 0.30 0.55 0 0.30 0.55 0.30 0.55 0 0.60 0.85
Si Y T, W1new= W1 + 0.3 (T-Y) X1
W2new= W2 + 0.3 (T-Y) X2
El proceso se repite hasta comprobar que todos los patrones son clasificados correctamente
Si Y = T, W no se actualiza
Wnew= W + (T-Y) XAND X1 X2 T W1 W2 Y W1new W2new ------------------------------------------------------------- 0 0 0 0.00 0.25 0 0.00 0.25 1 0 0 0 1 0 1 1 1
0.00 0.25 0 0.00 0.25 0.00 0.25 0 0.00 0.25 0.00 0.25 0 0.30 0.55 ------------------------------------------------------------- 0 0 0 1 0 0 0 1 0 1 1 1 ------------------------------------------------------------- 0 0 0 0.60 0.85 0 0.60 0.85 1 0 0 0.60 0.85 0 0.60 0.85 0 1 0 0.60 0.85 0 0.60 0.85 1 1 1 0.60 0.85 0 0.90 1.15 ------------------------------------------------------------- 0 0 0 0.90 1.15 0 0.90 1.15 1 0 0 0.90 1.15 0 0.90 1.15 0 1 0 0.90 1.15 0 0.90 1.15 1 1 1 0.90 1.15 1 0.90 1.15
25
Perceptrón
00
01
netasi
netasiy
26
Ejemplo 2
Entrenar un perceptrón para que se comporte como la función lógica AND.
Utilice = 0.3
W0 = 0
W1 = 0
W2 = 0.25 Ej2_AND.m
Ejemplo 2 X0 X1 X2 T W0 W1 W2 Salida NewW0 NewW1 NewW2 ------------------------------------------------------------------------------------ 1 0 0 0 0.00 0.00 0.25 1 -0.30 0.00 0.25 1 1 0 0 -0.30 0.00 0.25 0 -0.30 0.00 0.25 1 0 1 0 -0.30 0.00 0.25 0 -0.30 0.00 0.25 1 1 1 1 -0.30 0.00 0.25 0 0.00 0.30 0.55 ------------------------------------------------------------------------------------ 1 0 0 0 0.00 0.30 0.55 1 -0.30 0.30 0.55 1 1 0 0 -0.30 0.30 0.55 1 -0.60 0.00 0.55 1 0 1 0 -0.60 0.00 0.55 0 -0.60 0.00 0.55 1 1 1 1 -0.60 0.00 0.55 0 -0.30 0.30 0.85 ------------------------------------------------------------------------------------ 1 0 0 0 -0.30 0.30 0.85 0 -0.30 0.30 0.85 1 1 0 0 -0.30 0.30 0.85 1 -0.60 0.00 0.85 1 0 1 0 -0.60 0.00 0.85 1 -0.90 0.00 0.55 1 1 1 1 -0.90 0.00 0.55 0 -0.60 0.30 0.85 ------------------------------------------------------------------------------------ 1 0 0 0 -0.60 0.30 0.85 0 -0.60 0.30 0.85 1 1 0 0 -0.60 0.30 0.85 0 -0.60 0.30 0.85 1 0 1 0 -0.60 0.30 0.85 1 -0.90 0.30 0.55 1 1 1 1 -0.90 0.30 0.55 0 -0.60 0.60 0.85 ------------------------------------------------------------------------------------ 1 0 0 0 -0.60 0.60 0.85 0 -0.60 0.60 0.85 1 1 0 0 -0.60 0.60 0.85 1 -0.90 0.30 0.85 1 0 1 0 -0.90 0.30 0.85 0 -0.90 0.30 0.85 1 1 1 1 -0.90 0.30 0.85 1 -0.90 0.30 0.85 ------------------------------------------------------------------------------------ 1 0 0 0 -0.90 0.30 0.85 0 -0.90 0.30 0.85 1 1 0 0 -0.90 0.30 0.85 0 -0.90 0.30 0.85 1 0 1 0 -0.90 0.30 0.85 0 -0.90 0.30 0.85 1 1 1 1 -0.90 0.30 0.85 1 -0.90 0.30 0.85
28
Ejemplo 2
29
Demo de MatLab
30
Neurona ArtificialRepresentación de MatLab
la nueva entrada b es una ganancia que refuerza la salida del sumador n, la cual es la salida neta de la red.
31
Plotpv
Grafica los patrones de entrada y la salida esperada (binaria).
Sintaxis: plotpv(p,t)donde P es una matriz de RxQ cuyas columnas están
formada por los vectores de entrada (R<=3). T es una matriz de SxQ con la salida binaria
esperada ( S<=3)
32
Plotpv
Ejemplo
p = [ 0 0 1 1;
0 1 0 1];
t = [0 0 0 1];
plotpv(p,t)
33
Plotpv
Grafica los patrones de entrada y la salida esperada (binaria).
Sintaxis: plotpv(p,t,v)
donde
V indica los límites del gráfico de la forma [x_min x_max y_min y_max]
34
Plotpv
Ejemplop=[2.5 3 1.2 1;
1 -3.4 2.1 -2];
t=[1 0 1 0];
v=[-1 5 -5 5];
plotpv(p,t,v)
35
Plotpc
Grafica la superficie discriminante.
Sintaxis: plotpc(W,b)donde W es la matriz de pesos de SxR (R<=3). B es el vector bias de Sx1
36
Plotpc
Ejemploaxis([-1 5 -5 5])W=[0.625 0.25];b=-0,50;h = plotpc(W,b);
pause %presione una teclaW=[-0.125 1.10];b=-0,50;h = plotpc(W,b,h);
37
Plotpv
X = [ 1 2 2.7 2 3 5.5 7 7 8;
0.5 2.3 1 5 3.5 7 6 2 1];
T = [0 0 0 0 0 1 1 1 1;
0 0 0 1 1 1 1 0 0];
plotpv(X,T)
38
Plotpc
W = [ 14.7003 -4.5863; -12.3377 19.0720];
b = [-45.2174;
-22.4758];
plotpc(W,b)
14.7003 p1 - 4.4863 p2 -45.2174 =0
-12.3377 p1 +19.072 p2 -22.4758 =0
39
EP Genérico
40
Red Neuronal
La habilidad de procesamiento de la red está almacenada en el peso de sus conexiones
Los pesos se obtienen a partir de un proceso de adaptación (aprendizaje) a los datos de entrada.
41
Redes multicapa
Ver que el perceptrón no puede resolver el problema del XOR porque no es linealmente separable.
42
XOR usando mas de un perceptrón
w11=1 w12=1; w21=1 w22=1; w31=1 w32=-1.5
b1=-0.5 b2=-1.5 b3=-0.5
AND p1+p2-1.5=0
OR p1+p2-0.5=0
43
Ejercicio 1Sobre una cinta transportadora circulan naranjas y melones. Se busca obtener un clasificador de frutas que facilite su almacenamiento. Para cada fruta se conoce su diámetro, en centímetros y su intensidad de color naranja, medida entre 0 y 255.
Ejemplos:Naranjas = { (10,200), (8,150), (7,170),
(15,250)}Melón = {(20,30), (26,30), (24,32), (19,31)}
Entrenar un perceptrón que permita resolver el problema. Utilice como W inicial (0,0,0) e ingrese los patrones en forma alternada (tomar uno de cada conjunto).
44
Ejercicio 2Una agencia de modelos publicó los resultados de la última selección de postulantes. En ella se habían presentado seis mujeres. Cada una de ellas ha sido caracterizada sólo por su peso y altura. El resultado fue el siguiente:
Aceptadas = {(52,1.79), (53,1.81), (55,1.75)}Rechazadas ={(65,1.70), (68,1.65),(58,1.71)}
A) Represente el criterio de selección a través de una RN formada por un único perceptrón.
B) Cuál sería la respuesta del perceptrón de a) si se presentaran estas postulantes:
{(56,1.73), (70,1.60), (45,1.80)}