fundamentos del aprendizaje automático

140
Fundamentos del aprendizaje automático (Machine learning) Joaquín Luque

Upload: others

Post on 13-Jul-2022

36 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Fundamentos del aprendizaje automático

Fundamentos del aprendizaje automático

(Machine learning)

Joaquín Luque

Page 2: Fundamentos del aprendizaje automático

Contenido

1. Introducción2. Regresión

a) Regresión univariableb) Regresión multivariable

3. Clasificacióna) Regresión logísticab) Máquinas de vectores soporte (SVM)

• Forma dual de la optimización (regresión y SVM)

c) Funciones Kerneld) Clasificación multiclase

4. Segmentación5. Reducción de dimensionalidad6. Deep learning (introducción)

Page 3: Fundamentos del aprendizaje automático

Deep LearningIntroducción

SVM (kernel gaussiano) SVM (kernel gaussiano)

Función kernel

Función demapeo

Productoescalar

Optimizadordual

𝜑 𝑥 𝑖 , 𝜑 𝑥 𝑗𝜑 𝑥𝑥 𝛼∗𝐾 𝑥 𝑖 , 𝑥 𝑗

Page 4: Fundamentos del aprendizaje automático

Deep LearningIntroducción

𝑥1 𝑥2

𝑦

𝑥

φ 1 (𝑥) φ11

φ21

φ31

φ41

φ51

φ12

φ22

φ32

φ13 φ2

3φ3

3φ4

3

φ 2 (φ 1 (𝑥))

φ 3 φ 2 (φ 1 (𝑥))

𝑓 φ 3 φ 2 (φ 1 (𝑥)) 𝑓

φ 𝑥

𝑓 φ 𝑥

Page 5: Fundamentos del aprendizaje automático

Deep LearningIntroducción

𝑓 𝝋 𝑲 𝐗

Rule-based systems 𝑦 = 𝑓 𝑋 Manual - - Manual

MachineLearning

Basic ML 𝑦 = 𝑓 𝑋 Automatic - - Manual

Feature-based ML 𝑦 = 𝑓 𝜑 𝑋 Automatic Manual - Raw

Kernel-based ML 𝑦 = 𝑓 𝐾 𝑋 Automatic Automatic Manual Raw

Deep Learning 𝑦 = 𝑓 𝜑 𝑋 Automatic Automatic - Raw

Los features 𝜑 𝑋 son construidos de manera automática (no explícita)mediante el uso de grafos computacionales (redes neuronales)

a partir de los datos originales disponibles 𝑋

Page 6: Fundamentos del aprendizaje automático

Deep LearningIntroducción

𝑐𝑎𝑝𝑎𝑠 = 3𝑛𝑜𝑑𝑜𝑠 = 300

Page 7: Fundamentos del aprendizaje automático

Complejidad del problema

Deep LearningIntroducción

Complejidad

Page 8: Fundamentos del aprendizaje automático

Número decoeficientes

Complejidad del modelo

Complejidad del problema

Deep LearningIntroducción

Número dedatos de

entrenamiento

Esfuerzocomputacional

RegLog RegLog2 RegLog4 SVM

Complejidad

NN

3 6 15 1000 20601

Page 9: Fundamentos del aprendizaje automático

Deep LearningIntroducción

ML-1

ML-2

ML-3

ML-4

ML-1

ML-2

ML-3

ML-4

Page 10: Fundamentos del aprendizaje automático

Deep LearningIntroducción

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press. Pag. 19

Evolución del tamaño de los datasets

Page 11: Fundamentos del aprendizaje automático

Deep LearningIntroducción

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press. Pag. 23

Número de neuronas de la red

Page 12: Fundamentos del aprendizaje automático

Deep LearningIntroducción

1. Perceptron (Rosenblatt, 1958, 1962)2. Adaptive linear element (Widrow and Hoff, 1960)3. Neocognitron (Fukushima, 1980)4. Early back-propagation network (Rumelhart et al., 1986b)5. Recurrent neural network for speech recognition (Robinson and Fallside, 1991)6. Multilayer perceptron for speech recognition (Bengio et al., 1991)7. Mean field sigmoid belief network (Saul et al., 1996)8. LeNet-5 (LeCun et al., 1998b)9. Echo state network (Jaeger and Haas, 2004)10. Deep belief network (Hinton et al., 2006)11. GPU-accelerated convolutional network (Chellapilla et al., 2006)12. Deep Boltzmann machine (Salakhutdinov and Hinton, 2009a)13. GPU-accelerated deep belief network (Raina et al., 2009)14. Unsupervised convolutional network (Jarrett et al., 2009)15. GPU-accelerated multilayer perceptron (Ciresan et al., 2010)16. OMP-1 network (Coates and Ng, 2011)17. Distributed autoencoder (Le et al., 2012)18. Multi-GPU convolutional network (Krizhevsky et al., 2012)19. COTS HPC unsupervised convolutional network (Coates et al., 2013)20. GoogLeNet (Szegedy et al., 2014a)

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press. Pag. 23

Page 13: Fundamentos del aprendizaje automático

Deep LearningIntroducción

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press. Pag. 22

Número de conexiones de cada neurona

Page 14: Fundamentos del aprendizaje automático

Deep LearningIntroducción

1. Adaptive linear element (Widrow and Hoff, 1960)2. Neocognitron (Fukushima, 1980)3. GPU-accelerated convolutional network (Chellapilla et al., 2006)4. Deep Boltzmann machine (Salakhutdinov and Hinton, 2009a)5. Unsupervised convolutional network (Jarrett et al., 2009)6. GPU-accelerated multilayer perceptron (Ciresan et al., 2010)7. Distributed autoencoder (Le et al., 2012)8. Multi-GPU convolutional network (Krizhevsky et al., 2012)9. COTS HPC unsupervised convolutional network (Coates et al.,

2013)10. GoogLeNet (Szegedy et al., 2014a)

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press. Pag. 22

Page 15: Fundamentos del aprendizaje automático

Deep LearningIntroducción

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press. Pag. 198

Incremento de las prestaciones con la profundidad de la red

Page 16: Fundamentos del aprendizaje automático

Deep LearningIntroducción

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press. Pag. 199

Incremento de las prestaciones con el número de parámetros

Page 17: Fundamentos del aprendizaje automático

Deep LearningIntroducción

http://sqlml.azurewebsites.net/2017/09/12/convolutional-neural-network/

Evolución de las prestaciones (error de clasificación)ImageNet Large Scale Visual Recognition Challenge

150k imágenes de 1k categorías

Page 18: Fundamentos del aprendizaje automático

https://www.gartner.com/smarterwithgartner/top-trends-on-the-gartner-hype-cycle-for-artificial-intelligence-2019/

Hype cycle 2019

Page 19: Fundamentos del aprendizaje automático

Deep LearningIntroducción

https://www.researchgate.net/figure/Graph-illustrating-the-impact-of-data-available-on-performance-of-traditional-machine_fig1_324457640

Page 20: Fundamentos del aprendizaje automático

Deep LearningIntroducción

http://makeyourownneuralnetwork.blogspot.com/2017/05/learning-mnist-with-gpu-acceleration.html

GPUs vs. CPUs

Page 21: Fundamentos del aprendizaje automático

Deep LearningIntroducción

https://course.fast.ai/gpu_tutorial.html

Evolución de la potencia de cálculo (CPU y GPU)

Page 22: Fundamentos del aprendizaje automático

Deep LearningIntroducción

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press. Pag. 6

Niveles de características (features)

Page 23: Fundamentos del aprendizaje automático

Deep Learning

• Conceptos generales– Neurona y red neuronal– Aproximación universal de funciones– Influencia de la arquitectura de la red– Cálculo del gradiente

• Backpropagation• Desvanecimiento del gradiente

– Técnicas de regularización– Optimización del gradiente

• Redes convolucionales• Redes recurrentes

Page 24: Fundamentos del aprendizaje automático

Neurona y red neuronalRegresión logística

ClienteIngresos (m€)

𝒙𝟏𝒊

Edad (años)

𝒙𝟐𝒊

Vehículo

𝒚(𝒊)

1 97.17 26.6 S

2 44.67 32.3 N

3 46.64 26.7 N

4 33.84 23.7 N

5 79.35 27.0 S

⋮ ⋮ ⋮ ⋮

Page 25: Fundamentos del aprendizaje automático

Neurona y red neuronalRegresión logística

ℎ 𝑥 =1

1 + 𝑒−𝑧Función logística

𝑧 ≡ 𝑤1𝑥1 +𝑤2𝑥2 + 𝑏 = 𝑥𝑤𝑇 + 𝑏

