SlideShare una empresa de Scribd logo
1 de 7
Descargar para leer sin conexión
Índice

                                                                     !!   Introducción
                      Redes Neuronales                               !!   Perceptrón
                                                                     !!   Regla de Perceptrón, Regla Delta
                                                                     !!   Perceptrón Multicapa
                                                                     !!   Backpropagation




                                                                     Métodos de Aprendizaje Automático - InCo                         2




                             Introducción                                       Problemas Adecuados para ANN
    !!   Modelo y método de aprendizaje para aproximar               !!   Instancias son representadas por vectores atributo-valor.
         funciones reales y discretas.
                                                                     !!   La salida de la función puede ser discreta, real o vector
    !!   Uno de los métodos más efectivos para interpretar                real o discreto.
         datos ruidosos como imágenes y sonido.

    !!   Paradigma conexionista, inspirado por la observación        !!   Los datos de entrenamiento pueden contener errores.
         del sistema nervioso biológico.
                                                                     !!   Largos tiempos de entrenamiento son aceptables.
    !!   En síntesis, consiste en la interconexión de unidades
         simples (neuronas), donde cada una posee entradas           !!   Rápido tiempo de ejecución de la red.
         reales y produce una salida real.

                                                                     !!   La necesidad de interpretar la función aprendida no es
                                                                          relevante.

Métodos de Aprendizaje Automático - InCo                         3   Métodos de Aprendizaje Automático - InCo                         4
Perceptrón                                                                Perceptrón
!!   Es el sistema de ANN más simple.
!!   Dada una entrada en forma de vector (x1,…,xn), la
     salida o(x1,…,xn) se calcula como:



                                                                          !!   El aprendizaje de un perceptrón consiste en encontrar
                                                                               los pesos w0,…,wn que produzcan la salida deseada dada
!!   Donde cada wi es un valor real constante o peso que                       una entrada.
     determina la contribución de la entrada xi en la
     salida.                                                              !!   Por lo tanto, el espacio de hipótesis consiste en el
!!   w0 es el umbral que debe superar la combinación                           conjunto de vectores reales:
     lineal de las entradas para que el perceptrón
     devuelva 1.

Métodos de Aprendizaje Automático - InCo                              5   Métodos de Aprendizaje Automático - InCo                      6




                               Perceptrón                                                                Perceptrón
!!   Puede verse como un hiperplano superficie de decisión en un
     espacio n-dimensional.                                               !!   Un perceptrón puede representar operaciones
                                                                               booleanas básicas, ej: AND, OR, NOT.
     El perceptrón devuelve 1 si la instancia está de un lado del plano
!!
                                                                          !!   Asumiendo true = 1, false = -1, una
     y -1 si está del otro.
                                                                               compuerta AND puede implementarse por
                                                                               ejemplo, con un perceptrón de dos entradas y
!!   No siempre es posible separar las instancias positivas y negativas
     (ejemplo (b)), en los casos en que sí es posible se le llama              pesos w0 = -0.8, w1 = w2 = 0.5.
     linealmente separable(ejemplo (a)).                                  !!   La operación XOR no es posible representarla
                                                                               mediante un perceptrón ya que no es
                                                                               linealmente separable.
                                                                          !!   Sin embargo, es claro que cualquier función
                                                                               booleana puede representarse como una red
                                                                               interconectada de perceptrones.

Métodos de Aprendizaje Automático - InCo                              7   Métodos de Aprendizaje Automático - InCo                      8
Regla de Perceptrón                                                    Regla de Perceptrón
     !!   Esta regla permite ajustar los pesos de un                   !!   La regla de perceptrón:
          perceptrón para lograr la salida deseada para cada
          ejemplo de entrenamiento.

     !!   Los pesos del perceptrón son inicializados con
          valores aleatorios.
                                                                            !!   t es el valor deseado de la salida
     !!   Iterativamente se aplica la regla para ajustar los
          pesos para cada ejemplo de entrenamiento.                         !!   o es el valor de la salida generada por el perceptrón.

     !!   El proceso se finaliza cuando el perceptrón clasifica             !!   ! es una constante positiva llamada constante de
          correctamente todos los ejemplos.                                      aprendizaje, su rol es moderar el grado de ajuste de
                                                                                 cada iteración (usualmente un valor pequeño, ej: 0.1).

