33

Análisis de Datos - Maestría y Doctorado en Ciencias en

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Análisis de Datos - Maestría y Doctorado en Ciencias en

Análisis de Datos

Redes neuronales arti�ciales

Perceptrón multicapa

Dr. Wilfrido Gómez Flores

Page 2: Análisis de Datos - Maestría y Doctorado en Ciencias en

Introducción

Redes neuronales arti�ciales (ANN) � modelos inspirados en el

funcionamiento de las neuronas biológicas, cuyo propósito es mapear

una entrada en una salida deseada.

Morfología típica de una neurona biológica: un cuerpo celular llamado soma,prolongaciones cortas que transmiten impulsos hacia el soma denominadas den-dritas y una prolongación larga llamado axón que conduce impulsos desde elsoma hacia otras neuronas u órganos; por tanto, su función es recolectar y pro-cesar impulsos eléctricos.

1/32 Conceptos básicos AD-14

Page 3: Análisis de Datos - Maestría y Doctorado en Ciencias en

Introducción

• La sinapsis es el enlace electro-químico para la transmisión de

impulsos nerviosos entre neuronas.

• En la red neuronal del cerebro humano hay aproximadamente

1012 neuronas conectadas por aproximadamente 1014 sinapsis.

• Sistema de procesamiento paralelo de información masiva.

• Las neuronas reciben entradas desde otras neuronas y envían

salidas hacia otras neuronas.

• Plasticidad sináptica � El aprendizaje puede deberse al cambio

en la fuerza en las conexiones neuronales.

2/32 Conceptos básicos AD-14

Page 4: Análisis de Datos - Maestría y Doctorado en Ciencias en

Introducción

Trabajos principales que de�nieron las bases de las ANN actuales:

• McCulloch & Pitts (1943) � Primer modelo neuronal simpli-

�cado que resolvía las operaciones lógicas AND, OR y NOT.

• Hebb (1949) � Modelo matemático que incluye el concepto de

aprendizaje por medio de refuerzo o asociación.

• Rosenblatt (1958) � Modelo perceptrón, converge en un nú-

mero �nito de iteraciones en clases linealmente separables.

• Rumelhart (1986) � Propuso el algoritmo de retropropagación

del error para el entrenamiento de ANN.

3/32 Conceptos básicos AD-14

Page 5: Análisis de Datos - Maestría y Doctorado en Ciencias en

Modelo de McCulloch & Pitts

El modelo neuronal presenta una respuesta binaria:

y =

1 si∑n

i=1 ai ≥ θ ∧∑m

j=1 bj = 0,

0 otro caso.(1)

ai es una entrada excitatoria, bj es una entrada inhibidora y θ es un umbral.

4/32 Conceptos básicos AD-14

Page 6: Análisis de Datos - Maestría y Doctorado en Ciencias en

Modelo de McCulloch & Pitts

AND OR NOTa1 a2 b1

θ = 2 θ = 1 θ = 1

0 0 0 0 0 �

1 0 0 0 1 1

0 1 0 0 1 �

1 1 0 1 1 �

1 0 1 � � 0

Funciones lógicas implementadas con el modelo de McCulloch & Pitts.

• Importancia � La suma de las entradas es transformada por una

función de transferencia que emula el impulso de salida.

• Limitante � No incorpora aprendizaje automático del mapeo de

las entradas en salidas deseadas.

5/32 Conceptos básicos AD-14

Page 7: Análisis de Datos - Maestría y Doctorado en Ciencias en

Modelo perceptrón

Respuesta del perceptrón a un patrón de entrada x:

g(x) = φ

(w0 +

d∑i=1

wixi

), φ(u) =

+1 si u > 0,

−1 otro caso.(2)

Modelo perceptrón basado en la neurona arti�cial de McCulloch & Pitts.

6/32 Conceptos básicos AD-14

Page 8: Análisis de Datos - Maestría y Doctorado en Ciencias en

Modelo perceptrón

Teoría Hebbiana: describe el mecanismo básico de plasticidad si-