Page 26: Fundamentos del aprendizaje automático

Neurona y red neuronalRegresión logística

𝑥1𝑖

𝑥2𝑖 ⋯ 𝑥𝑑

𝑖𝑋 =

𝑥11

𝑥21

⋯ 𝑥𝑑1

𝑥12

𝑥22

⋯ 𝑥𝑑2

⋮ ⋮ ⋱ ⋮

𝑥1𝑖

𝑥2𝑖

⋯ 𝑥𝑑𝑖

⋮ ⋮ ⋱ ⋮

𝑥1𝑛

𝑥2𝑛

⋯ 𝑥𝑑𝑛

Regresión logística

ℎ 𝑖ℎ𝑤 =

1

1 + 𝑒−𝑧

𝑧 = 𝑥𝑤𝑇 + 𝑏 = 𝑤1𝑥1 +𝑤2𝑥2 +⋯+𝑤𝑑𝑥𝑑 + 𝑏

Page 27: Fundamentos del aprendizaje automático

Neurona y red neuronalRegresión logística

𝑎 𝑧 = ℎ 𝑧 =1

1 + 𝑒−𝑧

𝑧(𝑥) = 𝑤1𝑥1 + 𝑤2𝑥2 +⋯+𝑤𝑑𝑥𝑑 + 𝑏

𝑎 𝑧

𝑥1 𝑥2 ⋯ 𝑥𝑑

𝑧 𝑥

ℎ 𝑥

𝑏 𝑤1𝑤2

𝑤𝑑

Neurona

Función de activación

Perceptrón si𝑎 𝑧 = step 𝑧

Page 28: Fundamentos del aprendizaje automático

Neurona y red neuronalFunciones de activación

Page 29: Fundamentos del aprendizaje automático

Neurona y red neuronalMúltiples capas

𝑎 𝑧

𝑧(𝜑)

ℎ(𝑥)

𝑥1 𝑥2 𝑥𝑑⋯

Page 30: Fundamentos del aprendizaje automático

Neurona y red neuronalMúltiples capas

𝑎 𝑧

𝑧(𝜑)

ℎ(𝑥)

𝜑1 𝑥 𝜑2 𝑥 𝜑𝐻1 𝑥⋯

Page 31: Fundamentos del aprendizaje automático

Neurona y red neuronalMúltiples capas

𝑥1 𝑥2 ⋯ 𝑥𝑑

⋯𝑎11

𝑧11

𝑎21

𝑧21

𝑎𝐻11

𝑧H1

1

𝑎1𝐿

𝑧1𝐿

ℎ(𝑥)

Capa entrada

Capa salida

Capaoculta

𝜑1 𝑥 𝜑2 𝑥 𝜑𝐻1 𝑥

Feedforward NNFully-connected NNSingle-layer NN

Page 32: Fundamentos del aprendizaje automático

Neurona y red neuronalMúltiples capas

𝑥1 𝑥2 ⋯ 𝑥𝑑

⋯𝑎11

𝑧11

𝑎21

𝑧21

𝑎𝐻11

𝑧H1

1

𝑎1𝐿

𝑧1𝐿

ℎ(𝑥)

Capa entrada

Capa salida

Capaoculta

Capaoculta

⋯𝑎12

𝑧12

𝑎22

𝑧22

𝑎𝐻22

𝑧H2

2

𝑎22

𝑧22

Feedforward NNFully-connected NNMulti-layer NN

Page 33: Fundamentos del aprendizaje automático

Neurona y red neuronalNúmero de parámetros

𝑧𝑘1= 𝑤𝑘,1

1𝑥1 + 𝑤𝑘,1

1𝑥2 +⋯+𝑤𝑘,𝑑

1𝑥𝑑 + 𝑏𝑘

1

𝑧𝑘2= 𝑤𝑘,1

2𝑎11+𝑤𝑘,2

2𝑎21+⋯+𝑤𝑘,𝐻1

2𝑎𝐻11+ 𝑏𝑘

2

𝑧𝑘𝑙= 𝑤𝑘,1

𝑙𝑎1𝑙−1

+𝑤𝑘,2𝑙𝑎2𝑙−1

+⋯+𝑤𝑘,𝐻𝑙−1

𝑙𝑎𝐻𝑙−1

𝑙−1+ 𝑏𝑘

𝑙

Número de parámetros de la neurona 𝑘 de la capa 𝑙: 𝑁𝑘,𝑙 = 𝐻𝑙−1 + 1

𝑘-ésimaneurona de

la capa 1

𝐻0 = 𝑑Número de neuronas de la capa 𝑙: 𝐻𝑙

Número de parámetros de la capa 𝑙: 𝑁𝑙 = 𝐻𝑙 · 𝑁𝑘,𝑙 = 𝐻𝑙 · 𝐻𝑙−1 + 1

Número de parámetrosde la red neuronal:

𝑁 =

𝑙=1

𝐿

𝑁𝑙 =

𝑙=1

𝐿

𝐻𝑙 · 𝐻𝑙−1 + 1

Page 34: Fundamentos del aprendizaje automático

Neurona y red neuronalFunción de activación de la capa de salida

• Regresión

– Lineal: 𝑎1𝐿= 𝑧1

𝐿; ℎ = 𝑎1

𝐿

• Clasificación binaria

– Sigmoide: 𝑎1𝐿= 𝜎 𝑧1

𝐿; ℎ = sign 𝑎1

𝐿− 0.5

• Clasificación multiclase

– Softmax:

𝑎𝑗𝐿= 𝜎 𝑎𝑗

𝐿−1=

𝑒𝑎𝑗𝐿−1

σ𝑘=1𝐾 𝑒𝑎𝑘

𝐿−1; ℎ = argmax 𝑎𝑗

𝐿

Page 35: Fundamentos del aprendizaje automático

Deep Learning

• Conceptos generales– Neurona y red neuronal– Aproximación universal de funciones– Influencia de la arquitectura de la red– Cálculo del gradiente

• Backpropagation• Desvanecimiento del gradiente

– Técnicas de regularización– Optimización del gradiente

• Redes convolucionales• Redes recurrentes

Page 36: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

𝑎 𝑧

𝑥1 𝑥2 ⋯ 𝑥𝑑

𝑧 𝑥

ℎ 𝑥

𝑏

𝑤1 𝑤2 𝑤𝑑

𝑎 𝑧 =1

1 + 𝑒−𝑧

𝑎 𝑧

𝑥

𝑧 𝑥

ℎ 𝑥

𝑏 𝑤

𝑧(𝑥) = 𝑤𝑥 + 𝑏

1 dimensión

Page 37: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

http://neuralnetworksanddeeplearning.com/chap4.html

𝑎Σ

𝑥

𝑎Σ

𝑎Σ

𝑎Σ

𝑎Σ

𝑎Σ

𝑎Σ

𝑎Σ

Page 38: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

http://neuralnetworksanddeeplearning.com/chap4.html

𝑎Σ

𝑎Σ

𝑎Σ

𝑎Σ

𝑎Σ

𝑎Σ

𝑎Σ

𝑥

𝑎Σ

Σ Σ

𝜑1 𝑥 𝜑2 𝑥

Page 39: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

𝑎Σ

𝑎Σ

𝑥

Σ

𝑤

𝑏

𝑎

𝑎 𝑧 =1

1 + 𝑒−𝑧

𝑧(𝑥) = 𝑤𝑥 + 𝑏

𝑎 𝑧 = 0.5 → 𝑒−𝑧 = 1 → 𝑧 = 0 → 𝑥 = −𝑏

𝑤= 𝑠

𝑠 = 0.4

𝜑 𝑥

Page 40: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 𝑎Σ

𝑥

Σ

𝑎 𝑧 =1

1 + 𝑒−𝑧

𝑧(𝑥) = 𝑤𝑥 + 𝑏

𝑎 𝑧 = 0.5 → 𝑒−𝑧 = 1 → 𝑧 = 0 → 𝑥 = −𝑏

𝑤= 𝑠

𝑠 = 0.4

𝜑 𝑥

Page 41: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 𝑎Σ

𝑥

Σ

𝑠 = 0.6

𝑎

𝑤𝑏

𝜑 𝑥

Page 42: Fundamentos del aprendizaje automático

𝑠 = 0.6

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.6

𝑥

Σ

𝜑 𝑥

Page 43: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.6

𝑥

Σ

𝑤1 𝑤2 𝑤1 = 0.6

𝑤2 = 1.2

𝜑 𝑥

Page 44: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.6

𝑥

Σ

𝑤1 𝑤2

𝑤1 = 0.8