Métodos de Aprendizaje Automático - InCo                          9    Métodos de Aprendizaje Automático - InCo                           10




     Descendiente por Gradiente: Regla Delta                                Descendiente por Gradiente: Regla Delta
!!   La regla de Perceptrón ajusta con éxito funciones                 !!   Se considera una medida de error de entrenamiento:
     linealmente separables, pero falla en converger si los
     ejemplos no son linealmente separables.

!!   La regla delta soluciona este problema, converge a la
     mejor aproximación al concepto objetivo.
                                                                       !!   Siendo D el conjunto de ejemplos de entrenamiento, td es
                                                                            el valor deseado para el ejemplo d, y od el valor de la salida
!!   La idea es utilizar descendiente por gradiente, para                   devuelta por el perceptrón aplicado al ejemplo d.
     esto se considera un perceptrón sin umbral o unidad
     lineal, cuya salida es:
                                                                       !!   E es la mitad del cuadrado de la diferencia entre el valor
                                                                            deseado y el valor obtenido, sumada para cada ejemplo de
                                                                            entrenamiento.


Métodos de Aprendizaje Automático - InCo                          11   Métodos de Aprendizaje Automático - InCo                           12
Descendiente por Gradiente: Regla Delta                            Descendiente por Gradiente: Regla Delta
!!   La idea es modificar el vector de pesos en la dirección       !!   Cada ejemplo es un par (x,t), donde x es el vector
     que produce el mayor decremento del error, hasta llegar
     al mínimo error posible.                                           de valores de entrada y t la salida deseada, el
!!   Se logra derivando E con respecto a cada componente del            algoritmo queda:
     vector w (gradiente de E respecto a w):                            !!   Inicializar cada wi con valores aleatorios
                                                                        !!   Inicializar cada "wi en 0
                                                                        !!   Hasta tener un error aceptable, repetir:
                                                                              !! Para cada ejemplo (x,t):

                                                                                   !! Computar la salida o dado x#
!!   El opuesto de este vector indica la dirección de mayor
                                                                                   !! Para cada "wi:
     decremento del error.
!!   La regla de ajuste queda:                                                          !! "wi = "wi+ !(t-o)xi(1)
                                                                              !! Para cada peso wi:
                                                                                        !! wi = wi+ "wi(2)


Métodos de Aprendizaje Automático - InCo                      13   Métodos de Aprendizaje Automático - InCo                        14




     Descendiente por Gradiente Incremental                                             Perceptrón Multicapa
!!   La convergencia puede ser lenta.                              !!   Un solo perceptrón puede expresar solamente superficies
                                                                        de decisión lineales.
!!   Si hay múltiples mínimos locales, la convergencia al
     mínimo global no está garantizada.                            !!   Una red interconectada de perceptrones puede representar
                                                                        superficies de decisión no lineales.
!!   Variación: descendiente por gradiente incremetal.
                                                                   !!   ¿Qué tipo de unidad utilizar como base?
!!   En vez de actualizar los pesos luego de analizar todos los          !! Unidades lineales: producen redes multicapa que solo

     ejemplos, se hace incrementalmente, en cada ejemplo. En                pueden representar funciones lineales.
     el algoritmo anterior, se elimina (2) y se cambia (1) por:          !! Perceptrón con umbral: su discontinuidad no lo hace
                                                                            diferenciable, no es apropiado para descendiente por
                                                                            gradiente.
                              wi = wi+ !(t-o)xi#
                                                                         !! Unidad Sigmoid: solución.



Métodos de Aprendizaje Automático - InCo                      15   Métodos de Aprendizaje Automático - InCo                        16
Perceptrón Multicapa: Unidad Sigmoid                                  Perceptrón Multicapa: Unidad Sigmoid
!!   Es una unidad cuya salida es una función diferenciable no        !!   La salida de la unidad varía entre 0 y 1.
     lineal de sus entradas.                                          !!   Crece monótonamente con la entrada.