náptica, donde el valor de una conexión sináptica se incrementa si

las neuronas de ambos lados de la sinapsis se activan repetidas veces

de forma simultánea y se debilita si se activan por separado.

Los pesos sinápticos se modi�can con base en un modelo de apren-

dizaje Hebbiano:

wj =1

n

n∑i=1

yixij , j = 0, 1, . . . , d, (3)

donde n es el número total de muestras de aprendizaje y yi es la salida

deseada de la i-ésima muestra de aprendizaje xi = [1, xi1, . . . , xid]T .

7/32 Conceptos básicos AD-14

Page 9: Análisis de Datos - Maestría y Doctorado en Ciencias en

Modelo perceptrón

• Aprendizaje de la función lógica AND generando el mapeoX → y:

X =

+1 +1 +1 +1

−1 −1 +1 +1

−1 +1 −1 +1

, y = [−1,−1,−1,+1]

• Cálculo de los pesos sinápticos:

yixij =

−1 −1 −1 +1

+1 +1 −1 +1

+1 −1 +1 +1

, w =

−0.5+0.5

+0.5

• Respuesta del perceptrón:

wTX = [−1.5,−0.5,−0.5,+0.5], φ(wTX) = [−1,−1,−1,+1]

8/32 Conceptos básicos AD-14

Page 10: Análisis de Datos - Maestría y Doctorado en Ciencias en

Modelo perceptrón

AND OR NOTx0 x1 x2

wTx g(x) wTx g(x) wTx g(x)

1 −1 −1 −1.5 −1 −0.5 −1 1 1

1 −1 1 −0.5 −1 0.5 1 −1 −11 1 −1 −0.5 −1 0.5 1

1 1 1 0.5 1 1.5 1

Funciones lógicas implementadas con el modelo perceptrón utilizandoaprendizaje Hebbiano. Los pesos aprendidos son: wAND = [−0.5, 0.5, 0.5]T ,wOR = [0.5, 0.5, 0.5]T , y wNOT = [0, 0,−1]T .

9/32 Conceptos básicos AD-14

Page 11: Análisis de Datos - Maestría y Doctorado en Ciencias en

Modelo perceptrón

-1 1

-1

1

(a)

-1 1

-1

1

(b)

Las funciones lógicas AND y OR representan un problema de clases linealmenteseparables, de modo que el perceptrón es capaz de encontrar una frontera de de-cisión. Un solo perceptrón no es capaz de representar la compuerta OR-exclusiva(XOR), ya que no existe separabilidad lineal entre clases.

10/32 Conceptos básicos AD-14

Page 12: Análisis de Datos - Maestría y Doctorado en Ciencias en

Red de perceptrones

El problema XOR se puede resolver fácilmente con una red de perceptrones detres capas. La capa de entrada distribuye las variables del patrón de entrada haciala capa oculta. En la capa oculta se entrenan dos perceptrones para resolver lascompuertas AND y OR cuyas respuestas son combinadas en la capa de salidagenerando una solución bilineal al problema XOR. A este tipo de arquitectura sele denomina perceptrón multicapa (MLP).

11/32 Conceptos básicos AD-14

Page 13: Análisis de Datos - Maestría y Doctorado en Ciencias en

Red de perceptrones

-1 1

-1

1

Solución bilineal al problema XOR usando un perceptrón multicapa con trescapas. La región de decisión de la clase ω2 (puntos rojos) es discontinua.

12/32 Conceptos básicos AD-14

Page 14: Análisis de Datos - Maestría y Doctorado en Ciencias en

Red neuronal feed-forward

• Perceptrón multicapa (MLP) � capaz de resolver el problema

XOR con una red de perceptrones con tres capas.

• Problema � ¾Cómo calcular los pesos sinápticos de los nodos

ocultos sin conocer su salida deseada? (Minsky & Papert, 1969)

• Solución � Algoritmo backpropagation basado en descenso de

gradiente y regla de la cadena (Rumelhart et al., 1986).