𝑤2 = −0.8

0.8

𝜑 𝑥

Page 45: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.6

𝑥

Σ

−1.2

0.7 0.9

0.3

𝜑 𝑥

Page 46: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.61.4

0.6 0.80.3

0.8 1.0−0.7

0.0 0.20.7

0.2 0.41.1

Σ

𝑥

𝜑 𝑥

Page 47: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

Page 48: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

𝑎Σ

𝑎Σ

𝑥

Σ

𝑤

𝑏

𝑎

𝑎 𝑧 = max 0, 𝑧

𝑧(𝑥) = 𝑤𝑥 + 𝑏

𝑧 𝑥 = 0 → 𝑥 = −𝑏

𝑤= 𝑠

𝑠 = 0.4

𝜑 𝑥

Page 49: Fundamentos del aprendizaje automático

𝑠 = 0.4

Aproximación universal de funcionesEjemplo en una dimensión

𝑎 𝑧 = max 0, 𝑧

𝑧(𝑥) = 𝑤𝑥 + 𝑏

𝑧 𝑥 = 0 → 𝑥 = −𝑏

𝑤= 𝑠

0.4 𝑎Σ

𝑥

Σ

1

𝜑 𝑥

Page 50: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 𝑎Σ

𝑥

Σ

𝑎

𝑤𝑏

𝑠 = 0.6

𝜑 𝑥

Page 51: Fundamentos del aprendizaje automático

𝑠 = 0.6

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.6

𝑥

Σ

1

𝜑 𝑥

Page 52: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.6

𝑥

Σ

𝑤1 𝑤2

𝜑 𝑥

Page 53: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.6

𝑥

Σ

𝑤1 𝑤2

𝜑 𝑥

Page 54: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

10

−3

−4

−3 −3

−2

23

3

1

10

0

6

3 −3

−5

−3

0

3

4

Page 55: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

0.4 0.5 0.6 0.7 0.8 0.90.0 0.1

10

0.2 0.3

−3

Σ

𝑥

−4 −3 −3 −2 2 3 3 1

𝜑 𝑥

Page 56: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

Una red neuronal puede aproximar cualquier función

Aunque no siempre lo hace de forma eficienteA partir de cierto punto aumentar el nº de nodos no disminuye el error

Page 57: Fundamentos del aprendizaje automático

Aproximación universal de funcionesEjemplo en una dimensión

𝑛𝑡𝑟𝑎𝑖𝑛 = 1000; 𝑛𝑜𝑑𝑜𝑠 = 500

La estructura multicapa mejora la aproximación

Page 58: Fundamentos del aprendizaje automático

Deep Learning

• Conceptos generales– Neurona y red neuronal– Aproximación universal de funciones– Influencia de la arquitectura de la red– Cálculo del gradiente

• Backpropagation• Desvanecimiento del gradiente

– Técnicas de regularización– Optimización del gradiente

• Redes convolucionales• Redes recurrentes

Page 59: Fundamentos del aprendizaje automático

Influencia de la arquitectura de la redEjemplo en 2 dimensiones

Page 60: Fundamentos del aprendizaje automático

Influencia de la arquitectura de la redNúmero de nodos

𝑛𝑡𝑟𝑎𝑖𝑛 = 1000𝑐𝑎𝑝𝑎𝑠 = 1

Page 61: Fundamentos del aprendizaje automático

Influencia de la arquitectura de la redNúmero de capas

𝑛𝑡𝑟𝑎𝑖𝑛 = 1000𝑛𝑜𝑑𝑜𝑠 = 300

En muchas aplicaciones más de 2 capas ocultas no mejoran las prestacioneshttps://www.heatonresearch.com/2017/06/01/hidden-layers.html

Page 62: Fundamentos del aprendizaje automático

Influencia de la arquitectura de la redNúmero de ejemplos

𝑐𝑎𝑝𝑎𝑠 = 3𝑛𝑜𝑑𝑜𝑠 = 300

Page 63: Fundamentos del aprendizaje automático

Deep Learning

• Conceptos generales– Neurona y red neuronal– Aproximación universal de funciones– Influencia de la arquitectura de la red– Cálculo del gradiente

• Backpropagation• Desvanecimiento del gradiente

– Técnicas de regularización– Optimización del gradiente

• Redes convolucionales• Redes recurrentes

Page 64: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝑏1𝐿−1

𝑤1,1𝐿

𝑎1𝐿−2

𝑎1𝐿−1

𝑧1𝐿−1

𝑎2𝐿−1

𝑧2𝐿−1

𝑎1𝐿

𝑧1𝐿

𝐽(𝑥)

𝑦

Capa 𝐿

Capa 𝐿 − 1

Capa 𝐿 − 2

𝛻𝐽 =

𝜕𝐽

𝜕𝑏1𝐿

𝜕𝐽

𝜕𝑤1,1𝐿

𝜕𝐽

𝜕𝑤1,2𝐿

𝜕𝐽

𝜕𝑏1𝐿−1

¿Cálculo del gradiente?

Page 65: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

Σ

𝜓

𝑧1𝐿

𝑏1𝐿−1

𝑤1,1𝐿

𝑎1𝐿−2

𝑎1𝐿−1

𝑧1𝐿−1

𝑎2𝐿−1

𝑧2𝐿−1

𝑎1𝐿

𝑧1𝐿

𝑦

𝜓1𝐿

Page 66: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑎2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

Σ

𝜓

𝑧1𝐿

𝑏1𝐿−1

𝑤1,1𝐿 · ·

𝑎1𝐿−2

𝑎1𝐿−1

𝑧1𝐿−1

𝑎1𝐿−1

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿

𝑤1,2𝐿

𝑦

𝜓1𝐿

Page 67: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

Σ

𝜓

𝑧1𝐿

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

𝑤1,1𝐿

Σ

𝜓

·

Σ

𝜓

·

𝑎1𝐿−2

𝑎1𝐿−1

𝑧1𝐿−1

𝑎1𝐿−1

𝑧1𝐿−1

𝑦

𝜓1𝐿

𝜓1𝐿−1

𝜓2𝐿−1

Page 68: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

Σ

𝜓

𝑧1𝐿

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

𝑤1,1𝐿

Σ

𝜓

·

Σ

𝜓

·

· ·

𝑎1𝐿−2

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑦

𝜓1𝐿

𝜓1𝐿−1

𝜓2𝐿−1

Page 69: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

Σ

𝜓

𝑧1𝐿

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

𝑤1,1𝐿

Σ

𝜓

·

Σ

𝜓

·

· ·

𝑎1𝐿−2

𝑎1𝐿−2

𝑦

𝜓1𝐿

𝜓1𝐿−1

𝜓2𝐿−1

Page 70: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

Σ

𝜓

𝑧1𝐿

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

𝑤1,1𝐿

Σ

𝜓

·

Σ

𝜓

·

· ·

𝑎1𝐿−2

𝑢1𝐿−1

𝑢2𝐿−1

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝑦

𝜓1𝐿

𝜓1𝐿−1

𝜓2𝐿−1

Page 71: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

Σ

𝜓

𝑧1𝐿

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

𝑤1,1𝐿

Σ

𝜓

·

Σ

𝜓

·

· ·

𝑎1𝐿−2

𝑢1𝐿−1

𝑢2𝐿−1

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝑦

𝜓1𝐿

𝜓1𝐿−1

𝜓2𝐿−1

Page 72: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

ℒ′

1

𝜓𝜕𝐽

𝜕ℎ

𝑑𝐽 =𝜕𝐽

𝜕ℎ𝑑ℎ +

𝜕𝐽

𝜕𝑦𝑑𝑦 =

𝜕𝐽

𝜕ℎ𝑑ℎ

𝐽 = ℒ ℎ, 𝑦

𝑎2𝐿−1

𝑤1,2𝐿

𝑏1𝐿 Σ

𝑧1𝐿

𝑎1𝐿−1

𝑤1,1𝐿 · ·

𝑢1𝐿−1

𝑢2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

𝜓

𝑎2𝐿−1

𝑏1𝐿 Σ

𝑧1𝐿

𝑎1𝐿−1

· ·

𝑢1𝐿−1

𝑢2𝐿−1

𝑤1,2𝐿

𝑤1,1𝐿

𝑦

𝜓1𝐿

𝜓1𝐿

𝜕𝐽

𝜕ℎ= ℒ′ · 1

Page 73: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

1

𝜓′𝜕𝐽

𝜕ℎ

𝑎2𝐿−1

𝑤1,2𝐿

𝑏1𝐿 Σ

𝜕𝐽

𝜕𝑧1𝐿

𝑎1𝐿−1