!!   Primero computa la combinación lineal de sus entradas y          !!   Mapea un gran rango a un pequeño rango: squashing
     luego computa la función sigmoid:                                     function.
                                                                      !!   Su derivada se calcula fácilmente:




                                                                      !!   El término e-y se puede cambiar por e-ky donde k es
                                                                           constante positiva que ajusta el paso del umbral.
                                                                      !!   La función tanh (tangente hiperbólica) también suele ser
                                                                           utilizada, devuelve valores entre -1 y 1.


Métodos de Aprendizaje Automático - InCo                         17   Métodos de Aprendizaje Automático - InCo                        18




             Algoritmo de Backpropagation                                          Algoritmo de Backpropagation
!!   Se utiliza para aprender los pesos de una red multicapa.         !!   Nuevamente se utiliza descendiente por gradiente para
!!   Utiliza descendiente por gradiente para minimizar el                  minimizar E.
     cuadrado del error entre el valor de salida y el valor
     deseado.                                                         !!   La superficie de error puede tener varios mínimos locales,
!!   Ahora se considera el error producido por multiples                   por lo tanto, no está garantizada la convergencia al
     salidas:                                                              mínimo global.

                                                                      !!   Este algoritmo se aplica a redes de capas feedforward,
                                                                           en esta arquitectura, la capa n conecta sus entradas con
!!   Donde salidas es el conjunto de unidades de salida, tkd y okd         salidas de la capa n-1 y sus salidas con entradas de la capa
     son la salida deseada y obtenida asociadas a la k-esima               n+1.
     unidad y el ejemplo d.



Métodos de Aprendizaje Automático - InCo                         19   Métodos de Aprendizaje Automático - InCo                        20
Algoritmo de Backpropagation                                                               Algoritmo de Backpropagation: Dos Capas
!!   Ejemplo arquitectura feedforward:                                                                    !!   Cada ejemplo es un par (x,t), donde x y t son vectores de
                                                                                                               entrada y salida respectivamente.

                                                                                                          !!   ! es la constante de aprendizaje.

                                                                                                          !!   nin es el número de entradas de la red

                                                                                                          !!   noculta es el número de unidades en la capa oculta.

                                                                                                          !!   nsalidaes el número de unidades de salida

                                                                                                          !!   La entrada de la unidad i hacia la j se denota xji, y el peso
                                                                                                               de i a j se denota wji.
Métodos de Aprendizaje Automático - InCo                                                             21   Métodos de Aprendizaje Automático - InCo                         22




 Algoritmo de Backpropagation: Dos Capas                                                                       Algoritmo de Backpropagation: General
!!   Crear la red de nin entradas, noculta unidades ocultas y nsalida                                     !!   El algoritmo anterior se generaliza fácilmente para redes
     unidades de salida.                                                                                       con una profundidad arbitraria.
!!   Inicializar los pesos con valores aleatorios pequeños.
!!   Hasta tener un error aceptable, repetir                                                              !!   La regla para computar los pesos de las unidades de salida
      !! Para cada (x,t) en los ejemplos de entrenamiento:
           !! Propagar entrada hacia delante: dada la entrada x en la red, computar cada salida de             es igual.
               cada unidad de la red.
           !! Propagar errores hacia atrás:
                  !! Para cada unidad de salida k calcular el error $k#
                                                                                                          !!   La regla para computar los errores en las unidades
                                                                                                               ocultas:
                 !! Para cada unidad oculta, calcular su error $h:


                 !! Actualizar cada peso wji:

                                                                                                          !!   El error $r para la unidad r de la capa m se computa a
                                                                                                               partir de los error $ de la siguiente capa m+1.


Métodos de Aprendizaje Automático - InCo                                                             23   Métodos de Aprendizaje Automático - InCo                         24
Algoritmo de Backpropagation: Momento                                                   Diseño de una Red
!!   Una variación en la regla de actualización de pesos:         !!   Puntos a considerar:
     agregar momento.                                                   !!   Entradas: ¿qué atributos, propiedades del dominio considerar? ¿Normalizar?
!!   La actualización del peso en la n-esima iteración depende               ¿Discretaso reales? ¿Rango? ¿Cuántas? ¿Course of dimensionality?
     parcialmente de la n-1 iteración:
                                                                        !!   Arquitectura: ¿Cuántas capas? ¿Cómo interconectarlas?

                                                                        !!   Función de activación: ¿Cuál utilizar? ¿Con qué umbral?¿En qué rango?