• MLP también se conoce como red neuronal feed-forward

(FNN), que puede tener otras funciones de activación diferentes

a la función escalón del perceptrón.

13/32 Conceptos básicos AD-14

Page 15: Análisis de Datos - Maestría y Doctorado en Ciencias en

Red neuronal feed-forward

Red neuronal feed-forward de tres capas totalmente conectada, denotada comod−h− c: d nodos de entrada, una capa oculta con h nodos, y c nodos de salida.

14/32 Conceptos básicos AD-14

Page 16: Análisis de Datos - Maestría y Doctorado en Ciencias en

Funciones de activación

Función Grá�co Expresión 1ra derivada

Lineal f(x) = x f ′(x) = 1

Sigmoidal f(x) = 11+e−x

f ′(x) = f(x)(1− f(x))

Tanh f(x) = 21+e−2x − 1 f ′(x) = 1− f(x)2

ReLU f(x) =

0 x < 0

x x ≥ 0f ′(x) =

0 x < 0

1 x ≥ 0

Leaky ReLUf(x) =

αx x < 0

x x ≥ 0f ′(x) =

α x < 0

1 x ≥ 0

Una función de activación genera respuestas no lineales en los nodos de las capasocultas, después de aplicar el producto punto entre entradas y pesos.

15/32 Conceptos básicos AD-14

Page 17: Análisis de Datos - Maestría y Doctorado en Ciencias en

Capa de salida

• La función softmax provee la probabilidad posterior para la k-ésima

clase en la capa de salida:

zk ≡ σ(uk) =exp(uk)∑cl=1 exp(ul)

. (4)

• Primera derivada de la función softmax:

∂σ(uk)

∂uj=

σ(uk)(1− σ(uj)) k = j,

−σ(uj)σ(uk) k = j.(5)

• Generalizando (5) en términos de una matriz Jacobiana:

∂σ(uk)

∂uj=

σ(u1)− σ(u1)σ(u1) . . . −σ(uc)σ(u1)

... σ(uk)− σ(uk)σ(uj)...

−σ(u1)σ(uc) · · · σ(uc)− σ(uc)σ(uc)

.

(6)

16/32 Conceptos básicos AD-14

Page 18: Análisis de Datos - Maestría y Doctorado en Ciencias en

Capa de salida

• En el caso particular de dos clases, se puede usar un solo nodo de

salida activado por la función sigmoidal:

z ≡ σ(u) =1

1 + exp(−u). (7)

• Primera derivada de la función sigmoidal:

σ′(u) = σ(u)(1− σ(u)). (8)

• Nótese que la función softmax recibe un vector, mientras que la

función sigmoidal recibe una escalar.

17/32 Conceptos básicos AD-14

Page 19: Análisis de Datos - Maestría y Doctorado en Ciencias en

Función de pérdida

Minimizar la entropía cruzada categórica:

J(w) = −c∑

k=1

tk log(zk),

= −c∑

k=1

tk

(uk − log

c∑l=1

eul

), (9)

donde t = [t1, . . . , tc]T es la salida deseada en formato one-hot-

encoding, y z = [z1, . . . , zc]T es el vector de respuestas en la capa

de salida, donde el k-ésimo elemento es

zk = σ

wk0 +

h∑j=1

wkjf

(wj0 +

d∑i=1

wjixi

) , (10)

donde f(·) es una función de activación y σ(·) es la función softmax.

18/32 Conceptos básicos AD-14

Page 20: Análisis de Datos - Maestría y Doctorado en Ciencias en

Función de pérdida

• Durante el entrenamiento de la ANN, la función de pérdida es

calculada como el promedio de la entropía cruzada sobre todas las

muestras de entrenamiento:

J(w) = − 1

n

n∑i=1

c∑k=1

tik log(zik). (11)

• En el caso particular de dos clases, se minimiza entropía cruzada

binaria:

J(w) = − [t log(z) + (1− t) log(1− z)] , (12)