𝑤1,1𝐿 · ·

𝑢1𝐿−1

𝑢2𝐿−1

ℎ = 𝜓1𝐿

𝑧1𝐿

𝜕𝐽

𝜕𝑧1𝐿=𝜕𝐽

𝜕ℎ

𝜕ℎ

𝜕𝑧1𝐿=𝜕𝐽

𝜕ℎ𝜓1′ 𝐿

ℒ′

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

𝜓

𝑎2𝐿−1

𝑏1𝐿 Σ

𝑧1𝐿

𝑎1𝐿−1

· ·

𝑢1𝐿−1

𝑢2𝐿−1

𝑤1,2𝐿

𝑤1,1𝐿

𝑦

𝜓1𝐿

𝜓′1𝐿

Page 74: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

1

𝜓′𝜕𝐽

𝜕ℎ

𝑎2𝐿−1

𝑤1,2𝐿

𝜕𝐽

𝜕𝑧1𝐿

𝑎1𝐿−1

𝑤1,1𝐿 · ·

𝑧1𝐿= 𝑢1

𝐿−1+ 𝑢2

𝐿−1+ 𝑏1

𝐿

𝑑𝐽 =𝜕𝐽

𝜕𝑧1𝐿𝑑𝑧1

𝐿

ℒ′

𝜕𝐽

𝜕𝑧1𝐿𝜕𝐽

𝜕𝑏1𝐿=

𝜕𝐽

𝜕𝑧1𝐿

𝑑𝐽 =𝜕𝐽

𝜕𝑧1𝐿

𝑑𝑢1𝐿−1

+ 𝑑𝑢2𝐿−1

+ 𝑑𝑏1𝐿

𝜕𝐽

𝜕𝑧1𝐿

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

𝜓

𝑎2𝐿−1

𝑏1𝐿 Σ

𝑧1𝐿

𝑎1𝐿−1

· ·

𝑢1𝐿−1

𝑢2𝐿−1

𝑤1,2𝐿

𝑤1,1𝐿

𝑑𝐽 =𝜕𝐽

𝜕𝑧1𝐿𝑑𝑢1

𝐿−1+

𝜕𝐽

𝜕𝑧1𝐿𝑑𝑢2

𝐿−1+

𝜕𝐽

𝜕𝑧1𝐿𝑑𝑏1

𝐿=

𝜕𝐽

𝜕𝑢1𝐿−1

𝑑𝑢1𝐿−1

+𝜕𝐽

𝜕𝑢2𝐿−1

𝑑𝑢2𝐿−1

+𝜕𝐽

𝜕𝑏1𝐿𝑑𝑏1

𝐿

𝑑𝐽1 𝑑𝐽2 𝑑𝐽3

𝑦

𝜓1𝐿

𝜓′1𝐿

Page 75: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

1

𝜓′𝜕𝐽

𝜕ℎ

𝑎2𝐿−1

𝑤1,2𝐿

𝜕𝐽

𝜕𝑧1𝐿

𝜕𝐽

𝜕𝑤1,1𝐿= 𝑎1

𝐿−1 𝜕𝐽

𝜕𝑧1𝐿 · ·

ℒ′

𝜕𝐽

𝜕𝑧1𝐿

𝜕𝐽

𝜕𝑧1𝐿

𝜕𝐽

𝜕𝑏1𝐿=

𝜕𝐽

𝜕𝑧1𝐿

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

𝜓

𝑎2𝐿−1

𝑏1𝐿 Σ

𝑧1𝐿

𝑎1𝐿−1

· ·

𝑢1𝐿−1

𝑢2𝐿−1

𝑤1,2𝐿

𝑤1,1𝐿

𝜕𝐽

𝜕𝑎1𝐿−1

= 𝑤1,1𝐿 𝜕𝐽

𝜕𝑧1𝐿

𝑦

𝜓1𝐿

𝜓′1𝐿

Page 76: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑢1𝐿−1

= 𝑤1,1𝐿· 𝑎1

𝐿−1

𝑑𝐽 =𝜕𝐽

𝜕𝑢1𝐿−1

𝑑𝑢1𝐿−1

+𝜕𝐽

𝜕𝑢2𝐿−1

𝑑𝑢2𝐿−1

+𝜕𝐽

𝜕𝑏1𝐿𝑑𝑏1

𝐿

𝑑𝐽 =𝜕𝐽

𝜕𝑢1𝐿−1

𝑤1,1𝐿· 𝑑𝑎1

𝐿−1+ 𝑎1

𝐿−1· 𝑑𝑤1,1

𝐿+

𝜕𝐽

𝜕𝑢2𝐿−1

𝑑𝑢2𝐿−1

+𝜕𝐽

𝜕𝑏1𝐿𝑑𝑏1

𝐿

𝑑𝐽 =𝜕𝐽

𝜕𝑧1𝐿𝑤1,1

𝐿· 𝑑𝑎1

𝐿−1+

𝜕𝐽

𝜕𝑧1𝐿𝑎1𝐿−1

· 𝑑𝑤1,1𝐿+

𝜕𝐽

𝜕𝑢2𝐿−1

𝑑𝑢2𝐿−1

+𝜕𝐽

𝜕𝑏1𝐿𝑑𝑏1

𝐿

𝑑𝐽 =𝜕𝐽

𝜕𝑎1𝐿−1

𝑑𝑎1𝐿−1

+𝜕𝐽

𝜕𝑤1,1𝐿𝑑𝑤1,1

𝐿+

𝜕𝐽

𝜕𝑢2𝐿−1

𝑑𝑢2𝐿−1

+𝜕𝐽

𝜕𝑏1𝐿𝑑𝑏1

𝐿

𝜕𝐽

𝜕𝑎1𝐿−1

=𝜕𝐽

𝜕𝑧1𝐿𝑤1,1

𝐿;

𝜕𝐽

𝜕𝑤1,1𝐿=

𝜕𝐽

𝜕𝑧1𝐿𝑎1𝐿−1

Page 77: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

1

𝜓′𝜕𝐽

𝜕ℎ

𝜕𝐽

𝜕𝑎2𝐿−1

= 𝑤1,2𝐿 𝜕𝐽

𝜕𝑧1𝐿

𝜕𝐽

𝜕𝑧1𝐿

𝜕𝐽

𝜕𝑤1,1𝐿= 𝑎1

𝐿−1 𝜕𝐽

𝜕𝑧1𝐿 · ·

ℒ′

𝜕𝐽

𝜕𝑧1𝐿

𝜕𝐽

𝜕𝑧1𝐿

𝜕𝐽

𝜕𝑏1𝐿=

𝜕𝐽

𝜕𝑧1𝐿

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

𝜓

𝑎2𝐿−1

𝑏1𝐿 Σ

𝑧1𝐿

𝑎1𝐿−1

· ·

𝑢1𝐿−1

𝑢2𝐿−1

𝑤1,2𝐿

𝑤1,1𝐿

𝜕𝐽

𝜕𝑤1,2𝐿= 𝑎2

𝐿−1 𝜕𝐽

𝜕𝑧1𝐿

𝜕𝐽

𝜕𝑎1𝐿−1

= 𝑤1,1𝐿 𝜕𝐽

𝜕𝑧1𝐿

𝑦

𝜓1𝐿

𝜓′1𝐿

Page 78: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑤1,2𝐿

𝑏1𝐿

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

𝑤1,1𝐿

𝑎1𝐿

𝑧1𝐿

𝑎2𝐿−1

𝑎1𝐿−1

𝜕𝐽

𝜕ℎ

ℒ’

1

𝜓′1𝐿

𝜕𝐽

𝜕𝑎1𝐿−1

𝜕𝐽

𝜕𝑏1𝐿

𝜕𝐽

𝜕𝑤1,1𝐿

𝜕𝐽

𝜕𝑤1,2𝐿

𝜕𝐽

𝜕𝑎2𝐿−1

𝜕𝐽

𝜕𝑏1𝐿= 𝜓1

′ 𝐿· ℒ′ · 1

𝜕𝐽

𝜕𝑤1,1𝐿= 𝑎1

𝐿−1· 𝜓1

′ 𝐿· ℒ′ · 1

𝜕𝐽

𝜕𝑎1𝐿−1

= 𝑤1,1𝐿· 𝜓1

′ 𝐿· ℒ′ · 1

𝜕𝐽

𝜕𝑤1,2𝐿= 𝑎2

𝐿−1𝜓1′ 𝐿

ℒ′

𝜕𝐽

𝜕𝑎2𝐿−1

= 𝑤1,2𝐿𝜓1′ 𝐿

ℒ′

𝑦