!!   "wji(n) es la actualización de un peso en la n-esima               !!   Salidas: ¿Cuántas? ¿Qué devuelven? ¿En qué rango? ¿Discreto o real?
     iteración.
!!   % es una constante llama momentum, con 0!%<1.                      !!   Ejemplos de entrenamiento: ¿De dónde los obtengo? ¿Cómo los represento?
                                                                             ¿Cuántos tengo? ¿Qué tan confiables son?
!!   El efecto es dar inercia a la trayectoria de descendiente,
     mantenerse moviendo en superficies planas e incrementar            !!   Algoritmo de entrenamiento: ¿Backpropagation u otro? ¿Cuándo parar de
     la velocidad de convergencia.                                           entrenar? ¿Offline u online? ¿Batch o incremental?

                                                                        !!   Constante de aprendizaje: ¿Cuándo corresponde utilizarla? ¿Qué valor usar?
                                                                             ¿Hay que decrementarlo a medida que avanza el entrenamiento?

Métodos de Aprendizaje Automático - InCo                     25   Métodos de Aprendizaje Automático - InCo                                                26

Más contenido relacionado

La actualidad más candente (19)

Pascal
PascalPascal
Pascal
 
C2 fundamentos de java v2
C2 fundamentos de java v2C2 fundamentos de java v2
C2 fundamentos de java v2
 
Tabla De Transicion
Tabla De TransicionTabla De Transicion
Tabla De Transicion
 
Programacion
Programacion Programacion
Programacion
 
Uso de apis en java
Uso de apis en javaUso de apis en java
Uso de apis en java
 
Uso de apis en java
Uso de apis en javaUso de apis en java
Uso de apis en java
 
JavaWorld - SCJP - Capitulo 5
JavaWorld - SCJP - Capitulo 5JavaWorld - SCJP - Capitulo 5
JavaWorld - SCJP - Capitulo 5
 
Practica1 arquitectura de computadores 1 usac - metodos numericos -asm-
Practica1 arquitectura de computadores 1 usac - metodos numericos -asm-Practica1 arquitectura de computadores 1 usac - metodos numericos -asm-
Practica1 arquitectura de computadores 1 usac - metodos numericos -asm-
 
Unidad 1 introduccion
Unidad 1 introduccionUnidad 1 introduccion
Unidad 1 introduccion
 
Clase1
Clase1Clase1
Clase1
 
Presentacion final
Presentacion finalPresentacion final
Presentacion final
 
Seccion Fundamentos SCJP
Seccion Fundamentos SCJPSeccion Fundamentos SCJP
Seccion Fundamentos SCJP
 
Diapo04
Diapo04Diapo04
Diapo04
 
Tortugarte primitivas v3
Tortugarte primitivas v3Tortugarte primitivas v3
Tortugarte primitivas v3
 
Manual programacion arduino
Manual programacion arduinoManual programacion arduino
Manual programacion arduino
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Reny Galaviz Web Quest
Reny Galaviz Web QuestReny Galaviz Web Quest
Reny Galaviz Web Quest
 
Wilfreddy barco
Wilfreddy barcoWilfreddy barco
Wilfreddy barco
 
Funcion computable y parcialmente computable
Funcion computable y parcialmente computableFuncion computable y parcialmente computable
Funcion computable y parcialmente computable
 

Similar a 4 Redes Neuronales

Redes Neuronales Monocapa con Conexiones en Cascada PERCEPTRON
Redes Neuronales Monocapa con Conexiones en Cascada PERCEPTRONRedes Neuronales Monocapa con Conexiones en Cascada PERCEPTRON
Redes Neuronales Monocapa con Conexiones en Cascada PERCEPTRONESCOM
 
Perceptrón Simple – Redes Neuronales con Aprendizaje Supervisado
Perceptrón Simple – Redes Neuronales con Aprendizaje SupervisadoPerceptrón Simple – Redes Neuronales con Aprendizaje Supervisado
Perceptrón Simple – Redes Neuronales con Aprendizaje SupervisadoAndrea Lezcano
 
