Anda di halaman 1dari 41

1

Ing. Ivn A. Calle Flores


INTELIGENCIA
ARTIFICICIAL
TEMA: REDES NEURONALES
2
y ( , ) f = x w
La redes neuronales pueden
verse como funciones con
parmetros adaptativos
Hacen tareas de regresin
Hacen tareas de clasificacin
y(x, w)
3
Orgenes
Fue uno de los primeros algoritmos que
trataban de imitar el funcionamiento
del cerebro
Modelo matemtico de las neuronas
Modelo matemtico de las conexiones
entre las neuronas
Fue ampliamente usado en los 80s y
90s, su popularidad decreci a finales
de los 90s
Actualmente es el estado del arte en
muchas aplicaciones
4
ALVINN: Autonomous land
vehicle in a neural network
5
6
Dr. Terrence Sejnowski
Salk Institute
Nettalk
7
En las sesiones anteriores se vio que los modelos lineales mas
generales para el problema de regresin y clasificacin tienen
la forma:
( , ) ( )
T
y f = x w w x) |(
Bases
y( , ) x w
En problema con estos modelos es establecer las bases con el
fin de tener el mejor aprendizaje
2
2
( )
( ) exp
2
j
j
x u
x
s
|
| |
=
|
|
\ . M=???
u=???
s=???
Bases
Demo_RBF_03.m
8
La red Perceptron multicapa puede
verse como una generalizacin de
estos modelos en el que las bases
son adaptables
La red Perceptron comprende
mltiples capas de modelos
del tipo logistic regresion
( , ) ( )
T
y f = x w w x) |(
Bases
9
2. El Perceptron
Desarrollado por Frank Rosenblatt, represento
un icono en la inteligencia artificial.
Mark 1:
Hardware del
Perceptron.
En 1969, Minsky y Papert publican Perceptrons
donde demuestraron las limitaciones de esta red.
Hoy en da hay un cientos de aplicaciones que
usan redes neuronales.
10
Inspiracin: Neurona natural
11
(x) (w x )
T
y f b = +
( )
1 2
x , ,...,
T
D
x x x =
( )
1 2
w , ,...,
T
D
w w w =
Funcin de activacin
Modelo matemtico
Descripcin matemtica
Vector de pesos
Vector de entradas
12
(x) (w x )
T
y f b = +
El desplazamiento desde el
origen esta controlado por el
bas b
La superficie de decisin (lnea
en rojo) es perpendicular al
vector w.
El Perceptron representa una funcin discriminante del tipo
lineal. Separa el espacio de entradas usando hiperplanos
13
Toolbox NN - Matlab
14
El Perceptron es un tipo de red de aprendizaje supervisado, es
decir, necesita conocer los valores esperados para cada una de
las entradas presentadas.
a. Conjunto de entrenamiento
Patrn Entradas Targets
n = 1
n = 2
n = 3
n = 4
1
x (0, 0) =
2
x (0,1) =
3
x (1, 0) =
1
t 1 =
4
x (1,1) =
2
t 1 = +
3
t 1 = +
4
t 1 = +
{ }
x , , 1, 2,...,
n n
t n N =
1
x 1
n n
C t e = +
2
x 1
n n
C t e =
Demo_perceptron_01.m
15
b. Inicializacin de la red
(x) (w x )
T
y f b = +
Se inicializan los parmetros
de la red w y b con valores
aleatorios
Ejemplos
16
c. Criterio de aprendizaje
Se desea encontrar un vector
w tal que:
1
x w x 0
T
n n
C e >
2
x w x 0
T
n n
C e <
w x 0
T
n n
t >
Los patrones correctamente
clasificados satisfacen
Los patrones incorrectamente
clasificados dan lugar al error:
(w) w x
T
P n n
n M
E t
e
=

17
La idea es aplicar el algoritmo
gradient descent a la funcin
de error del Perceptron
( 1) ( )
w w (w)
P
E
t t
q
+
= V
( 1) ( )
1, 1 w w x
n
t y
t t
q
+
= + = = +
( 1) ( )
1, 1 w w x
n
t y
t t
q
+
= = + =
( 1) ( )
w w t y
t t +
= =
Patrn incorrectamente
clasificado
Patrn correctamente
clasificado
Reglas de aprendizaje
18
Demo_perceptron_02.m
19
El numero de
iteraciones es
variable
Existen diversas
soluciones
Demo_perceptron_03.m
20
Para problemas linealmente separables el teorema de convergencia
del Perceptron asegura el encuentro de una solucin
Para data no separable el Perceptron no converge
Puede presentar muchas soluciones. Estas dependen de la
inicializacin de los parmetros y el orden de presentacin
de la data
21
3. La red Perceptron multicapa
Es un modelo que comprende
mltiples capas de neuronas
con funciones de activacin
continuas
Esta red permite superar los
problemas del Perceptron
Existen mtodos poderosos y
computacionalmente eficientes
para su entrenamiento
22
Entradas:
( )
1 2
x , ,...,
N N N ND
x x x =
( )
1 11 12 1
x , ,...,
D
x x x =
:
:
Unidades
escondidas
Salidas:
( )
1 2
y , ,...,
N N N NK
y y y =
( )
1 11 12 1
y , ,...,
K
y y y =
:
:
Estructura
23
{ }
x , , 1,...,
n n
t n N =
Data
( )
1
x ,...,
n n nD
x x =
( )
1
t ,...,
n n nK
t t =
Entradas Targets
Conjunto de entrenamiento
24
Bas
(1)
ji
w
Peso que une la
entrada i con la
neurona escondida j
(1)
j0
w
Bas de la neurona
escondida j
(2)
kj
w
Peso que une la
neurona escondida
j con la salida k
(2)
k0
w
Bas de la neurona de
salida k
Asignacin de pesos
Segunda capa
Primera capa
25
1
2
0
1 x =
0
1 z =
1
2
(1)
ji
w
3
(2)
kj
w
1
2
1
x
2
x
26
Capa oculta: Calculo de las activaciones
1
D
i=
= +
j
a
(1) (1)
ji i j0
w x w
1,..., j M =
( )
0 1
x , ,...,
D
x x x =
0
D
i=
=
j
a
(1)
ji i
w x
Considerando:
0
1 = x
27
Capa oculta: Calculo de las salidas
)
j j
z h(a =
1,..., j M =
) tanh( ) =
j j
h(a a
La funcin de activacin mas usada
Cada activacin se transforma
28
1
x
2
x
0
1 x =
0
1 z =
1
a
2
a
3
z
(1)
ji
w
3
a
2
z
1
z
29
1
M
j =
= +

(2) (2)
kj j k0
w z w
k
a
1,..., k K =
( )
0 1
z , ,...,
M
z z z =
0
M
j =
=
k
a
(2)
kj j
w z
Considerando:
0
1 = z
Capa de salida: Calculo de las activaciones
30
Capa de salida: Calculo de las salidas
=
k k
y a
1
1 e

=
+
k
k
a
y
Regresin
Clasificacin
31
(2)
kj
w
1
x
2
x
0
1 x =
1
a
0
1 z =
1
z
2
z
3
z
1
y
1
y
2
a
32
En resumen
Tiene una estructura
feed-forward
Comprende 2 etapas de
pre procesamiento
A diferencia del Perceptron
usa funciones de activacin
continuas
La funcin es diferenciable
respecto a los parmetros
Puede aproximar cualquier
tipo de funcin
33
El entrenamiento de la red se puede ver como la minimizacin de su
funcin de error. La tarea es encontrar el vector de pesos w que
minimiza la funcin de error escogida.
0 E V =
( 1) ( ) ( )
w w w
t t t +
= +A
Entrenamiento de la red Funcin de error
La funcin de error es una funcin
continua dependiente de w
Existen mltiples puntos mnimos
los cuales satisfacen
La solucin se hace a travs de
mtodos numricos
34
Funcin de error: Regresin
Se puede demostrar que:
{ }
2
1
1
(w) (x , w) t
2
N
n n
n
E y
=
=

Distribucin de las salidas (Gausiana):


1
( | x, w) ( | (x, w), ) p t N t y |

=
Salidas de la red Ruido de la data
( ) ( )
1
| , w, t | x , w,
N
n n
n
p p | |
=
=
[
T X
Funcin de probabilidad
Funcin de error
35
Distribucin de las salidas (Bernouli):
1
( | x) (x, w) p C y =
Salidas
2
( | x) 1 (x, w) p C y =
0 (x, w) 1 y s s
( ) ( )
1
| , w, t | x , w,
N
n n
n
p p | |
=
=
[
T X
Funcin de probabilidad
Funcin de error
{ }
1
( | x, w) (x, w) 1 (x, w)
t
t
p t y y

=
{ }
1
(w) ln (1 ) ln(1 )
N
n n n n
n
E t y t y
=
= +

Funcin de error: Clasificacin


36
Calculo del gradiente del error - Backpropagation
Muchos algoritmos de optimizacin
(gradient descent, etc.) usan el
gradiente de la funcin de error
( 1) ( ) ( )
w w w
t t t +
= +A
El algoritmo back propagation es
un mtodo eficiente para calcular
el gradiente de la funcin de error
(1) 2
T
n n
ji kj
E E
E
w w
(
c c
V =
(
c c
(

w
37
El algoritmo backpropagation
1. Aplicar un vector de entrada a la red y propagarlo por la
red, obteniendo las activaciones de las unidades escondidas
y las unidades de salida
x
n
0
D
i=
=
j
a
(1)
ji i
w x
( )
f =
j j
z a
0
M
j =
=
k
a
(2)
kj j
w z
( ) f =
k k
y a
1
x
2
x
0
1 x =
0
1 z =
2
y
1
y
2
a
1
a
2
a
3
a
1
a
3
z
2
z
1
z
38
2. Evaluar los deltas de las unidades de salida
k k k
y t o =
3. Retro propagar los para obtener los
deltas de las unidades escondidas
(2)
'( )
j j kj k
k
h a w o o =

4. Calcular las derivadas del error
k
o
k
o
j
o
n
j i
ji
E
z
w
o
c
=
c
39
Ejercicio. Gradiente de la red Perceptron
=
k k
y a
2
'( ) 1 ( ) h a h a =
( )
a a
a a
e e
h a
e e

=
+
{ }
x , t
n n
1. Aplicando el patrn de entrada a la red tenemos:
0
D
i=
=
j
a
(1)
ji i
w x
( )
tanh =
j j
z a
0
M
j =
=

(2)
kj j
w z
k
y
Red de dos capas
Problema de regresin
Unidades escondidas con
funciones de activacin
Logistic sigmoidal
40
2. Evaluando los deltas de las salidas
k k k
y t o =
3. Evaluando los deltas de las unidades escondidas
(2)
'( )
j j kj k
k
h a w o o =

( )
2 (2)
1
1
K
j j kj k
k
z w o o
=
=

4. Las derivadas con respecto a los pesos de la primera y
segunda capa estn dados por:
(1)
n
j i
ji
E
x
w
o
c
=
c
(2)
n
k j
kj
E
z
w
o
c
=
c
41
Eficiencia del algoritmo backpropagation
La computacin del algoritmo tiene
un coso aproximado
( ) O W
( ) ( )
( )
n ji n ji
n
ji
E w E w
E
O
w
c
c
c
+
c
= +
c
La computacin del algoritmo tiene
un coso aproximado
2
( ) O W
En la practica el las diferencias finitas cumplen un rol importante ya que
permiten comprobar la implementacion del algoritmo backpropagation
Uno de los aspectos mas importantes del algoritmo back
propagation es su eficiencia computacional
Un enfoque alternativo para el calculo de las derivadas es el
uso de las diferencias finitas

Anda mungkin juga menyukai