Page 79: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑤1,2𝐿

𝑏1𝐿

𝑏2𝐿−1

ℎ 𝑥 = 𝑎1𝐿

𝐽(𝑥)

Σ

𝜓

𝑧1𝐿

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

𝑤1,1𝐿

Σ

𝜓

·

Σ

𝜓

·

· ·

𝑎1𝐿−2

𝑢1𝐿−1

𝑢2𝐿−1

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝑦

𝜓1𝐿

𝜓1𝐿−1

𝜓2𝐿−1

Page 80: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝜕𝐽

𝜕𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝑧1𝐿−1

𝜕𝐽

𝜕𝑎1𝐿−1

𝑏1𝐿−1 Σ

𝜓

Σ

𝜓

· ·

𝑎1𝐿−2

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

Σ

𝜓

Σ

𝜓

· ·

𝑎1𝐿−2

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝜓1𝐿−1

𝜓2𝐿−1 𝜓1

𝐿−1𝜓2

𝐿−1

Page 81: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝜕𝐽

𝜕𝑎2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝜕𝐽

𝜕𝑎1𝐿−1

𝑏1𝐿−1 Σ

𝜓′

Σ

𝜓′

· ·

𝑎1𝐿−2

𝑢1𝐿−2

𝑢2𝐿−2

𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑧1𝐿−1

= 𝜓1′ 𝐿−1 𝜕𝐽

𝜕𝑎1𝐿−1

𝜕𝐽

𝜕𝑧2𝐿−1

= 𝜓1′ 𝐿−1 𝜕𝐽

𝜕𝑎2𝐿−1

𝑣1𝐿−2

𝑣2𝐿−2

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

Σ

𝜓

Σ

𝜓

· ·

𝑎1𝐿−2

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝜓1𝐿−1

𝜓2𝐿−1

𝜓1′ 𝐿−1

𝜓′2𝐿−1

Page 82: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝜕𝐽

𝜕𝑎2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝜕𝐽

𝜕𝑎1𝐿−1

𝜕𝐽

𝜕𝑏1𝐿−1

=𝜕𝐽

𝜕𝑧1𝐿−1

𝜓′ 𝜓′

· ·

𝑎1𝐿−2

𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑏2𝐿−1

=𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑧1𝐿−1

𝑣1𝐿−2

𝑣2𝐿−2

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

Σ

𝜓

Σ

𝜓

· ·

𝑎1𝐿−2

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝜓1𝐿−1

𝜓2𝐿−1

𝜓1′ 𝐿−1

𝜓′2𝐿−1

Page 83: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝜕𝐽

𝜕𝑎2𝐿−1

𝜕𝐽

𝜕𝑤1,1𝐿−1

= 𝑎1𝐿−2 𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑎1𝐿−1

𝜕𝐽

𝜕𝑏1𝐿−1

=𝜕𝐽

𝜕𝑧1𝐿−1

𝜓′ 𝜓′

· ·

𝑎1𝐿−2

𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑏2𝐿−1

=𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑤2,1𝐿−1

= 𝑎1𝐿−2 𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑣1𝐿−2

= 𝑤1,1𝐿−1 𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑣2𝐿−2

= 𝑤2,1𝐿−1 𝜕𝐽

𝜕𝑧2𝐿−1

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

Σ

𝜓

Σ

𝜓

· ·

𝑎1𝐿−2

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝜓1𝐿−1

𝜓2𝐿−1

𝜓1′ 𝐿−1

𝜓′2𝐿−1

Page 84: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝜕𝐽

𝜕𝑎2𝐿−1

𝜕𝐽

𝜕𝑤1,1𝐿−1

= 𝑎1𝐿−2 𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑎1𝐿−1

𝜕𝐽

𝜕𝑏1𝐿−1

=𝜕𝐽

𝜕𝑧1𝐿−1

𝜓′ 𝜓′

· ·

𝜕𝐽

𝜕𝑎1𝐿−2

𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑏2𝐿−1

=𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑧2𝐿−1

𝜕𝐽

𝜕𝑤2,1𝐿−1

= 𝑎1𝐿−2 𝜕𝐽

𝜕𝑧2𝐿−1

Σ

𝜕𝐽

𝜕𝑣1𝐿−2

= 𝑤1,1𝐿−1 𝜕𝐽

𝜕𝑧1𝐿−1

𝜕𝐽

𝜕𝑣2𝐿−2

= 𝑤2,1𝐿−1 𝜕𝐽

𝜕𝑧2𝐿−1

𝑑𝐽 =𝜕𝐽

𝜕𝑧1𝐿𝑑𝑢1

𝐿−1+

𝜕𝐽

𝜕𝑧1𝐿𝑑𝑢2

𝐿−1+

𝜕𝐽

𝜕𝑧1𝐿𝑑𝑏1

𝐿=

𝜕𝐽

𝜕𝑢1𝐿−1

𝑑𝑢1𝐿−1

+𝜕𝐽

𝜕𝑢2𝐿−1

𝑑𝑢2𝐿−1

+𝜕𝐽

𝜕𝑏1𝐿𝑑𝑏1

𝐿

𝑑𝐽1 𝑑𝐽2 𝑑𝐽3

𝑎2𝐿−1

𝑧2𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝑧1𝐿−1

𝑎1𝐿−1

𝑏1𝐿−1

Σ

𝜓

Σ

𝜓

· ·

𝑎1𝐿−2

𝑢1𝐿−2

𝑢2𝐿−2

𝑣1𝐿−2

𝑣2𝐿−2

𝜓1𝐿−1

𝜓2𝐿−1

𝜓1′ 𝐿−1

𝜓′2𝐿−1

Page 85: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑑𝐽1 =𝜕𝐽

𝜕𝑎1𝐿−1

𝑑𝑎1𝐿−1

+𝜕𝐽

𝜕𝑤1,1𝐿𝑑𝑤1,1

𝐿

𝑑𝐽1 =𝜕𝐽

𝜕𝑢1𝐿−1

𝑑𝑢1𝐿−1

𝑑𝐽1 =𝜕𝐽

𝜕𝑧1𝐿−1

𝑑𝑧1𝐿−1

+𝜕𝐽

𝜕𝑤1,1𝐿𝑑𝑤1,1

𝐿

𝑑𝐽1 =𝜕𝐽

𝜕𝑤1,1𝐿−1

𝑑𝑤1,1𝐿−1

+𝜕𝐽

𝜕𝑣1𝐿−2

𝑑𝑣1𝐿−2

+𝜕𝐽

𝜕𝑤1,1𝐿𝑑𝑤1,1

𝐿

𝑑𝐽1 =𝜕𝐽

𝜕𝑤1,1𝐿−1

𝑑𝑤1,1𝐿−1

+𝜕𝐽

𝜕𝑣1𝐿−2

𝑑𝑎1𝐿−2

+𝜕𝐽

𝜕𝑤1,1𝐿𝑑𝑤1,1

𝐿

Page 86: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑑𝐽1 =𝜕𝐽

𝜕𝑤1,1𝐿−1

𝑑𝑤1,1𝐿−1

+𝜕𝐽

𝜕𝑣1𝐿−2

𝑑𝑎1𝐿−2

+𝜕𝐽

𝜕𝑤1,1𝐿𝑑𝑤1,1

𝐿

𝑑𝐽2 =𝜕𝐽

𝜕𝑤1,2𝐿−1

𝑑𝑤1,2𝐿−1

+𝜕𝐽

𝜕𝑣2𝐿−2

𝑑𝑎1𝐿−2

+𝜕𝐽

𝜕𝑤1,2𝐿𝑑𝑤1,2

𝐿

𝑑𝐽 = 𝑑𝐽1 + 𝑑𝐽2 + 𝑑𝐽3 = 𝑑𝐽1 + 𝑑𝐽2 +𝜕𝐽

𝜕𝑏1𝐿𝑑𝑏1

𝐿

𝑑𝐽 =𝜕𝐽

𝜕𝑤1,1𝐿−1

𝑑𝑤1,1𝐿−1

+𝜕𝐽

𝜕𝑣1𝐿−2

𝑑𝑎1𝐿−2

+𝜕𝐽

𝜕𝑤1,1𝐿𝑑𝑤1,1

𝐿+

𝜕𝐽

𝜕𝑤1,2𝐿−1

𝑑𝑤1,2𝐿−1

+𝜕𝐽

𝜕𝑣2𝐿−2

𝑑𝑎1𝐿−2

+𝜕𝐽

𝜕𝑤1,2𝐿𝑑𝑤1,2

𝐿+

𝜕𝐽

𝜕𝑏1𝐿𝑑𝑏1

𝐿

𝜕𝐽

𝜕𝑎1𝐿−2