RED NEURONAL ARTIFICIAL . I.A
RED NEURONAL ARTIFICIAL . I.A RED NEURONAL ARTIFICIAL . I.A
RED NEURONAL ARTIFICIAL . I.A daniatacho
 
Mejores Tecnicas en Redes Neuronales
Mejores Tecnicas en Redes NeuronalesMejores Tecnicas en Redes Neuronales
Mejores Tecnicas en Redes NeuronalesCristianMartnDAgata
 
S iy rn 2011-3 balotario de la pc1
S iy rn 2011-3 balotario de la pc1S iy rn 2011-3 balotario de la pc1
S iy rn 2011-3 balotario de la pc1jcbenitezp
 
Redes Neuronales Basadas En Sistemas Difusos
Redes Neuronales Basadas En Sistemas DifusosRedes Neuronales Basadas En Sistemas Difusos
Redes Neuronales Basadas En Sistemas DifusosESCOM
 
implementación simulated annealing-en-perceptronmulticapa
implementación simulated annealing-en-perceptronmulticapaimplementación simulated annealing-en-perceptronmulticapa
implementación simulated annealing-en-perceptronmulticapaBrian Piragauta
 
S iy rn 2012-1 balotario de la pc1
S iy rn 2012-1 balotario de la pc1S iy rn 2012-1 balotario de la pc1
S iy rn 2012-1 balotario de la pc1c09271
 
REDES NEURONALES Mapas con Características Autoorganizativas Som
REDES NEURONALES Mapas   con Características Autoorganizativas  SomREDES NEURONALES Mapas   con Características Autoorganizativas  Som
REDES NEURONALES Mapas con Características Autoorganizativas SomESCOM
 
Redes neuronales
Redes neuronalesRedes neuronales
Redes neuronalesDanielars26
 
Gustavo 07 redes neuronales matlab
Gustavo 07   redes neuronales matlabGustavo 07   redes neuronales matlab
Gustavo 07 redes neuronales matlabWige Marr
 

Similar a 4 Redes Neuronales (18)

Redes Neuronales Monocapa con Conexiones en Cascada PERCEPTRON
Redes Neuronales Monocapa con Conexiones en Cascada PERCEPTRONRedes Neuronales Monocapa con Conexiones en Cascada PERCEPTRON
Redes Neuronales Monocapa con Conexiones en Cascada PERCEPTRON
 
Perceptron parte 2
Perceptron parte 2Perceptron parte 2
Perceptron parte 2
 
LabVIEW - Estructuras
LabVIEW - EstructurasLabVIEW - Estructuras
LabVIEW - Estructuras
 
Perceptron parte 1
Perceptron parte 1Perceptron parte 1
Perceptron parte 1
 
2020-T13 Redes Neuronales II
2020-T13 Redes Neuronales II2020-T13 Redes Neuronales II
2020-T13 Redes Neuronales II
 
Perceptrón Simple – Redes Neuronales con Aprendizaje Supervisado
Perceptrón Simple – Redes Neuronales con Aprendizaje SupervisadoPerceptrón Simple – Redes Neuronales con Aprendizaje Supervisado
Perceptrón Simple – Redes Neuronales con Aprendizaje Supervisado
 
RED NEURONAL ARTIFICIAL . I.A
RED NEURONAL ARTIFICIAL . I.A RED NEURONAL ARTIFICIAL . I.A
RED NEURONAL ARTIFICIAL . I.A
 
Mejores Tecnicas en Redes Neuronales
Mejores Tecnicas en Redes NeuronalesMejores Tecnicas en Redes Neuronales
Mejores Tecnicas en Redes Neuronales
 
S iy rn 2011-3 balotario de la pc1
S iy rn 2011-3 balotario de la pc1S iy rn 2011-3 balotario de la pc1
S iy rn 2011-3 balotario de la pc1
 
Redes Neuronales Basadas En Sistemas Difusos
Redes Neuronales Basadas En Sistemas DifusosRedes Neuronales Basadas En Sistemas Difusos
Redes Neuronales Basadas En Sistemas Difusos
 
Redes Neuronales
Redes NeuronalesRedes Neuronales
Redes Neuronales
 
implementación simulated annealing-en-perceptronmulticapa
implementación simulated annealing-en-perceptronmulticapaimplementación simulated annealing-en-perceptronmulticapa
implementación simulated annealing-en-perceptronmulticapa
 