donde t ∈ {0, 1} es la salida deseada, y z es la salida de la red

dada por la función sigmoidal.

19/32 Conceptos básicos AD-14

Page 21: Análisis de Datos - Maestría y Doctorado en Ciencias en

Algoritmo backpropagation

Para minimizar J(w), se utiliza el algoritmo backpropagation, en

donde los pesos se actualizan mediante la regla de descenso de gra-

diente:w(1) arbitrario

w(k + 1) = w(k)−∆w(k) k ≥ 1(13)

donde la dirección que reduce el error es

∆w = −η∂J(w)

∂w, (14)

donde η es la tasa de aprendizaje.

20/32 Conceptos básicos AD-14

Page 22: Análisis de Datos - Maestría y Doctorado en Ciencias en

Algoritmo backpropagation

Tomando como referencia una FNN d→ h→ c:a

• Actualización de los pesos de la capa oculta→salida:

∆wkj = η(tk − zk)yj ,

= ηδkyj . (15)

• Actualización de los pesos de la capa entrada→oculta:

∆wji = η(∑c

k=1δkwkj

)σ′(wjixi)xi,

= ηδjxi. (16)

aPara las notaciones ver la diapositiva 2.

21/32 Conceptos básicos AD-14

Page 23: Análisis de Datos - Maestría y Doctorado en Ciencias en

Descenso de gradiente batch

Input: w, η, n, rmax, umbral θOutput: w

1 r ← 02 do3 r ← r + 14 m← 0, ∆wji ← 0, ∆wkj ← 05 do6 m← m+ 17 xm ← selecciona un patrón

8 ∆wji ← ∆wji + ηδjxi9 ∆wkj ← ∆wkj + ηδkyj

10 until m = n11 wji ← wji +∆wji

12 wkj ← wkj +∆wkj

13 until ∥∇J(w)∥ < θ ∧ (r < rmax)

22/32 Conceptos básicos AD-14

Page 24: Análisis de Datos - Maestría y Doctorado en Ciencias en

Descenso de gradiente estocástico

• Actualización de pesos después de observar una sola muestra.

• �Expulsa� el descenso del gradiente de mínimos locales, ya que

agrega ruido al proceso de aprendizaje.

• Más rápido que el descenso de gradiente batch.

Input: w, η, rmax, umbral θOutput: w

1 r ← 02 do3 r ← r + 14 x← selecciona un patrón aleatoriamente

5 wji ← wji + ηδjxi6 wkj ← wkj + ηδkyj7 until ∥∇J(w)∥ < θ ∧ (r < rmax)

23/32 Conceptos básicos AD-14

Page 25: Análisis de Datos - Maestría y Doctorado en Ciencias en

Descenso de gradiente mini-batch

(a)

1

2 batch

1

2 mini

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

Épocas

1

2 SGD

(b)

(a) Descenso de gradiente mini-batch es un compromiso entre descenso de gra-diente batch y estocástico (SGD). La actualización de pesos se realiza con unconjunto pequeño de muestras. (b) Curvas de aprendizaje para cada estrategiade descenso de gradiente.

24/32 Conceptos básicos AD-14

Page 26: Análisis de Datos - Maestría y Doctorado en Ciencias en

Consideraciones

• Bias � Patrones de entrenamiento aumentados a Rd+1.

• Normalización � Escalar las variables predictoras para que tengan

media cero y desviación estándar unitaria:

zij =xij − µj

σj, i = 1, . . . , n, j = 1, . . . , d. (17)

• Inicialización de pesos � Aleatoria con distribución uniforme:

• Capa entrada→oculta: −1/√d < wij < +1/

√d.

• Capa oculta→salida: −1/√h < wkj < +1/

√h.

• Tasa de aprendizaje � Fijo, decreciente y adaptativo:

• Fijo: típicamente es η ≃ 0.001.

• Decreciente: disminuye η después de ciertas épocas.

• Adaptativo: aumenta o disminuye η en función del error.

25/32 Conceptos básicos AD-14