=𝜕𝐽

𝜕𝑣1𝐿−2

+𝜕𝐽

𝜕𝑣2𝐿−2

Page 87: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝜓1′ 𝐿−1

Σ𝜕𝐽

𝜕𝑤1,1𝐿−1

𝜕𝐽

𝜕𝑎1𝐿−2

𝜕𝐽

𝜕𝑤2,1𝐿−1

𝜕𝐽

𝜕𝑏1𝐿−1

𝜕𝐽

𝜕𝑏2𝐿−1

𝜕𝐽

𝜕𝑎1𝐿−1

𝜕𝐽

𝜕𝑎2𝐿−1

𝜓2′ 𝐿−1

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝑏1𝐿−1

𝑎1𝐿−2

𝑎1𝐿−1

𝑧1𝐿−1

𝑎2𝐿−1

𝑧2𝐿−1

𝑎2𝐿−1

𝑎1𝐿−1

Page 88: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation

𝑤1,2𝐿

𝑏1𝐿

ℎ 𝑥

𝑤1,1𝐿

𝑤1,1𝐿−1

𝑤2,1𝐿−1

𝑏2𝐿−1

𝑏1𝐿−1

𝑎1𝐿−2

𝑎1𝐿−1

𝑧1𝐿−1

𝑎2𝐿−1

𝑧2𝐿−1

𝑎1𝐿

𝑧1𝐿

Σ

𝜕𝐽

𝜕𝑎1𝐿−2

𝜓1′ 𝐿−1

𝜕𝐽

𝜕𝑤1,1𝐿−1

𝜕𝐽

𝜕𝑏1𝐿−1

𝜕𝐽

𝜕𝑤2,1𝐿−1

𝜕𝐽

𝜕𝑏2𝐿−1𝜓2

′ 𝐿−1

𝜕𝐽

𝜕ℎ

𝜓′1𝐿

𝜕𝐽

𝜕𝑏1𝐿

𝜕𝐽

𝜕𝑤1,1𝐿

𝜕𝐽

𝜕𝑤1,2𝐿

Page 89: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (resumen)

Feedforward Backpropagation

Coste: 𝐽 Unidad: 1

Función de pérdida: ℒ Derivada f. de pérdida: ℒ′

Neurona Neurona inversa

Suma de entradas Punto de bifurcación

Función de activación: 𝜓 Derivada f. de activación: 𝜓′

Entrada ponderada: 𝑤 · 𝑎 Salida ponderada doble:

𝑤 · 𝜓′

𝑎 · 𝜓′ →𝜕𝐽

𝜕𝑤

Entrada constante: 𝑏 Salida constante: 𝜓′ →𝜕𝐽

𝜕𝑏

Punto de bifurcación Suma de salidas (sentido inverso)

Page 90: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝑤1,22

𝑏12

𝑤1,12

𝑤11

𝑤21

𝑏21

𝑏11

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

𝑥

𝑎12= 𝑧1

2

𝑎11= 𝜎 𝑧1

2 𝑎21= 𝜎 𝑧2

2

𝐽 = ℎ − 𝑦 2ℒ

𝐽(𝑥)

𝑦

Coste: 𝐽 →Unidad: 1

1

Page 91: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝐽 = ℎ − 𝑦 2ℒ

𝐽(𝑥)

ℒ’𝑦

𝜕𝐽

𝜕ℎ

F. de pérdida: ℒ →Derivada f. de pérdida: ℒ′

𝑤1,22

𝑏12

𝑤1,12

𝑤11

𝑤21

𝑏21

𝑏11

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

𝑥

𝑎12= 𝑧1

2

𝑎11= 𝜎 𝑧1

2 𝑎21= 𝜎 𝑧2

2

1

Page 92: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝜓1′ 1 𝜓2

′ 1

𝜓′12

𝐽 = ℎ − 𝑦 2ℒ

𝐽(𝑥)

ℒ’𝑦

𝜕𝐽

𝜕ℎ

Neurona →Neurona inversa

𝑤1,22

𝑏12

𝑤1,12

𝑤11

𝑤21

𝑏21

𝑏11

𝑥

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

𝑎12= 𝑧1

2

𝑎11= 𝜎 𝑧1

2 𝑎21= 𝜎 𝑧2

2

1

Page 93: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝜓1′ 1 𝜓2

′ 1

𝜓′12

𝜕𝐽

𝜕𝑤1,12

𝜕𝐽

𝜕𝑤1,22

ℒ’

𝜕𝐽

𝜕ℎ

𝜕𝐽

𝜕𝑤11

𝜕𝐽

𝜕𝑤21

Entrada ponderada →Salida ponderada doble

𝐽 = ℎ − 𝑦 2ℒ

𝐽(𝑥)

𝑦

𝑤1,22

𝑏12

𝑤1,12

𝑤11

𝑤21

𝑏21

𝑏11

𝑥

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

𝑎12= 𝑧1

2

𝑎11= 𝜎 𝑧1

2 𝑎21= 𝜎 𝑧2

2

1

Page 94: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝑤1,22

𝑏12

𝑤1,12

𝑤11

𝑤21

𝑏21

𝑏11

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

𝜓1′ 1

𝜕𝐽

𝜕𝑏11

𝜕𝐽

𝜕𝑏21𝜓2

′ 1

𝜓′12

𝜕𝐽

𝜕𝑏12

𝜕𝐽

𝜕𝑤1,12

𝜕𝐽

𝜕𝑤1,22

𝑎12= 𝑧1

2

𝑎11= 𝜎 𝑧1

2 𝑎21= 𝜎 𝑧2

2

𝐽 = ℎ − 𝑦 2ℒ

𝐽(𝑥)

ℒ’𝑦

𝜕𝐽

𝜕ℎ

𝜕𝐽

𝜕𝑤11

𝜕𝐽

𝜕𝑤21

Entrada constante →Salida constante

𝑥

1

Page 95: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝑤1,22

𝑏12

𝑤1,12

𝑤11

𝑤21

𝑏21

𝑏11

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

𝜓1′ 1

𝜕𝐽

𝜕𝑏11

𝜕𝐽

𝜕𝑏21𝜓2

′ 1

𝜓′12

𝜕𝐽

𝜕𝑏12

𝜕𝐽

𝜕𝑤1,12

𝜕𝐽

𝜕𝑤1,22

𝑥

𝑎12= 𝑧1

2

𝑎11= 𝜎 𝑧1

2 𝑎21= 𝜎 𝑧2

2

𝐽 = ℎ − 𝑦 2ℒ

𝐽(𝑥)

ℒ’𝑦

𝜕𝐽

𝜕ℎ

Σ𝜕𝐽

𝜕𝑤11

𝜕𝐽

𝜕𝑤21

𝜕𝐽

𝜕𝑥= 0

Punto de bifurcación →Suma de salidas

1

Page 96: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝑤1,22

𝑏12

𝑤1,12

𝑤11

𝑤21

𝑏21

𝑏11

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

𝜎′

𝜕𝐽

𝜕𝑤11

𝑥

𝜕𝐽

𝜕𝑏11

𝜕𝐽

𝜕𝑤21

𝜕𝐽

𝜕𝑏21

𝜎′

1𝜕𝐽

𝜕𝑏12

𝜕𝐽

𝜕𝑤1,12

𝜕𝐽

𝜕𝑤1,22

𝑥

𝑥

𝑎12= 𝑧1

2

𝑎11= 𝜎 𝑧1

2 𝑎21= 𝜎 𝑧2

2

𝐽 = ℎ − 𝑦 2ℒ

𝐽(𝑥)

ℒ’𝑦

𝜕𝐽

𝜕ℎ

𝜓′12= 1

𝜓′21= 𝜎′𝜓′1

1= 𝜎′

1

Page 97: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

ℒ’ =𝑑

𝑑ℎℎ − 𝑦 2 = 2 ℎ − 𝑦

𝜎’ =𝑑

𝑑𝑧𝜎 𝑧 =

𝑑

𝑑𝑧

1

1 + 𝑒−𝑧=

−1

1 + 𝑒−𝑧 2−𝑒−𝑧

𝜎’ =1

1 + 𝑒−𝑧·

𝑒−𝑧

1 + 𝑒−𝑧=

1

1 + 𝑒−𝑧· 1 +

𝑒−𝑧

1 + 𝑒−𝑧− 1

𝜎’ =1

1 + 𝑒−𝑧· 1 +

𝑒−𝑧 − 1 − 𝑒−𝑧

1 + 𝑒−𝑧=

1

1 + 𝑒−𝑧· 1 +

−1

1 + 𝑒−𝑧

𝜎’ = 𝜎 𝑧 · 1 − 𝜎 𝑧