S iy rn 2012-1 balotario de la pc1
S iy rn 2012-1 balotario de la pc1S iy rn 2012-1 balotario de la pc1
S iy rn 2012-1 balotario de la pc1
 
REDES NEURONALES Mapas con Características Autoorganizativas Som
REDES NEURONALES Mapas   con Características Autoorganizativas  SomREDES NEURONALES Mapas   con Características Autoorganizativas  Som
REDES NEURONALES Mapas con Características Autoorganizativas Som
 
Redes Neuronales
Redes NeuronalesRedes Neuronales
Redes Neuronales
 
Redes neuronales
Redes neuronalesRedes neuronales
Redes neuronales
 
Perceptrón
PerceptrónPerceptrón
Perceptrón
 
Gustavo 07 redes neuronales matlab
Gustavo 07   redes neuronales matlabGustavo 07   redes neuronales matlab
Gustavo 07 redes neuronales matlab
 

4 Redes Neuronales

  • 1. Índice !! Introducción Redes Neuronales !! Perceptrón !! Regla de Perceptrón, Regla Delta !! Perceptrón Multicapa !! Backpropagation Métodos de Aprendizaje Automático - InCo 2 Introducción Problemas Adecuados para ANN !! Modelo y método de aprendizaje para aproximar !! Instancias son representadas por vectores atributo-valor. funciones reales y discretas. !! La salida de la función puede ser discreta, real o vector !! Uno de los métodos más efectivos para interpretar real o discreto. datos ruidosos como imágenes y sonido. !! Paradigma conexionista, inspirado por la observación !! Los datos de entrenamiento pueden contener errores. del sistema nervioso biológico. !! Largos tiempos de entrenamiento son aceptables. !! En síntesis, consiste en la interconexión de unidades simples (neuronas), donde cada una posee entradas !! Rápido tiempo de ejecución de la red. reales y produce una salida real. !! La necesidad de interpretar la función aprendida no es relevante. Métodos de Aprendizaje Automático - InCo 3 Métodos de Aprendizaje Automático - InCo 4
  • 2. Perceptrón Perceptrón !! Es el sistema de ANN más simple. !! Dada una entrada en forma de vector (x1,…,xn), la salida o(x1,…,xn) se calcula como: !! El aprendizaje de un perceptrón consiste en encontrar los pesos w0,…,wn que produzcan la salida deseada dada !! Donde cada wi es un valor real constante o peso que una entrada. determina la contribución de la entrada xi en la salida. !! Por lo tanto, el espacio de hipótesis consiste en el !! w0 es el umbral que debe superar la combinación conjunto de vectores reales: lineal de las entradas para que el perceptrón devuelva 1. Métodos de Aprendizaje Automático - InCo 5 Métodos de Aprendizaje Automático - InCo 6 Perceptrón Perceptrón !! Puede verse como un hiperplano superficie de decisión en un espacio n-dimensional. !! Un perceptrón puede representar operaciones booleanas básicas, ej: AND, OR, NOT. El perceptrón devuelve 1 si la instancia está de un lado del plano !! !! Asumiendo true = 1, false = -1, una y -1 si está del otro. compuerta AND puede implementarse por ejemplo, con un perceptrón de dos entradas y !! No siempre es posible separar las instancias positivas y negativas (ejemplo (b)), en los casos en que sí es posible se le llama pesos w0 = -0.8, w1 = w2 = 0.5. linealmente separable(ejemplo (a)). !! La operación XOR no es posible representarla mediante un perceptrón ya que no es linealmente separable. !! Sin embargo, es claro que cualquier función booleana puede representarse como una red interconectada de perceptrones. Métodos de Aprendizaje Automático - InCo 7 Métodos de Aprendizaje Automático - InCo 8
  • 3. Regla de Perceptrón Regla de Perceptrón !! Esta regla permite ajustar los pesos de un !! La regla de perceptrón: perceptrón para lograr la salida deseada para cada ejemplo de entrenamiento. !! Los pesos del perceptrón son inicializados con valores aleatorios. !! t es el valor deseado de la salida !! Iterativamente se aplica la regla para ajustar los pesos para cada ejemplo de entrenamiento. !! o es el valor de la salida generada por el perceptrón. !! El proceso se finaliza cuando el perceptrón clasifica !! ! es una constante positiva llamada constante de correctamente todos los ejemplos. aprendizaje, su rol es moderar el grado de ajuste de cada iteración (usualmente un valor pequeño, ej: 0.1). Métodos de Aprendizaje Automático - InCo 9 Métodos de Aprendizaje Automático - InCo 10 Descendiente por Gradiente: Regla Delta Descendiente por Gradiente: Regla Delta !! La regla de Perceptrón ajusta con éxito funciones !! Se considera una medida de error de entrenamiento: linealmente separables, pero falla en converger si los ejemplos no son linealmente separables. !! La regla delta soluciona este problema, converge a la mejor aproximación al concepto objetivo. !! Siendo D el conjunto de ejemplos de entrenamiento, td es el valor deseado para el ejemplo d, y od el valor de la salida !! La idea es utilizar descendiente por gradiente, para devuelta por el perceptrón aplicado al ejemplo d. esto se considera un perceptrón sin umbral o unidad lineal, cuya salida es: !! E es la mitad del cuadrado de la diferencia entre el valor deseado y el valor obtenido, sumada para cada ejemplo de entrenamiento. Métodos de Aprendizaje Automático - InCo 11 Métodos de Aprendizaje Automático - InCo 12
  • 4. Descendiente por Gradiente: Regla Delta Descendiente por Gradiente: Regla Delta !! La idea es modificar el vector de pesos en la dirección !! Cada ejemplo es un par (x,t), donde x es el vector que produce el mayor decremento del error, hasta llegar al mínimo error posible. de valores de entrada y t la salida deseada, el !! Se logra derivando E con respecto a cada componente del algoritmo queda: vector w (gradiente de E respecto a w): !! Inicializar cada wi con valores aleatorios !! Inicializar cada "wi en 0 !! Hasta tener un error aceptable, repetir: !! Para cada ejemplo (x,t): !! Computar la salida o dado x# !! El opuesto de este vector indica la dirección de mayor !! Para cada "wi: decremento del error. !! La regla de ajuste queda: !! "wi = "wi+ !(t-o)xi(1) !! Para cada peso wi: !! wi = wi+ "wi(2) Métodos de Aprendizaje Automático - InCo 13 Métodos de Aprendizaje Automático - InCo 14 Descendiente por Gradiente Incremental Perceptrón Multicapa !! La convergencia puede ser lenta. !! Un solo perceptrón puede expresar solamente superficies de decisión lineales. !! Si hay múltiples mínimos locales, la convergencia al mínimo global no está garantizada. !! Una red interconectada de perceptrones puede representar superficies de decisión no lineales. !! Variación: descendiente por gradiente incremetal. !! ¿Qué tipo de unidad utilizar como base? !! En vez de actualizar los pesos luego de analizar todos los !! Unidades lineales: producen redes multicapa que solo ejemplos, se hace incrementalmente, en cada ejemplo. En pueden representar funciones lineales. el algoritmo anterior, se elimina (2) y se cambia (1) por: !! Perceptrón con umbral: su discontinuidad no lo hace diferenciable, no es apropiado para descendiente por gradiente. wi = wi+ !(t-o)xi# !! Unidad Sigmoid: solución. Métodos de Aprendizaje Automático - InCo 15 Métodos de Aprendizaje Automático - InCo 16
  • 5. Perceptrón Multicapa: Unidad Sigmoid Perceptrón Multicapa: Unidad Sigmoid !! Es una unidad cuya salida es una función diferenciable no !! La salida de la unidad varía entre 0 y 1. lineal de sus entradas. !! Crece monótonamente con la entrada. !! Primero computa la combinación lineal de sus entradas y !! Mapea un gran rango a un pequeño rango: squashing luego computa la función sigmoid: function. !! Su derivada se calcula fácilmente: !! El término e-y se puede cambiar por e-ky donde k es constante positiva que ajusta el paso del umbral. !! La función tanh (tangente hiperbólica) también suele ser utilizada, devuelve valores entre -1 y 1. Métodos de Aprendizaje Automático - InCo 17 Métodos de Aprendizaje Automático - InCo 18 Algoritmo de Backpropagation Algoritmo de Backpropagation !! Se utiliza para aprender los pesos de una red multicapa. !! Nuevamente se utiliza descendiente por gradiente para !! Utiliza descendiente por gradiente para minimizar el minimizar E. cuadrado del error entre el valor de salida y el valor deseado. !! La superficie de error puede tener varios mínimos locales, !! Ahora se considera el error producido por multiples por lo tanto, no está garantizada la convergencia al salidas: mínimo global. !! Este algoritmo se aplica a redes de capas feedforward, en esta arquitectura, la capa n conecta sus entradas con !! Donde salidas es el conjunto de unidades de salida, tkd y okd salidas de la capa n-1 y sus salidas con entradas de la capa son la salida deseada y obtenida asociadas a la k-esima n+1. unidad y el ejemplo d. Métodos de Aprendizaje Automático - InCo 19 Métodos de Aprendizaje Automático - InCo 20
  • 6. Algoritmo de Backpropagation Algoritmo de Backpropagation: Dos Capas !! Ejemplo arquitectura feedforward: !! Cada ejemplo es un par (x,t), donde x y t son vectores de entrada y salida respectivamente. !! ! es la constante de aprendizaje. !! nin es el número de entradas de la red !! noculta es el número de unidades en la capa oculta. !! nsalidaes el número de unidades de salida !! La entrada de la unidad i hacia la j se denota xji, y el peso de i a j se denota wji. Métodos de Aprendizaje Automático - InCo 21 Métodos de Aprendizaje Automático - InCo 22 Algoritmo de Backpropagation: Dos Capas Algoritmo de Backpropagation: General !! Crear la red de nin entradas, noculta unidades ocultas y nsalida !! El algoritmo anterior se generaliza fácilmente para redes unidades de salida. con una profundidad arbitraria. !! Inicializar los pesos con valores aleatorios pequeños. !! Hasta tener un error aceptable, repetir !! La regla para computar los pesos de las unidades de salida !! Para cada (x,t) en los ejemplos de entrenamiento: !! Propagar entrada hacia delante: dada la entrada x en la red, computar cada salida de es igual. cada unidad de la red. !! Propagar errores hacia atrás: !! Para cada unidad de salida k calcular el error $k# !! La regla para computar los errores en las unidades ocultas: !! Para cada unidad oculta, calcular su error $h: !! Actualizar cada peso wji: !! El error $r para la unidad r de la capa m se computa a partir de los error $ de la siguiente capa m+1. Métodos de Aprendizaje Automático - InCo 23 Métodos de Aprendizaje Automático - InCo 24
  • 7. Algoritmo de Backpropagation: Momento Diseño de una Red !! Una variación en la regla de actualización de pesos: !! Puntos a considerar: agregar momento. !! Entradas: ¿qué atributos, propiedades del dominio considerar? ¿Normalizar? !! La actualización del peso en la n-esima iteración depende ¿Discretaso reales? ¿Rango? ¿Cuántas? ¿Course of dimensionality? parcialmente de la n-1 iteración: !! Arquitectura: ¿Cuántas capas? ¿Cómo interconectarlas? !! Función de activación: ¿Cuál utilizar? ¿Con qué umbral?¿En qué rango? !! "wji(n) es la actualización de un peso en la n-esima !! Salidas: ¿Cuántas? ¿Qué devuelven? ¿En qué rango? ¿Discreto o real? iteración. !! % es una constante llama momentum, con 0!%<1. !! Ejemplos de entrenamiento: ¿De dónde los obtengo? ¿Cómo los represento? ¿Cuántos tengo? ¿Qué tan confiables son? !! El efecto es dar inercia a la trayectoria de descendiente, mantenerse moviendo en superficies planas e incrementar !! Algoritmo de entrenamiento: ¿Backpropagation u otro? ¿Cuándo parar de la velocidad de convergencia. entrenar? ¿Offline u online? ¿Batch o incremental? !! Constante de aprendizaje: ¿Cuándo corresponde utilizarla? ¿Qué valor usar? ¿Hay que decrementarlo a medida que avanza el entrenamiento? Métodos de Aprendizaje Automático - InCo 25 Métodos de Aprendizaje Automático - InCo 26