Page 27: Análisis de Datos - Maestría y Doctorado en Ciencias en

Consideraciones

• Número de capas ocultas � Una o inclusive dos si es necesario.

Múltiples capas tienden a caer en mínimos locales.

• Número de nodos � Capa de entrada igual al número de di-

mensiones d y capa de salida igual al número de clases c. El nú-

mero de nodos ocultos h de�ne la complejidad de las fronteras

de decisión; se puede determinar mediante validación cruzada.

• Estabilidad numérica softmax � Evitar desbordar las expo-

nenciales:

σ(uk) =exp(uk −max(u))∑cl=1 exp(ul −max(u))

, (18)

donde u = [u1, . . . , uc].

26/32 Conceptos básicos AD-14

Page 28: Análisis de Datos - Maestría y Doctorado en Ciencias en

Consideraciones

Una curva de aprendizaje muestra la función de costo en función del número deépocas. Los errores de validación y prueba son generalmente más altos que elerror de entrenamiento. En algunos protocolos, el criterio de paro es el mínimoerror de validación, ya que el entrenamiento excesivo de la red puede sobre-ajustar la fronteras de decisión a los datos de entrenamiento.

27/32 Conceptos básicos AD-14

Page 29: Análisis de Datos - Maestría y Doctorado en Ciencias en

Momentum

• Si la super�cies de error tienen mesetas, entonces ∇J(w) → 0;

por tanto, el descenso de gradiente no avanzará.

• Momentum � Cantidad de movimiento que tiene un objeto, la

cual cambiará si actúa una fuerza externa sobre el objeto.

• Mantener el momentum del descenso de gradiente ejerciendo una

fuerza de empuje.

• Se incluye a la regla de aprendizaje una fracción α de la actuali-

zación del peso en una época anterior (Nesterov momentum):

v(k) = α(αv(k − 1) + ∆w(k)) + ∆w(k),

w(k + 1) = w(k) + v(k).(19)

donde v se denomina vector de velocidad y comúnmente α ≃ 0.9.

28/32 Conceptos básicos AD-14

Page 30: Análisis de Datos - Maestría y Doctorado en Ciencias en

Momentum

Input: w, η, α, rmax, umbral θOutput: w

1 r ← 02 vji ← 03 vkj ← 04 do5 r ← r + 16 x← selecciona un patrón aleatoriamente

7 vji ← α(αvji + ηδjxi) + ηδjxi8 wji ← wji + vji9 vkj ← α(αvkj + ηδkyj) + ηδkyj

10 wkj ← wkj + vkj11 until ∥∇J(w)∥ < θ ∧ (r < rmax)

29/32 Conceptos básicos AD-14

Page 31: Análisis de Datos - Maestría y Doctorado en Ciencias en

Momentum

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

Épocas

1

2

El momentum ayuda a acelerar la convergencia.

30/32 Conceptos básicos AD-14

Page 32: Análisis de Datos - Maestría y Doctorado en Ciencias en

Clasi�cación con FNN

• Respuesta de k-ésimo nodo de salida para un patrón arbitrario x:

gk(x) ≡ zk = σ

wj0 +

h∑j=1

wkjf

(wk0 +

d∑i=1

wjixi

) , (20)

donde f(·) es la función de activación sigmoidal para los nodos

ocultos y σ(·) es la función softmax para los nodos de salida.

• Regla de clasi�cación � Decidir ωi si gi(x) > gj(x), ∀i = j.

31/32 Conceptos básicos AD-14

Page 33: Análisis de Datos - Maestría y Doctorado en Ciencias en

Clasi�cación con FNN

-1 -0.5 0 0.5 1

-1

-0.5

0

0.5

1

(a)

-1 -0.5 0 0.5 1

-1

-0.5

0

0.5

1

(b)

Fronteras de decisión generadas por una FNN con 10 nodos ocultos para (a) dosclases no linealmente separables (problema XOR) y (b) cinco clases.

32/32 Conceptos básicos AD-14