Page 98: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

Page 99: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

𝑥 𝑥

ℒ ℒ’

1

𝑤1,22= 0.7

𝑏12= 0.2

𝑤1,12= 0.4

𝑤11= 0.1 𝑤2

1= −0.1

𝑏21= 0.5𝑏1

1= −0.3

0.5

𝑦 = 0.84

ℎ = 0.80

𝑧11= −0.25

𝑎11= 0.44

𝑧21= 0.45

𝑎21= 0.80

𝑧12= 𝑎1

2= 0.80

𝐽 = 0.0016

𝜎′ 𝜎′

1

𝜕𝐽

𝜕𝑤11= 0.125

𝜕𝐽

𝜕𝑏11= 0.250

𝜕𝐽

𝜕𝑤21= 0.125

𝜕𝐽

𝜕𝑏21= 0.250

𝜕𝐽

𝜕𝑏12= −0.081

𝜕𝐽

𝜕𝑤1,12= −0.035

𝜕𝐽

𝜕ℎ= −0.081

−0.032 𝜕𝐽

𝜕𝑤1,22= −0.049

−0.057

Page 100: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

𝛻𝐽 =𝜕𝐽

𝜕𝑤=

𝜕𝐽

𝜕𝑤11

𝜕𝐽

𝜕𝑏11

𝜕𝐽

𝜕𝑤21

𝜕𝐽

𝜕𝑏21

𝜕𝐽

𝜕𝑤1,12

𝜕𝐽

𝜕𝑤1,22

𝜕𝐽

𝜕𝑏12

𝛻𝐽 =𝜕𝐽

𝜕𝑤= 0.125 0.245 0.125 0.250 −0.035 −0.049 −0.081

𝑤 = 𝑤11

𝑏11

𝑤21

𝑏21

𝑤1,12

𝑤1,22

𝑏12

𝑤𝑡 = 0.1 −0.3 −0.1 0.5 0.4 0.7 0.2

𝑤𝑡+1 ← 𝑤𝑡 − 𝛼 𝛻𝐽

𝑤𝑡+1 = 0.088 −0.325 −0.112 0.475 0.404 0.705 0.208

𝛼 = 0.1

Page 101: Fundamentos del aprendizaje automático

Cálculo del gradienteBackpropagation (ejemplo)

Page 102: Fundamentos del aprendizaje automático

Cálculo del gradienteDesvanecimiento del gradiente

𝜓 1

𝑧 1

𝑥

𝜓 2

𝑧 2

𝜓 𝐿−1

𝑧 𝐿−1

𝜓 𝐿

𝑧 𝐿

𝑤 1

𝑤 2

𝑤 𝐿−1

𝑤 𝐿

𝐽

𝑏 𝐿

𝑏 𝐿−1

𝑏 2

𝑏 1 𝜓′ 1

𝜓′ 2

𝜓′ 𝐿−1

𝜓′ 𝐿

ℒ′

𝜕𝐽

𝜕ℎ=

𝜕𝐽

𝜕𝑎 𝐿

1

𝜕𝐽

𝜕𝑎 𝐿−1

𝑤 𝐿−1

𝑤 𝐿

𝑤 2

𝜕𝐽

𝜕𝑤 1

𝜕𝐽

𝜕𝑏 1

𝜕𝐽

𝜕𝑤 2

𝜕𝐽

𝜕𝑏 2

𝜕𝐽

𝜕𝑤 𝐿−1

𝜕𝐽

𝜕𝑏 𝐿−1

𝜕𝐽

𝜕𝑤 𝐿

𝜕𝐽

𝜕𝑏 𝐿

𝜕𝐽

𝜕𝑎 1

𝜕𝐽

𝜕𝑎 2

Page 103: Fundamentos del aprendizaje automático

∀𝑙, 𝜓′ 𝑙 < 1 → lim𝐿→∞

𝑙=1

𝐿

𝜓′ 𝑙 = 0

∀𝑙, 𝜓′ 𝑙 > 1 → lim𝐿→∞

𝑙=1

𝐿

𝜓′ 𝑙 = ∞

Cálculo del gradienteDesvanecimiento del gradiente

𝜓′ 1

𝜓′ 2

𝜓′ 𝐿−1

𝜓′ 𝐿

ℒ′

𝜕𝐽

𝜕ℎ=

𝜕𝐽

𝜕𝑎 𝐿

1

𝜕𝐽

𝜕𝑎 𝐿−1

𝑤 𝐿−1

𝑤 𝐿

𝑤 2

𝜕𝐽

𝜕𝑤 1

𝜕𝐽

𝜕𝑏 1

𝜕𝐽

𝜕𝑤 2

𝜕𝐽

𝜕𝑏 2

𝜕𝐽

𝜕𝑤 𝐿−1

𝜕𝐽

𝜕𝑏 𝐿−1

𝜕𝐽

𝜕𝑤 𝐿

𝜕𝐽

𝜕𝑏 𝐿

𝜕𝐽

𝜕𝑎 1

𝜕𝐽

𝜕𝑎 2

𝜕𝐽

𝜕𝑤 1= 𝑥 𝜓′ 1

𝜕𝐽

𝜕𝑎 1

𝜕𝐽

𝜕𝑤 1= 𝑥 𝜓′ 1 · 𝑤 2 𝜓′ 2

𝜕𝐽

𝜕𝑎 2

𝜕𝐽

𝜕𝑤 1= 𝑥 𝜓′ 1 · 𝑤 2 𝜓′ 2 ⋯𝑤 𝐿 𝜓′ 𝐿

𝜕𝐽

𝜕ℎ

𝜕𝐽

𝜕𝑤 1= 𝑥 𝜓′ 1 · 𝑤 2 𝜓′ 2 ⋯𝑤 𝐿 𝜓′ 𝐿 ℒ′

𝜕𝐽

𝜕𝑤 1= 𝑥ℒ′ ෑ

𝑙=2

𝐿

𝑤 𝑙 ෑ

𝑙=1

𝐿

𝜓′ 𝑙

Desvanecimiento

Explosión

Page 104: Fundamentos del aprendizaje automático

Cálculo del gradienteDesvanecimiento del gradiente

Page 105: Fundamentos del aprendizaje automático

Deep Learning

• Conceptos generales– Neurona y red neuronal– Aproximación universal de funciones– Influencia de la arquitectura de la red– Cálculo del gradiente

• Backpropagation• Desvanecimiento del gradiente

– Técnicas de regularización– Optimización del gradiente

• Redes convolucionales• Redes recurrentes

Page 106: Fundamentos del aprendizaje automático

RegularizaciónEjemplo

Sin regularización Con regularización

Page 107: Fundamentos del aprendizaje automático

RegularizaciónTécnicas

• Tikhonov

• Lasso

• Data augmentation

• Early stopping

• Drop-out

Page 108: Fundamentos del aprendizaje automático

RegularizaciónTikhonov

𝐽 ℎ𝑤(𝑥), 𝑦 = 𝐽0 ℎ𝑤(𝑥), 𝑦 + 𝜆 𝑤 22

Page 109: Fundamentos del aprendizaje automático

RegularizaciónLasso

𝐽 ℎ𝑤(𝑥), 𝑦 = 𝐽0 ℎ𝑤(𝑥), 𝑦 + 𝜆 𝑤 1

Page 110: Fundamentos del aprendizaje automático

RegularizaciónData augmentation

Page 111: Fundamentos del aprendizaje automático

RegularizaciónEarly stopping

Page 112: Fundamentos del aprendizaje automático

RegularizaciónDropout

𝑥1 𝑥2 𝑥3 𝑥1 𝑥2 𝑥3

En cada iteración cada nodo es “abandonado” con

probabilidad 𝑝

Page 113: Fundamentos del aprendizaje automático

RegularizaciónDropout

Page 114: Fundamentos del aprendizaje automático

Deep Learning

• Conceptos generales– Neurona y red neuronal– Aproximación universal de funciones– Influencia de la arquitectura de la red– Cálculo del gradiente

• Backpropagation• Desvanecimiento del gradiente

– Técnicas de regularización– Optimización del gradiente

• Redes convolucionales• Redes recurrentes

Page 115: Fundamentos del aprendizaje automático

Optimización del gradienteTécnicas

• Gradient Descent

– Stochastic Gradient Descent

– Batch Gradient Descent

• Gradient Descent with Decay Rate

• Gradient Descent with Momentum

• RMSProp

• Adam

Page 116: Fundamentos del aprendizaje automático

Optimización del gradiente Ejemplo

ℎ𝑤 𝑥 = 𝑤0 + 𝑤1𝑥 = 𝑤1𝑥 + 𝑏

𝑎 𝑧

𝑥

𝑧 𝑥

ℎ 𝑥

𝑏 𝑤1

𝑎 𝑧 = 𝑧

𝑧 𝑥 = 𝑤1𝑥 + 𝑏

Page 117: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent

Datos normalizados

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 · 𝛻𝐽𝑤𝑡

𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 · 𝛻𝐽𝑏𝑡

Page 118: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent

Datos normalizados

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 · 𝛻𝐽𝑤𝑡

𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 · 𝛻𝐽𝑏𝑡

Page 119: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 · 𝛻𝐽𝑤𝑡

𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 · 𝛻𝐽𝑏𝑡

Page 120: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent with Decay Rate

𝛼 =1

1 − 𝛾 · 𝑛𝑒𝑝𝑜𝑐𝑎𝛼0

𝛼: learning rate𝛾: decay rate

Page 121: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent with Decay Rate

𝛼 =1

1 − 𝛾 · 𝑛𝑒𝑝𝑜𝑐𝑎𝛼0

𝛼: learning rate𝛾: decay rate

Page 122: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent with Decay Rate

𝛼 =1

1 − 𝛾 · 𝑛𝑒𝑝𝑜𝑐𝑎𝛼0

𝛼0 = 1

Page 123: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent with Momentum

𝛻𝐽𝑤𝑡 𝛻𝐽𝑏

𝑡

𝑚 𝑡 =1

𝑀

𝑘=0

𝑀

𝑥 𝑡−𝑘Media móvil simple

Media: Momento de orden 1 𝜇𝜉 = 𝐸 𝜉

Page 124: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent with Momentum

𝛻𝐽𝑤𝑡 𝛻𝐽𝑏

𝑡

𝑚 𝑡 = 𝛽1𝑚𝑡−1 − 1 − 𝛽1 𝑥 𝑡Media móvil

exponencial

Page 125: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent with Momentum

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 · 𝑚𝐽𝑤

𝑡; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 · 𝑚𝐽𝑏

𝑡

𝑚𝐽𝑤

𝑡= 𝛽1𝑚𝐽𝑤

𝑡−1+ 1 − 𝛽1 𝛻𝐽𝐽𝑤

𝑡; 𝑚𝐽𝑏

𝑡= 𝛽1𝑚𝐽𝑏

𝑡−1+ 1 − 𝛽1 𝛻𝐽𝑤

𝑡

El cambio de los parámetros es proporcional a la media móvilexponencial (momento) del gradiente (𝑚𝑤, 𝑚𝑏).Al tener en cuenta el gradiente actual y los gradientesanteriores (con peso decreciente), La función de coste convergecon menos oscilaciones.

GD with Momentum

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 · 𝛻𝐽𝑤𝑡; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 · 𝛻𝐽𝑏

𝑡GD:

El cambio de los parámetros es proporcional al gradiente (𝛻𝐽𝑤 , 𝛻𝐽𝑏)

Page 126: Fundamentos del aprendizaje automático

Optimización del gradienteGradient Descent with Momentum

𝛼 = 0.001

Page 127: Fundamentos del aprendizaje automático

Optimización del gradienteRMSprop

Datos sin normalizar

Zoom

Cambios grandes en 𝑤 (vertical) y pequeños en 𝑏 (horizontal)

Page 128: Fundamentos del aprendizaje automático

Optimización del gradienteRMSprop

• GD: el cambio de los parámetros es constante en la direccióndel gradiente.

• RMSprop: el cambio de los parámetros es proporcional alcociente entre el gradiente y su módulo (o alguna variante).

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 ·𝛻𝐽𝑤

𝑡

𝛻𝐽𝑤𝑡

; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 ·𝛻𝐽𝑏

𝑡

𝛻𝐽𝑏𝑡

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 ·𝛻𝐽𝑤

𝑡

𝛻𝐽𝑤𝑡

2; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 ·

𝛻𝐽𝑏𝑡

𝛻𝐽𝑏𝑡

2

Page 129: Fundamentos del aprendizaje automático

Optimización del gradienteRMSprop

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 ·𝛻𝐽𝑤

𝑡

𝛻𝐽𝑤𝑡

2; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 ·

𝛻𝐽𝑏𝑡

𝛻𝐽𝑏𝑡

2

𝑣𝐽𝑤𝑡= 𝛽2𝑣𝐽𝑤

𝑡−1+ 1 − 𝛽2 𝛻𝐽𝑤

𝑡2

𝑣𝐽𝑏𝑡= 𝛽2𝑣𝐽𝑏

𝑡−1+ 1 − 𝛽2 𝛻𝐽𝑏

𝑡2

Media móvil exponencial del cuadrado del gradiente

Media del cuadrado: Momento de orden 2

𝑣𝜉 = 𝐸 𝜉2

Page 130: Fundamentos del aprendizaje automático

Optimización del gradienteRMSprop

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 ·𝛻𝐽𝑤

𝑡

𝛻𝐽𝑤𝑡

2; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 ·

𝛻𝐽𝑏𝑡

𝛻𝐽𝑏𝑡

2

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 ·𝛻𝐽𝑤

𝑡

𝑣𝐽𝑤𝑡+ 𝜀

; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 ·𝛻𝐽𝑏

𝑡

𝑣𝐽𝑏𝑡+ 𝜀

Se sustituye el cuadrado del gradiente porsu media móvil exponencial

𝜀 ≪ 1; 𝜀 ≈ 10−8Previene divisiones por 0:

Page 131: Fundamentos del aprendizaje automático

Optimización del gradienteRMSprop

Datos sin normalizar

Zoom

Cambios similares en 𝑤 (vertical) y en 𝑏 (horizontal)

Page 132: Fundamentos del aprendizaje automático

Optimización del gradienteRMSprop

Datos sin normalizar

Page 133: Fundamentos del aprendizaje automático

Optimización del gradienteRMSprop

𝛼 = 0.005; 𝑛𝑖𝑡𝑒𝑟 = 100

Page 134: Fundamentos del aprendizaje automático

Optimización del gradienteAdaptive Moment Estimation (Adam)

• Combinación del GD with Momentum y RMSprop

• El cambio de los parámetros es proporcional alcociente entre el gradiente y su módulo.– Módulo: raíz del cuadrado

• Se sustituye el gradiente por su media móvilexponencial (como en GD with momentum)– Momento de orden 1 del gradiente

• Se sustituye el cuadrado del gradiente por su mediamóvil exponencial (como en RMSprop)– Momento de orden 2 del gradiente

Page 135: Fundamentos del aprendizaje automático

Optimización del gradienteAdaptive Moment Estimation (Adam)

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 ·𝑚𝐽𝑤

𝑡

𝑣𝐽𝑤𝑡+ 𝜀

; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 ·𝑚𝐽𝑏

𝑡

𝑣𝐽𝑏𝑡+ 𝜀

𝑤 𝑡+1 ← 𝑤 𝑡 − 𝛼 ·𝛻𝐽𝑤

𝑡

𝛻𝐽𝑤𝑡

2; 𝑏 𝑡+1 ← 𝑏 𝑡 − 𝛼 ·

𝛻𝐽𝑏𝑡

𝛻𝐽𝑏𝑡

2

Page 136: Fundamentos del aprendizaje automático

Optimización del gradienteAdaptive Moment Estimation (Adam)

Datos sin normalizar

Zoom

Page 137: Fundamentos del aprendizaje automático

Optimización del gradienteAdaptive Moment Estimation (Adam)

Datos sin normalizar

Zoom

Page 138: Fundamentos del aprendizaje automático

Optimización del gradienteAdaptive Moment Estimation (Adam)

𝛼 = 0.005; 𝛽1 = 0.9

Page 139: Fundamentos del aprendizaje automático

Optimización del gradienteValor inicial de los parámetros

𝑤1,11

𝑤2,11

𝑤1,22

𝑏12

𝑏21

ℎ 𝑥 = 𝑎12

𝑏11

𝑤1,12

𝑥1

𝑎11

𝑧11

𝑎21

𝑧21

𝑎12

𝑧12

La función de coste es no-convexaOptimización con diferentes valores iniciales de los parámetros

Page 140: Fundamentos del aprendizaje automático

Optimización del gradienteHiperparámetros

• Number of epochs• Mini-batch size• Learning rate: 𝛼• Decay rate: 𝜂• Order-1 momentum coefficient: 𝛽1• Order-2 momentum coefficient: 𝛽2

• Number of nodes• Number of layers• Activation functions• Regularization method and coefficient