aprendizaje profundo para visià n artificialmdelbra/dl2017/slides/c4.pdf · agenda 1...
TRANSCRIPT
![Page 1: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/1.jpg)
APRENDIZAJE PROFUNDOPARA VISIÓN ARTIFICIAL
Mauricio Delbracio, José Lezama, Guillermo Carbajal
Instituto de Ingeniería Eléctrica
Facultad de IngenieríaUniversidad de la República
2017
![Page 2: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/2.jpg)
Agenda
1 Modelos lineales, generalización
2 Redes Neuronales Prealimentadas (feedforward)
3 Neuronas artificiales
4 Teorema aproximación universal
5 Capacidad, sobreajuste, subajuste
2 / 32
![Page 3: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/3.jpg)
Clasificadores Lineales
Un clasificador lineal tiene la forma:
f(x) = wTx+ b
• w es normal a la frontera de clasificación
• a w se lo conoce como vector de pesos (“weights” o “weight vector”)vector normal a la frontera de decisión
• a b se le llama “bias” (de-centrado, sesgo)
• Un clasificador lineal no necesita memorizar el training dataset(a diferencia del clasificador k-nn)
• Cuánto más lejos de f(x) = 0 más “seguridad” en la clasificación(f(x) una especie de “score”)
3 / 32
![Page 4: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/4.jpg)
Clasificadores Lineales
Un clasificador lineal tiene la forma:
f(x) = wTx+ b
• w es normal a la frontera de clasificación
• a w se lo conoce como vector de pesos (“weights” o “weight vector”)vector normal a la frontera de decisión
• a b se le llama “bias” (de-centrado, sesgo)
• Un clasificador lineal no necesita memorizar el training dataset(a diferencia del clasificador k-nn)
• Cuánto más lejos de f(x) = 0 más “seguridad” en la clasificación(f(x) una especie de “score”)
3 / 32
![Page 5: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/5.jpg)
Clasificadores Lineales
Un clasificador lineal tiene la forma:
f(x) = wTx+ b
• w es normal a la frontera de clasificación
• a w se lo conoce como vector de pesos (“weights” o “weight vector”)vector normal a la frontera de decisión
• a b se le llama “bias” (de-centrado, sesgo)
• Un clasificador lineal no necesita memorizar el training dataset(a diferencia del clasificador k-nn)
• Cuánto más lejos de f(x) = 0 más “seguridad” en la clasificación(f(x) una especie de “score”)
3 / 32
![Page 6: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/6.jpg)
Clasificadores Lineales
Un clasificador lineal tiene la forma:
f(x) = wTx+ b
• w es normal a la frontera de clasificación
• a w se lo conoce como vector de pesos (“weights” o “weight vector”)vector normal a la frontera de decisión
• a b se le llama “bias” (de-centrado, sesgo)
• Un clasificador lineal no necesita memorizar el training dataset(a diferencia del clasificador k-nn)
• Cuánto más lejos de f(x) = 0 más “seguridad” en la clasificación(f(x) una especie de “score”)
3 / 32
![Page 7: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/7.jpg)
Clasificadores Lineales
• Dado un dataset (xi, yi), i = 1, . . . ,n, con yi ∈ {1, . . . , c}• Supongamos que tenemos puntajes de la forma: s = Wx
• Vimos dos maneras de definir una función de ajuste (loss):
SVM (hinge)
Li =∑j 6=yi
max(0, sj − syi + 1)
Softmax (logistic regression)
Li = − log
(esyi∑j e
sj
)
• En general: datos no son linealmente separables...
4 / 32
![Page 8: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/8.jpg)
Clasificadores Lineales
• Dado un dataset (xi, yi), i = 1, . . . ,n, con yi ∈ {1, . . . , c}• Supongamos que tenemos puntajes de la forma: s = Wx
• Vimos dos maneras de definir una función de ajuste (loss):
SVM (hinge)
Li =∑j 6=yi
max(0, sj − syi + 1)
Softmax (logistic regression)
Li = − log
(esyi∑j e
sj
)
• En ambos casos, hay que minimizar L(W) (+ regularización)
L(W) =
n∑i=1
Li(W) + λR(W)
• En general: datos no son linealmente separables...
4 / 32
![Page 9: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/9.jpg)
Clasificadores Lineales
• Dado un dataset (xi, yi), i = 1, . . . ,n, con yi ∈ {1, . . . , c}• Supongamos que tenemos puntajes de la forma: s = Wx
• Vimos dos maneras de definir una función de ajuste (loss):
SVM (hinge)
Li =∑j 6=yi
max(0, sj − syi + 1)
Softmax (logistic regression)
Li = − log
(esyi∑j e
sj
)
• En ambos casos, hay que minimizar L(W) (+ regularización)
L(W) =
n∑i=1
Li(W) + λR(W)
• Descenso por gradiente:
∇WL(W) =
n∑i=1
∇WLi(xi, yi;W) + λ∇WR(W).
• En general: datos no son linealmente separables...
4 / 32
![Page 10: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/10.jpg)
Clasificadores Lineales
• Dado un dataset (xi, yi), i = 1, . . . ,n, con yi ∈ {1, . . . , c}• Supongamos que tenemos puntajes de la forma: s = Wx
• Vimos dos maneras de definir una función de ajuste (loss):
SVM (hinge)
Li =∑j 6=yi
max(0, sj − syi + 1)
Softmax (logistic regression)
Li = − log
(esyi∑j e
sj
)
• En ambos casos, hay que minimizar L(W) (+ regularización)
L(W) =
n∑i=1
Li(W) + λR(W)
• Descenso por gradiente estocástico, nmb � n:
∇WL(W) ≈nmb∑i=1
∇WLi(xi, yi;W) + λ∇WR(W).
• En general: datos no son linealmente separables...
4 / 32
![Page 11: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/11.jpg)
Clasificadores Lineales
• Dado un dataset (xi, yi), i = 1, . . . ,n, con yi ∈ {1, . . . , c}• Supongamos que tenemos puntajes de la forma: s = Wx
• Vimos dos maneras de definir una función de ajuste (loss):
SVM (hinge)
Li =∑j 6=yi
max(0, sj − syi + 1)
Softmax (logistic regression)
Li = − log
(esyi∑j e
sj
)
• En general: datos no son linealmente separables...
4 / 32
![Page 12: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/12.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
f(x) = wTx+ b
1 Usar Φ(x) genérica que lleve los datos a un espacio de muy altadimension (puede ser infinita), en este espacio es fácil de separar lospuntos del conjunto de entrenamiento (e.g., kernel RBF).
Problema: Difícil de generalizar bien a datos no conocidos.
5 / 32
![Page 13: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/13.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
f(x) = wTΦ(x) + b
1 Usar Φ(x) genérica que lleve los datos a un espacio de muy altadimension (puede ser infinita), en este espacio es fácil de separar lospuntos del conjunto de entrenamiento (e.g., kernel RBF).
Problema: Difícil de generalizar bien a datos no conocidos.
5 / 32
![Page 14: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/14.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
1 Usar Φ(x) genérica que lleve los datos a un espacio de muy altadimension (puede ser infinita), en este espacio es fácil de separar lospuntos del conjunto de entrenamiento (e.g., kernel RBF).
Problema: Difícil de generalizar bien a datos no conocidos.
5 / 32
![Page 15: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/15.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
1 Usar Φ(x) genérica que lleve los datos a un espacio de muy altadimension (puede ser infinita), en este espacio es fácil de separar lospuntos del conjunto de entrenamiento (e.g., kernel RBF).
Problema: Difícil de generalizar bien a datos no conocidos.
5 / 32
![Page 16: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/16.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
1 Usar Φ(x) genérica que lleve los datos a un espacio de muy altadimension (puede ser infinita), en este espacio es fácil de separar lospuntos del conjunto de entrenamiento (e.g., kernel RBF).Problema: Difícil de generalizar bien a datos no conocidos.
5 / 32
![Page 17: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/17.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
2 Encontrar Φ(x) (artesanal) de manera de separar los datos.
Problema: Difícil de hacer en la práctica, el diseño depende de unconocimiento muy fino del problema
5 / 32
![Page 18: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/18.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
2 Encontrar Φ(x) (artesanal) de manera de separar los datos.Problema: Difícil de hacer en la práctica, el diseño depende de unconocimiento muy fino del problema
5 / 32
![Page 19: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/19.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
3 Aprendizaje Profundo: Aprender Φ(x). Partir de un modeloparamétrico Φ(x; θ) que definen una representación y buscarminimizar el error de ajuste.
Objetivo: Definir Φ(x; θ) y luego entrenar (encontrar θ).
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
5 / 32
![Page 20: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/20.jpg)
Clasificadores no Lineales
Se requiere que los datos sean linealmente separables
• ¿Cómo encontramos Φ(x) que transforme los datos a unespacio donde sean fácilmente separables?
3 Aprendizaje Profundo: Aprender Φ(x). Partir de un modeloparamétrico Φ(x; θ) que definen una representación y buscarminimizar el error de ajuste.
Objetivo: Definir Φ(x; θ) y luego entrenar (encontrar θ).
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
5 / 32
![Page 21: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/21.jpg)
Redes Neuronales PrealimentadasFeedforward Neural Networks
• Objetivo: Aproximar y = f?(x), mapeo de x en una salida y (e.g., una categoría).
• Redes neuronales prealimentadas (feedforward, perceptrones multicapa omultilayer perceptrons (MLPs)): base fundamental del Aprendizaje Profundo.
• Una red neuronal prealimentada define un mapeo y = f(x; θ), y busca losparámetros θ que mejor aproxima f?.
• Son redes porque se componen de varias funciones por ejemplo,
f(x) := f(n)(f(n−1)
(· · · f(2)
(f(1) (x)
)· · ·))
,
donde f(1) es la primera capa (first layer), f(2) la segunda ...
• Son prealimentadas (feedforward) porque la información fluye a partir de x sin
existir conexiones de realimentación.
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
6 / 32
![Page 22: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/22.jpg)
Redes Neuronales PrealimentadasFeedforward Neural Networks
• Objetivo: Aproximar y = f?(x), mapeo de x en una salida y (e.g., una categoría).
• Redes neuronales prealimentadas (feedforward, perceptrones multicapa omultilayer perceptrons (MLPs)): base fundamental del Aprendizaje Profundo.
• Una red neuronal prealimentada define un mapeo y = f(x; θ), y busca losparámetros θ que mejor aproxima f?.
• Son redes porque se componen de varias funciones por ejemplo,
f(x) := f(n)(f(n−1)
(· · · f(2)
(f(1) (x)
)· · ·))
,
donde f(1) es la primera capa (first layer), f(2) la segunda ...
• Son prealimentadas (feedforward) porque la información fluye a partir de x sin
existir conexiones de realimentación.
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
6 / 32
![Page 23: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/23.jpg)
Redes Neuronales PrealimentadasFeedforward Neural Networks
• Objetivo: Aproximar y = f?(x), mapeo de x en una salida y (e.g., una categoría).
• Redes neuronales prealimentadas (feedforward, perceptrones multicapa omultilayer perceptrons (MLPs)): base fundamental del Aprendizaje Profundo.
• Una red neuronal prealimentada define un mapeo y = f(x; θ), y busca losparámetros θ que mejor aproxima f?.
• Son redes porque se componen de varias funciones por ejemplo,
f(x) := f(n)(f(n−1)
(· · · f(2)
(f(1) (x)
)· · ·))
,
donde f(1) es la primera capa (first layer), f(2) la segunda ...
• Son prealimentadas (feedforward) porque la información fluye a partir de x sin
existir conexiones de realimentación.
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
6 / 32
![Page 24: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/24.jpg)
Redes Neuronales PrealimentadasFeedforward Neural Networks
• Objetivo: Aproximar y = f?(x), mapeo de x en una salida y (e.g., una categoría).
• Redes neuronales prealimentadas (feedforward, perceptrones multicapa omultilayer perceptrons (MLPs)): base fundamental del Aprendizaje Profundo.
• Una red neuronal prealimentada define un mapeo y = f(x; θ), y busca losparámetros θ que mejor aproxima f?.
• Son redes porque se componen de varias funciones por ejemplo,
f(x) := f(n)(f(n−1)
(· · · f(2)
(f(1) (x)
)· · ·))
,
donde f(1) es la primera capa (first layer), f(2) la segunda ...
• Son prealimentadas (feedforward) porque la información fluye a partir de x sin
existir conexiones de realimentación.
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
6 / 32
![Page 25: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/25.jpg)
Redes Neuronales PrealimentadasFeedforward Neural Networks
• Objetivo: Aproximar y = f?(x), mapeo de x en una salida y (e.g., una categoría).
• Redes neuronales prealimentadas (feedforward, perceptrones multicapa omultilayer perceptrons (MLPs)): base fundamental del Aprendizaje Profundo.
• Una red neuronal prealimentada define un mapeo y = f(x; θ), y busca losparámetros θ que mejor aproxima f?.
• Son redes porque se componen de varias funciones por ejemplo,
f(x) := f(n)(f(n−1)
(· · · f(2)
(f(1) (x)
)· · ·))
,
donde f(1) es la primera capa (first layer), f(2) la segunda ...
• Son prealimentadas (feedforward) porque la información fluye a partir de x sin
existir conexiones de realimentación.
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
6 / 32
![Page 26: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/26.jpg)
Redes Neuronales Prealimentadas ProfundasDeep Feedforward Neural Networks
• La profundidad (depth) de la red: cantidad de capas en el modelo (deep)
• Primera, capa de entrada (input layer), última, capa de salida (output layer)
• El entrenamiento no especifica la salida de cada capa sino de punta a punta.
• Conjunto de datos de entrenamiento no es conocido para las capasintermedias, estas son llamadas capas ocultas (hidden layers)
• Cada capa es en general una función vectorial: f(j) : Rnj → Rnj+1 .Dimensión nj determina el ancho de la capa (width).
• Cada elemento de una capa [f(j)]i es llamado neurona: dado una serie deentradas calcula una salida unidimensional, que es su función de activación
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
7 / 32
![Page 27: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/27.jpg)
Redes Neuronales Prealimentadas ProfundasDeep Feedforward Neural Networks
• La profundidad (depth) de la red: cantidad de capas en el modelo (deep)
• Primera, capa de entrada (input layer), última, capa de salida (output layer)
• El entrenamiento no especifica la salida de cada capa sino de punta a punta.
• Conjunto de datos de entrenamiento no es conocido para las capasintermedias, estas son llamadas capas ocultas (hidden layers)
• Cada capa es en general una función vectorial: f(j) : Rnj → Rnj+1 .Dimensión nj determina el ancho de la capa (width).
• Cada elemento de una capa [f(j)]i es llamado neurona: dado una serie deentradas calcula una salida unidimensional, que es su función de activación
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
7 / 32
![Page 28: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/28.jpg)
Redes Neuronales Prealimentadas ProfundasDeep Feedforward Neural Networks
• La profundidad (depth) de la red: cantidad de capas en el modelo (deep)
• Primera, capa de entrada (input layer), última, capa de salida (output layer)
• El entrenamiento no especifica la salida de cada capa sino de punta a punta.
• Conjunto de datos de entrenamiento no es conocido para las capasintermedias, estas son llamadas capas ocultas (hidden layers)
• Cada capa es en general una función vectorial: f(j) : Rnj → Rnj+1 .Dimensión nj determina el ancho de la capa (width).
• Cada elemento de una capa [f(j)]i es llamado neurona: dado una serie deentradas calcula una salida unidimensional, que es su función de activación
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
7 / 32
![Page 29: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/29.jpg)
Redes Neuronales Prealimentadas ProfundasDeep Feedforward Neural Networks
• La profundidad (depth) de la red: cantidad de capas en el modelo (deep)
• Primera, capa de entrada (input layer), última, capa de salida (output layer)
• El entrenamiento no especifica la salida de cada capa sino de punta a punta.
• Conjunto de datos de entrenamiento no es conocido para las capasintermedias, estas son llamadas capas ocultas (hidden layers)
• Cada capa es en general una función vectorial: f(j) : Rnj → Rnj+1 .Dimensión nj determina el ancho de la capa (width).
• Cada elemento de una capa [f(j)]i es llamado neurona: dado una serie deentradas calcula una salida unidimensional, que es su función de activación
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
7 / 32
![Page 30: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/30.jpg)
Redes Neuronales Prealimentadas ProfundasDeep Feedforward Neural Networks
• La profundidad (depth) de la red: cantidad de capas en el modelo (deep)
• Primera, capa de entrada (input layer), última, capa de salida (output layer)
• El entrenamiento no especifica la salida de cada capa sino de punta a punta.
• Conjunto de datos de entrenamiento no es conocido para las capasintermedias, estas son llamadas capas ocultas (hidden layers)
• Cada capa es en general una función vectorial: f(j) : Rnj → Rnj+1 .Dimensión nj determina el ancho de la capa (width).
• Cada elemento de una capa [f(j)]i es llamado neurona: dado una serie deentradas calcula una salida unidimensional, que es su función de activación
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
7 / 32
![Page 31: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/31.jpg)
Redes Neuronales Prealimentadas ProfundasDeep Feedforward Neural Networks
• La profundidad (depth) de la red: cantidad de capas en el modelo (deep)
• Primera, capa de entrada (input layer), última, capa de salida (output layer)
• El entrenamiento no especifica la salida de cada capa sino de punta a punta.
• Conjunto de datos de entrenamiento no es conocido para las capasintermedias, estas son llamadas capas ocultas (hidden layers)
• Cada capa es en general una función vectorial: f(j) : Rnj → Rnj+1 .Dimensión nj determina el ancho de la capa (width).
• Cada elemento de una capa [f(j)]i es llamado neurona: dado una serie deentradas calcula una salida unidimensional, que es su función de activación
f(1)
1st -layer
Feedforward networks
f(2)
2nd -layerf(3)
3rd -layerf(n)
nth -layerci=f(x)
7 / 32
![Page 32: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/32.jpg)
Neuronas
• Cada elemento [f(j)]i: se llama neurona: Dada una entrada vectorial xcalcula una salida unidimensional h(x).
• Compuesta por: operación lineal + función de activación no lineal.
a(x) =n∑
i=1
wixi + b
h(x) = g(a(x))
8 / 32
![Page 33: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/33.jpg)
Neuronas
• Cada elemento [f(j)]i: se llama neurona: Dada una entrada vectorial xcalcula una salida unidimensional h(x).
• Compuesta por: operación lineal + función de activación no lineal.
a(x) =n∑
i=1
wixi + b
h(x) = g(a(x))
8 / 32
![Page 34: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/34.jpg)
Neuronas
• Cada elemento [f(j)]i: se llama neurona: Dada una entrada vectorial xcalcula una salida unidimensional h(x).
• Compuesta por: operación lineal + función de activación no lineal.
a(x) =n∑
i=1
wixi + b
h(x) = g(a(x))
8 / 32
![Page 35: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/35.jpg)
Neuronas artificiales
• Una neurona se compone (en general) de: una operación lineal + unafunción de activación no lineal. (linear units):
1 Pre-activación:
a(x) =n∑
i=1
wixi+b = wTx+b
2 Activación (salida):
h(x) = g(a(x)) = g
(n∑
i=1
wixi + b
) x1
xn
input
1b
w1
wn
h(x)
9 / 32
![Page 36: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/36.jpg)
Neuronas artificiales
• Una neurona se compone (en general) de: una operación lineal + unafunción de activación no lineal. (linear units):
1 Pre-activación:
a(x) =n∑
i=1
wixi+b = wTx+b
2 Activación (salida):
h(x) = g(a(x)) = g
(n∑
i=1
wixi + b
)
x1
xn
input
1b
w1
wn
h(x)
9 / 32
![Page 37: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/37.jpg)
Neuronas artificiales
• Una neurona se compone (en general) de: una operación lineal + unafunción de activación no lineal. (linear units):
1 Pre-activación:
a(x) =n∑
i=1
wixi+b = wTx+b
2 Activación (salida):
h(x) = g(a(x)) = g
(n∑
i=1
wixi + b
) x1
xn
input
1b
w1
wn
h(x)
9 / 32
![Page 38: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/38.jpg)
Neuronas artificiales
• Una neurona se compone (en general) de: una operación lineal + unafunción de activación no lineal. (linear units):
h(x) = g(a(x)) = g
(n∑
i=1
wixi + b
) x1
xn
input
1b
w1
wn
h(x)
10 / 32
![Page 39: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/39.jpg)
Funciones de Activación
11 / 32
![Page 40: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/40.jpg)
Funciones de Activación
11 / 32
![Page 41: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/41.jpg)
Funciones de Activación
11 / 32
![Page 42: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/42.jpg)
Funciones de Activación
11 / 32
![Page 43: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/43.jpg)
Funciones de Activación
11 / 32
![Page 44: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/44.jpg)
Neuronas lineales: Capacidad
• Una única neurona puede hacerclasificación binaria:
→ Frontera de decisión es lineal
x1
xn
input
1b
w1
wn
h(x)
12 / 32
![Page 45: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/45.jpg)
Red feedforward de una capa oculta
• Entrada: x
• Pre-activación:
a = W(1)Tx+ b(1)
• Activación capa oculta:
h(1)(x) = g(a(x))
• Capa de salida:
f(x) = o(w(2)Th(1) + b(2)
)
h1
hi
hd
f(x)
x1
xj
xn
W(1)
W(1)
W(1)w(2)
w(2)
w(2)
1,1
j,i
2,1
1
i
d
input layer hidden layer
output layer
1 b(1)1
1b(2)
13 / 32
![Page 46: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/46.jpg)
Red feedforward de una capa oculta
• Entrada: x
• Pre-activación:
a = W(1)Tx+ b(1)
• Activación capa oculta:
h(1)(x) = g(a(x))
• Capa de salida:
f(x) = o(w(2)Th(1) + b(2)
)
h1
hi
hd
f(x)
x1
xj
xn
W(1)
W(1)
W(1)w(2)
w(2)
w(2)
1,1
j,i
2,1
1
i
d
input layer hidden layer
output layer
1 b(1)1
1b(2)
13 / 32
![Page 47: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/47.jpg)
Red feedforward de una capa oculta
• Entrada: x
• Pre-activación:
a = W(1)Tx+ b(1)
• Activación capa oculta:
h(1)(x) = g(a(x))
• Capa de salida:
f(x) = o(w(2)Th(1) + b(2)
)
h1
hi
hd
f(x)
x1
xj
xn
W(1)
W(1)
W(1)w(2)
w(2)
w(2)
1,1
j,i
2,1
1
i
d
input layer hidden layer
output layer
1 b(1)1
1b(2)
13 / 32
![Page 48: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/48.jpg)
Red feedforward de una capa oculta
• Entrada: x
• Pre-activación:
a = W(1)Tx+ b(1)
• Activación capa oculta:
h(1)(x) = g(a(x))
• Capa de salida:
f(x) = o(w(2)Th(1) + b(2)
)
h1
hi
hd
f(x)
x1
xj
xn
W(1)
W(1)
W(1)w(2)
w(2)
w(2)
1,1
j,i
2,1
1
i
d
input layer hidden layer
output layer
1 b(1)1
1b(2)
13 / 32
![Page 49: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/49.jpg)
Red feedforward de una capa oculta
• Entrada: x
• Pre-activación:
a = W(1)Tx+ b(1)
• Activación capa oculta:
h(1)(x) = g(a(x))
• Capa de salida:
f(x) = o(w(2)Th(1) + b(2)
)
h1
hi
hd
f(x)
x1
xj
xn
W(1)
W(1)
W(1)w(2)
w(2)
w(2)
1,1
j,i
2,1
1
i
d
input layer hidden layer
output layer
1 b(1)1
1b(2)
13 / 32
![Page 50: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/50.jpg)
Ejemplo: XOR
• Supongamos que queremos aproximar la función f?(x) = xor(x1, x2)
• 4 puntos : {(0, 0), (0, 1), (1, 0), (1, 1)}, con salidas 0, 1, 1, 0 respec.
• Objetivo: encontrar f que prediga bien los cuatro puntos
• Planteamos una regresión:
J(θ) =1
4
4∑i=1
(f?(xi)− f(x; θ))2
y buscamos un modelo lineal: f(x;w,b) = wTx+ b.
• Se resuleven las ecuaciones normales y se obtiene: w = 0,b = 12 .
• J(θ) > 0: no se logra aproximar de maneraperfecta la salida.
• Era esperable porque los datos no sonlinealmente separables
14 / 32
![Page 51: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/51.jpg)
Ejemplo: XOR
• Supongamos que queremos aproximar la función f?(x) = xor(x1, x2)
• 4 puntos : {(0, 0), (0, 1), (1, 0), (1, 1)}, con salidas 0, 1, 1, 0 respec.
• Objetivo: encontrar f que prediga bien los cuatro puntos
• Planteamos una regresión:
J(θ) =1
4
4∑i=1
(f?(xi)− f(x; θ))2
y buscamos un modelo lineal: f(x;w,b) = wTx+ b.
• Se resuleven las ecuaciones normales y se obtiene: w = 0,b = 12 .
• J(θ) > 0: no se logra aproximar de maneraperfecta la salida.
• Era esperable porque los datos no sonlinealmente separables
14 / 32
![Page 52: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/52.jpg)
Ejemplo: XOR
• Supongamos que queremos aproximar la función f?(x) = xor(x1, x2)
• 4 puntos : {(0, 0), (0, 1), (1, 0), (1, 1)}, con salidas 0, 1, 1, 0 respec.
• Objetivo: encontrar f que prediga bien los cuatro puntos
• Planteamos una regresión:
J(θ) =1
4
4∑i=1
(f?(xi)− f(x; θ))2
y buscamos un modelo lineal: f(x;w,b) = wTx+ b.
• Se resuleven las ecuaciones normales y se obtiene: w = 0,b = 12 .
• J(θ) > 0: no se logra aproximar de maneraperfecta la salida.
• Era esperable porque los datos no sonlinealmente separables
14 / 32
![Page 53: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/53.jpg)
Ejemplo: XOR
• Supongamos que queremos aproximar la función f?(x) = xor(x1, x2)
• 4 puntos : {(0, 0), (0, 1), (1, 0), (1, 1)}, con salidas 0, 1, 1, 0 respec.
• Objetivo: encontrar f que prediga bien los cuatro puntos
• Planteamos una regresión:
J(θ) =1
4
4∑i=1
(f?(xi)− f(x; θ))2
y buscamos un modelo lineal: f(x;w,b) = wTx+ b.
• Se resuleven las ecuaciones normales y se obtiene: w = 0,b = 12 .
• J(θ) > 0: no se logra aproximar de maneraperfecta la salida.
• Era esperable porque los datos no sonlinealmente separables
14 / 32
![Page 54: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/54.jpg)
Ejemplo: XOR
• Supongamos que queremos aproximar la función f?(x) = xor(x1, x2)
• 4 puntos : {(0, 0), (0, 1), (1, 0), (1, 1)}, con salidas 0, 1, 1, 0 respec.
• Objetivo: encontrar f que prediga bien los cuatro puntos
• Planteamos una regresión:
J(θ) =1
4
4∑i=1
(f?(xi)− f(x; θ))2
y buscamos un modelo lineal: f(x;w,b) = wTx+ b.
• Se resuleven las ecuaciones normales y se obtiene: w = 0,b = 12 .
• J(θ) > 0: no se logra aproximar de maneraperfecta la salida.
• Era esperable porque los datos no sonlinealmente separables
14 / 32
![Page 55: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/55.jpg)
Ejemplo: XOR
• Supongamos que queremos aproximar la función f?(x) = xor(x1, x2)
• 4 puntos : {(0, 0), (0, 1), (1, 0), (1, 1)}, con salidas 0, 1, 1, 0 respec.
• Objetivo: encontrar f que prediga bien los cuatro puntos
• Planteamos una regresión:
J(θ) =1
4
4∑i=1
(f?(xi)− f(x; θ))2
y buscamos un modelo lineal: f(x;w,b) = wTx+ b.
• Se resuleven las ecuaciones normales y se obtiene: w = 0,b = 12 .
• J(θ) > 0: no se logra aproximar de maneraperfecta la salida.
• Era esperable porque los datos no sonlinealmente separables
14 / 32
![Page 56: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/56.jpg)
Ejemplo: XOR
• Supongamos que queremos aproximar la función f?(x) = xor(x1, x2)
• 4 puntos : {(0, 0), (0, 1), (1, 0), (1, 1)}, con salidas 0, 1, 1, 0 respec.
• Objetivo: encontrar f que prediga bien los cuatro puntos
• Planteamos una regresión:
J(θ) =1
4
4∑i=1
(f?(xi)− f(x; θ))2
y buscamos un modelo lineal: f(x;w,b) = wTx+ b.
• Se resuleven las ecuaciones normales y se obtiene: w = 0,b = 12 .
• J(θ) > 0: no se logra aproximar de maneraperfecta la salida.
• Era esperable porque los datos no sonlinealmente separables
14 / 32
![Page 57: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/57.jpg)
Ejemplo: XOR
Supongamos que se utilizan dos capas (una capa oculta)
• Es decir: y = f(x;W(1),b(1),w(2),b(2)) = f(2)(f(1)(x))
• Redes neuronales modernas usan rectified linear unit (ReLU) definidacomo g(x) = max(0, x) (aplicada elemento a elemento)
• f(1) no debe ser lineal. ¿Por qué?
Si capa oculta tiene dos neuronas, tenemos:
f(2)(f(1)(x)) = w(1)T max{0,W(2)Tx+ b(1)}+ b(2)
Solución con error cero:
W(1) =
[1 11 1
], b(1) =
[0−1
],w(2) =
[1−2
], b(2) = 0
15 / 32
![Page 58: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/58.jpg)
Ejemplo: XOR
Supongamos que se utilizan dos capas (una capa oculta)
• Es decir: y = f(x;W(1),b(1),w(2),b(2)) = f(2)(f(1)(x))
• Redes neuronales modernas usan rectified linear unit (ReLU) definidacomo g(x) = max(0, x) (aplicada elemento a elemento)
• f(1) no debe ser lineal. ¿Por qué?
Si capa oculta tiene dos neuronas, tenemos:
f(2)(f(1)(x)) = w(1)T max{0,W(2)Tx+ b(1)}+ b(2)
Solución con error cero:
W(1) =
[1 11 1
], b(1) =
[0−1
],w(2) =
[1−2
], b(2) = 0
15 / 32
![Page 59: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/59.jpg)
Ejemplo: XOR
Supongamos que se utilizan dos capas (una capa oculta)
• Es decir: y = f(x;W(1),b(1),w(2),b(2)) = f(2)(f(1)(x))
• Redes neuronales modernas usan rectified linear unit (ReLU) definidacomo g(x) = max(0, x) (aplicada elemento a elemento)
• f(1) no debe ser lineal. ¿Por qué?
Si capa oculta tiene dos neuronas, tenemos:
f(2)(f(1)(x)) = w(1)T max{0,W(2)Tx+ b(1)}+ b(2)
Solución con error cero:
W(1) =
[1 11 1
], b(1) =
[0−1
],w(2) =
[1−2
], b(2) = 0
15 / 32
![Page 60: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/60.jpg)
Ejemplo: XOR
Supongamos que se utilizan dos capas (una capa oculta)
• Es decir: y = f(x;W(1),b(1),w(2),b(2)) = f(2)(f(1)(x))
• Redes neuronales modernas usan rectified linear unit (ReLU) definidacomo g(x) = max(0, x) (aplicada elemento a elemento)
• f(1) no debe ser lineal. ¿Por qué?
Si capa oculta tiene dos neuronas, tenemos:
f(2)(f(1)(x)) = w(1)T max{0,W(2)Tx+ b(1)}+ b(2)
Solución con error cero:
W(1) =
[1 11 1
], b(1) =
[0−1
],w(2) =
[1−2
], b(2) = 0
15 / 32
![Page 61: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/61.jpg)
Ejemplo: XOR
Supongamos que se utilizan dos capas (una capa oculta)
• Es decir: y = f(x;W(1),b(1),w(2),b(2)) = f(2)(f(1)(x))
• Redes neuronales modernas usan rectified linear unit (ReLU) definidacomo g(x) = max(0, x) (aplicada elemento a elemento)
• f(1) no debe ser lineal. ¿Por qué?
Si capa oculta tiene dos neuronas, tenemos:
f(2)(f(1)(x)) = w(1)T max{0,W(2)Tx+ b(1)}+ b(2)
Solución con error cero:
W(1) =
[1 11 1
], b(1) =
[0−1
],w(2) =
[1−2
], b(2) = 0
15 / 32
![Page 62: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/62.jpg)
Ejemplo: XOR
Supongamos que se utilizan dos capas (una capa oculta)
• Es decir: y = f(x;W(1),b(1),w(2),b(2)) = f(2)(f(1)(x))
• Redes neuronales modernas usan rectified linear unit (ReLU) definidacomo g(x) = max(0, x) (aplicada elemento a elemento)
• f(1) no debe ser lineal. ¿Por qué?
Si capa oculta tiene dos neuronas, tenemos:
f(2)(f(1)(x)) = w(1)T max{0,W(2)Tx+ b(1)}+ b(2)
Solución con error cero:
W(1) =
[1 11 1
], b(1) =
[0−1
],w(2) =
[1−2
], b(2) = 0
15 / 32
![Page 63: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/63.jpg)
Ejemplo: XOR
• Intuición: Se puede construir con dos capas que separan linealmente
16 / 32
![Page 64: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/64.jpg)
Red feedforward de una capa oculta
• Entrada: x
• Pre-activación:
a = W(1)Tx+ b(1)
• Activación capa oculta:
h(x) = g(a(x))
• Capa de salida:
f(x) = o(w(2)Th(1) + b(2)
)
h1
hi
hd
f(x)
x1
xj
xn
W(1)
W(1)
W(1)w(2)
w(2)
w(2)
1,1
j,i
2,1
1
i
d
input layer hidden layer
output layer
1 b(1)1
1b(2)
17 / 32
![Page 65: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/65.jpg)
Capacidad de red de una capa oculta
18 / 32
![Page 66: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/66.jpg)
Capacidad de red de una capa oculta
18 / 32
![Page 67: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/67.jpg)
Capacidad de red de una capa oculta
18 / 32
![Page 68: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/68.jpg)
Capacidad de red de una capa oculta
• Cuantas más neuronas, más capacidad de ajustar
• Capacidad = Número de neuronas ocultas
18 / 32
![Page 69: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/69.jpg)
Capacidad de red de una capa oculta
• Cuantas más neuronas, más capacidad de ajustar
• Capacidad = Número de neuronas ocultas
18 / 32
![Page 70: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/70.jpg)
Teorema de Aproximación Universal
Teorema (Cybenko, 1989; Hornik 1991)
“Una red neuronal prealimentada con una única capa oculta y unnúmero finito de neuronas, puede aproximar cualquier funcióncontinua en un espacio compacto de Rn”.
• Con los paramétros adecuados, se puede representar una granvariedad de funciones
• El teorema no habla de cómo aprender los parámetros
• George Cybenko en 1989 para función de activación sigmoide
• Kurt Hornik lo extiende en 1991, a funciones generales, loimportante es la arquitectura feedfoward no la función deactivación
19 / 32
![Page 71: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/71.jpg)
Arquitectura de red deep feedforwardSea una red con L capas ocultas.
• Entrada:
x (= h(0))
• Pre-activación capa (j):
a(j)(x) =(W(j)Th(j−1) + b(j)
)• Salida capa (j)
h(j)(x) = g(a(j)(x))
• Salida de la red (capa L+ 1)
f(x) = o(a(L+1)
)
h(1)
h(1)
h(1)
h(2)
f(x)
x1
x2
x3
W(1)
W(1) W(2)
w(3)
w(3)
w(3)
1
2
3
4
1
2
3
1,1
3,3
2,1
3,4
1
2
4
input layer
1st hidden layer
2nd hidden layer
output layer
1 b(1)11 b(2)1
1b(3)h(2)
h(2)
h(2)
W(2)1,1
W(1)
Nomenclatura:
• “3-layer neural net” o“2-hidden-layer neural net”
• Capas totalmente conectadas(“Fully-connected layers”)
20 / 32
![Page 72: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/72.jpg)
Arquitectura de red deep feedforwardSea una red con L capas ocultas.
• Entrada:
x (= h(0))
• Pre-activación capa (j):
a(j)(x) =(W(j)Th(j−1) + b(j)
)• Salida capa (j)
h(j)(x) = g(a(j)(x))
• Salida de la red (capa L+ 1)
f(x) = o(a(L+1)
)
h(1)
h(1)
h(1)
h(2)
f(x)
x1
x2
x3
W(1)
W(1) W(2)
w(3)
w(3)
w(3)
1
2
3
4
1
2
3
1,1
3,3
2,1
3,4
1
2
4
input layer
1st hidden layer
2nd hidden layer
output layer
1 b(1)11 b(2)1
1b(3)h(2)
h(2)
h(2)
W(2)1,1
W(1)
Nomenclatura:
• “3-layer neural net” o“2-hidden-layer neural net”
• Capas totalmente conectadas(“Fully-connected layers”)
20 / 32
![Page 73: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/73.jpg)
Arquitectura de red deep feedforwardSea una red con L capas ocultas.
• Entrada:
x (= h(0))
• Pre-activación capa (j):
a(j)(x) =(W(j)Th(j−1) + b(j)
)
• Salida capa (j)
h(j)(x) = g(a(j)(x))
• Salida de la red (capa L+ 1)
f(x) = o(a(L+1)
)
h(1)
h(1)
h(1)
h(2)
f(x)
x1
x2
x3
W(1)
W(1) W(2)
w(3)
w(3)
w(3)
1
2
3
4
1
2
3
1,1
3,3
2,1
3,4
1
2
4
input layer
1st hidden layer
2nd hidden layer
output layer
1 b(1)11 b(2)1
1b(3)h(2)
h(2)
h(2)
W(2)1,1
W(1)
Nomenclatura:
• “3-layer neural net” o“2-hidden-layer neural net”
• Capas totalmente conectadas(“Fully-connected layers”)
20 / 32
![Page 74: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/74.jpg)
Arquitectura de red deep feedforwardSea una red con L capas ocultas.
• Entrada:
x (= h(0))
• Pre-activación capa (j):
a(j)(x) =(W(j)Th(j−1) + b(j)
)• Salida capa (j)
h(j)(x) = g(a(j)(x))
• Salida de la red (capa L+ 1)
f(x) = o(a(L+1)
)
h(1)
h(1)
h(1)
h(2)
f(x)
x1
x2
x3
W(1)
W(1) W(2)
w(3)
w(3)
w(3)
1
2
3
4
1
2
3
1,1
3,3
2,1
3,4
1
2
4
input layer
1st hidden layer
2nd hidden layer
output layer
1 b(1)11 b(2)1
1b(3)h(2)
h(2)
h(2)
W(2)1,1
W(1)
Nomenclatura:
• “3-layer neural net” o“2-hidden-layer neural net”
• Capas totalmente conectadas(“Fully-connected layers”)
20 / 32
![Page 75: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/75.jpg)
Arquitectura de red deep feedforwardSea una red con L capas ocultas.
• Entrada:
x (= h(0))
• Pre-activación capa (j):
a(j)(x) =(W(j)Th(j−1) + b(j)
)• Salida capa (j)
h(j)(x) = g(a(j)(x))
• Salida de la red (capa L+ 1)
f(x) = o(a(L+1)
)
h(1)
h(1)
h(1)
h(2)
f(x)
x1
x2
x3
W(1)
W(1) W(2)
w(3)
w(3)
w(3)
1
2
3
4
1
2
3
1,1
3,3
2,1
3,4
1
2
4
input layer
1st hidden layer
2nd hidden layer
output layer
1 b(1)11 b(2)1
1b(3)h(2)
h(2)
h(2)
W(2)1,1
W(1)
Nomenclatura:
• “3-layer neural net” o“2-hidden-layer neural net”
• Capas totalmente conectadas(“Fully-connected layers”)
20 / 32
![Page 76: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/76.jpg)
Arquitectura de red deep feedforwardSea una red con L capas ocultas.
• Entrada:
x (= h(0))
• Pre-activación capa (j):
a(j)(x) =(W(j)Th(j−1) + b(j)
)• Salida capa (j)
h(j)(x) = g(a(j)(x))
• Salida de la red (capa L+ 1)
f(x) = o(a(L+1)
)
h(1)
h(1)
h(1)
h(2)
f(x)
x1
x2
x3
W(1)
W(1) W(2)
w(3)
w(3)
w(3)
1
2
3
4
1
2
3
1,1
3,3
2,1
3,4
1
2
4
input layer
1st hidden layer
2nd hidden layer
output layer
1 b(1)11 b(2)1
1b(3)h(2)
h(2)
h(2)
W(2)1,1
W(1)
Nomenclatura:
• “3-layer neural net” o“2-hidden-layer neural net”
• Capas totalmente conectadas(“Fully-connected layers”)
20 / 32
![Page 77: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/77.jpg)
¿Por qué usar redes profundas?
• Una única capa oculta con número arbitrariamente grande deneuronas es un aproximador universal.
Thorpe, S. and Fabre-Thorpe, M.“Seeking categories in the brain.”, Science, (2001)
21 / 32
![Page 78: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/78.jpg)
¿Por qué usar redes profundas?
• Una única capa oculta con número arbitrariamente grande deneuronas es un aproximador universal.
Redes poco profundas ineficientes para representar funciones complejas
Montufar et al. [2014], “Red neuronal (ReLu), concon d entradas, L capas, n unidades por capa oculta,puede calcular funciones con:
O
(nd
)d(L−1)
nd
,
regiones lineales.”
• El número de regiones en una red profunda crece de maneraexponencial con L y polinomial con n, lo que es mucho más rápidoque en una red de una capa oculta con nL neuronas.
Thorpe, S. and Fabre-Thorpe, M.“Seeking categories in the brain.”, Science, (2001)
21 / 32
![Page 79: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/79.jpg)
¿Por qué usar redes profundas?
• Una única capa oculta con número arbitrariamente grande deneuronas es un aproximador universal.
Montufar et al. [2014]
Thorpe, S. and Fabre-Thorpe, M.“Seeking categories in the brain.”, Science, (2001)
21 / 32
![Page 80: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/80.jpg)
¿Por qué usar redes profundas?
• Una única capa oculta con número arbitrariamente grande deneuronas es un aproximador universal.
Los datos (en general) tienen una organización jerárquica
Thorpe, S. and Fabre-Thorpe, M.“Seeking categories in the brain.”, Science, (2001)
21 / 32
![Page 81: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/81.jpg)
¿Por qué usar redes profundas?
Thorpe, S. and Fabre-Thorpe, M.“Seeking categories in the brain.”, Science, (2001)
21 / 32
![Page 82: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/82.jpg)
Aprendizaje basado en Optimización
• Queremos encontrar f(x; θ) que aproxime f?(x) en un conjuntode puntos {(x1, y1), . . . , (x1, y1)},
• Definimos una arquitectura de red:
f(x; θ) := f (n)(f (n−1)
(· · · f (2)
(f (1) (x)
)· · ·))
.
• Planteamos el problema como una minimización:
θ = argminθ
n∑i=1
L(f(xi; θ), yi)
parámetros θ =[W(1),W(2), . . . ,W(n)
]• Optimización mediante descenso por gradiente (estocástico)
• Necesitamos calcular el gradiente: Algoritmo Backpropagation(Próxima clase!) [Repasar regla de la cadena]
22 / 32
![Page 83: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/83.jpg)
Aprendizaje basado en Optimización
• Queremos encontrar f(x; θ) que aproxime f?(x) en un conjuntode puntos {(x1, y1), . . . , (x1, y1)},
• Definimos una arquitectura de red:
f(x; θ) := f (n)(f (n−1)
(· · · f (2)
(f (1) (x)
)· · ·))
.
• Planteamos el problema como una minimización:
θ = argminθ
n∑i=1
L(f(xi; θ), yi)
parámetros θ =[W(1),W(2), . . . ,W(n)
]• Optimización mediante descenso por gradiente (estocástico)
• Necesitamos calcular el gradiente: Algoritmo Backpropagation(Próxima clase!) [Repasar regla de la cadena]
22 / 32
![Page 84: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/84.jpg)
Aprendizaje basado en Optimización
• Queremos encontrar f(x; θ) que aproxime f?(x) en un conjuntode puntos {(x1, y1), . . . , (x1, y1)},
• Definimos una arquitectura de red:
f(x; θ) := f (n)(f (n−1)
(· · · f (2)
(f (1) (x)
)· · ·))
.
• Planteamos el problema como una minimización:
θ = argminθ
n∑i=1
L(f(xi; θ), yi)
parámetros θ =[W(1),W(2), . . . ,W(n)
]
• Optimización mediante descenso por gradiente (estocástico)
• Necesitamos calcular el gradiente: Algoritmo Backpropagation(Próxima clase!) [Repasar regla de la cadena]
22 / 32
![Page 85: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/85.jpg)
Aprendizaje basado en Optimización
• Queremos encontrar f(x; θ) que aproxime f?(x) en un conjuntode puntos {(x1, y1), . . . , (x1, y1)},
• Definimos una arquitectura de red:
f(x; θ) := f (n)(f (n−1)
(· · · f (2)
(f (1) (x)
)· · ·))
.
• Planteamos el problema como una minimización:
θ = argminθ
n∑i=1
L(f(xi; θ), yi)
parámetros θ =[W(1),W(2), . . . ,W(n)
]• Optimización mediante descenso por gradiente (estocástico)
• Necesitamos calcular el gradiente: Algoritmo Backpropagation(Próxima clase!) [Repasar regla de la cadena]
22 / 32
![Page 86: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/86.jpg)
Aprendizaje basado en Optimización
• Queremos encontrar f(x; θ) que aproxime f?(x) en un conjuntode puntos {(x1, y1), . . . , (x1, y1)},
• Definimos una arquitectura de red:
f(x; θ) := f (n)(f (n−1)
(· · · f (2)
(f (1) (x)
)· · ·))
.
• Planteamos el problema como una minimización:
θ = argminθ
n∑i=1
L(f(xi; θ), yi)
parámetros θ =[W(1),W(2), . . . ,W(n)
]• Optimización mediante descenso por gradiente (estocástico)
• Necesitamos calcular el gradiente: Algoritmo Backpropagation(Próxima clase!) [Repasar regla de la cadena]
22 / 32
![Page 87: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/87.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
Planteamos el problema como una minimización:
θ = argminθ
n∑i=1
L(f(xi; θ), yi)
En realidad, lo que nos gustaría hacer es minimizar el error depredicción esperado:
θ? = argminθ
Ex,y
{L(f(x; θ), y)
}Para obtener una buena aproximación del error esperado necesito:
• contar con muchos datos (n � 1)
• los datos sean de la misma distribución subyacente.
23 / 32
![Page 88: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/88.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
Planteamos el problema como una minimización:
θ = argminθ
n∑i=1
L(f(xi; θ), yi)
En realidad, lo que nos gustaría hacer es minimizar el error depredicción esperado:
θ? = argminθ
Ex,y
{L(f(x; θ), y)
}
Para obtener una buena aproximación del error esperado necesito:
• contar con muchos datos (n � 1)
• los datos sean de la misma distribución subyacente.
23 / 32
![Page 89: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/89.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
Planteamos el problema como una minimización:
θ = argminθ
n∑i=1
L(f(xi; θ), yi)
En realidad, lo que nos gustaría hacer es minimizar el error depredicción esperado:
θ? = argminθ
Ex,y
{L(f(x; θ), y)
}Para obtener una buena aproximación del error esperado necesito:
• contar con muchos datos (n � 1)
• los datos sean de la misma distribución subyacente.
23 / 32
![Page 90: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/90.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• El objetivo del aprendizaje automático es que el algoritmo entrenadofuncione bien en datos no conocidos
• A esta habilidad se le llama generalización y se mide con el error degeneralización o test error
• El error de generalización es el valor esperado del error en unamuestra no conocida (pero que se asume que viene de la mismadensidad de probabilidad subyacente)
• Esto diferencia el aprendizaje automático de la optimización
• Podemos estimar el error de generalización en un conjunto de datosno utilizado durante la etapa de entrenamiento:
• partición de datos en: training + validation + test• validación cruzada + test
24 / 32
![Page 91: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/91.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• El objetivo del aprendizaje automático es que el algoritmo entrenadofuncione bien en datos no conocidos
• A esta habilidad se le llama generalización y se mide con el error degeneralización o test error
• El error de generalización es el valor esperado del error en unamuestra no conocida (pero que se asume que viene de la mismadensidad de probabilidad subyacente)
• Esto diferencia el aprendizaje automático de la optimización
• Podemos estimar el error de generalización en un conjunto de datosno utilizado durante la etapa de entrenamiento:
• partición de datos en: training + validation + test• validación cruzada + test
24 / 32
![Page 92: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/92.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• El objetivo del aprendizaje automático es que el algoritmo entrenadofuncione bien en datos no conocidos
• A esta habilidad se le llama generalización y se mide con el error degeneralización o test error
• El error de generalización es el valor esperado del error en unamuestra no conocida (pero que se asume que viene de la mismadensidad de probabilidad subyacente)
• Esto diferencia el aprendizaje automático de la optimización
• Podemos estimar el error de generalización en un conjunto de datosno utilizado durante la etapa de entrenamiento:
• partición de datos en: training + validation + test• validación cruzada + test
24 / 32
![Page 93: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/93.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• El objetivo del aprendizaje automático es que el algoritmo entrenadofuncione bien en datos no conocidos
• A esta habilidad se le llama generalización y se mide con el error degeneralización o test error
• El error de generalización es el valor esperado del error en unamuestra no conocida (pero que se asume que viene de la mismadensidad de probabilidad subyacente)
• Esto diferencia el aprendizaje automático de la optimización
• Podemos estimar el error de generalización en un conjunto de datosno utilizado durante la etapa de entrenamiento:
• partición de datos en: training + validation + test• validación cruzada + test
24 / 32
![Page 94: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/94.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• El objetivo del aprendizaje automático es que el algoritmo entrenadofuncione bien en datos no conocidos
• A esta habilidad se le llama generalización y se mide con el error degeneralización o test error
• El error de generalización es el valor esperado del error en unamuestra no conocida (pero que se asume que viene de la mismadensidad de probabilidad subyacente)
• Esto diferencia el aprendizaje automático de la optimización
• Podemos estimar el error de generalización en un conjunto de datosno utilizado durante la etapa de entrenamiento:
• partición de datos en: training + validation + test
• validación cruzada + test
24 / 32
![Page 95: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/95.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• Sea Dtrain,Dtest ∼ pdata(x, y) conjuntos de entrenamiento y testing generados apartir de la misma distribución generadora
• Entrenamos un sistema de manera de obtener los parámetros que minimizanla función
θ = argminθ
ntrain∑i=1
Li(f(xi; θ), yi)
• Podemos definir los errores en el conjunto de entrenamiento y de test,
Etrain =
ntrain∑i=1
Li(f(xi; θ), yi), Etest =
ntest∑i=1
Li(f(xi; θ), yi)
• El objetivo del aprendizaje automático es que• Etrain sea muy pequeno• Etrain y Etest sean similares
• Si Etrain es grande: modelo subajusta (underfitting), modelo elegido no essuficientemente complejo como para representar los datos (poca capacidad)
• Si Etest − Etrain es grande: modelo sobreajusta (overfitting), modelo demasiadocomplejo y sobreajusta conjunto de entrenamiento (demasiada capacidad)
• Capacidad del modelo es controlada por: espacio de funciones (e.g.,polinomios de grado n), regularización, cantidad de parámetros
25 / 32
![Page 96: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/96.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• Sea Dtrain,Dtest ∼ pdata(x, y) conjuntos de entrenamiento y testing generados apartir de la misma distribución generadora
• Entrenamos un sistema de manera de obtener los parámetros que minimizanla función
θ = argminθ
ntrain∑i=1
Li(f(xi; θ), yi)
• Podemos definir los errores en el conjunto de entrenamiento y de test,
Etrain =
ntrain∑i=1
Li(f(xi; θ), yi), Etest =
ntest∑i=1
Li(f(xi; θ), yi)
• El objetivo del aprendizaje automático es que• Etrain sea muy pequeno• Etrain y Etest sean similares
• Si Etrain es grande: modelo subajusta (underfitting), modelo elegido no essuficientemente complejo como para representar los datos (poca capacidad)
• Si Etest − Etrain es grande: modelo sobreajusta (overfitting), modelo demasiadocomplejo y sobreajusta conjunto de entrenamiento (demasiada capacidad)
• Capacidad del modelo es controlada por: espacio de funciones (e.g.,polinomios de grado n), regularización, cantidad de parámetros
25 / 32
![Page 97: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/97.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• Sea Dtrain,Dtest ∼ pdata(x, y) conjuntos de entrenamiento y testing generados apartir de la misma distribución generadora
• Entrenamos un sistema de manera de obtener los parámetros que minimizanla función
θ = argminθ
ntrain∑i=1
Li(f(xi; θ), yi)
• Podemos definir los errores en el conjunto de entrenamiento y de test,
Etrain =
ntrain∑i=1
Li(f(xi; θ), yi), Etest =
ntest∑i=1
Li(f(xi; θ), yi)
• El objetivo del aprendizaje automático es que• Etrain sea muy pequeno• Etrain y Etest sean similares
• Si Etrain es grande: modelo subajusta (underfitting), modelo elegido no essuficientemente complejo como para representar los datos (poca capacidad)
• Si Etest − Etrain es grande: modelo sobreajusta (overfitting), modelo demasiadocomplejo y sobreajusta conjunto de entrenamiento (demasiada capacidad)
• Capacidad del modelo es controlada por: espacio de funciones (e.g.,polinomios de grado n), regularización, cantidad de parámetros
25 / 32
![Page 98: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/98.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• Sea Dtrain,Dtest ∼ pdata(x, y) conjuntos de entrenamiento y testing generados apartir de la misma distribución generadora
• Entrenamos un sistema de manera de obtener los parámetros que minimizanla función
θ = argminθ
ntrain∑i=1
Li(f(xi; θ), yi)
• Podemos definir los errores en el conjunto de entrenamiento y de test,
Etrain =
ntrain∑i=1
Li(f(xi; θ), yi), Etest =
ntest∑i=1
Li(f(xi; θ), yi)
• El objetivo del aprendizaje automático es que• Etrain sea muy pequeno• Etrain y Etest sean similares
• Si Etrain es grande: modelo subajusta (underfitting), modelo elegido no essuficientemente complejo como para representar los datos (poca capacidad)
• Si Etest − Etrain es grande: modelo sobreajusta (overfitting), modelo demasiadocomplejo y sobreajusta conjunto de entrenamiento (demasiada capacidad)
• Capacidad del modelo es controlada por: espacio de funciones (e.g.,polinomios de grado n), regularización, cantidad de parámetros
25 / 32
![Page 99: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/99.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• El objetivo del aprendizaje automático es que• Etrain sea muy pequeno• Etrain y Etest sean similares
• Si Etrain es grande: modelo subajusta (underfitting), modelo elegido no essuficientemente complejo como para representar los datos (poca capacidad)
• Si Etest − Etrain es grande: modelo sobreajusta (overfitting), modelo demasiadocomplejo y sobreajusta conjunto de entrenamiento (demasiada capacidad)
• Capacidad del modelo es controlada por: espacio de funciones (e.g.,polinomios de grado n), regularización, cantidad de parámetros
25 / 32
![Page 100: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/100.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• El objetivo del aprendizaje automático es que• Etrain sea muy pequeno• Etrain y Etest sean similares
• Si Etrain es grande: modelo subajusta (underfitting), modelo elegido no essuficientemente complejo como para representar los datos (poca capacidad)
• Si Etest − Etrain es grande: modelo sobreajusta (overfitting), modelo demasiadocomplejo y sobreajusta conjunto de entrenamiento (demasiada capacidad)
• Capacidad del modelo es controlada por: espacio de funciones (e.g.,polinomios de grado n), regularización, cantidad de parámetros
25 / 32
![Page 101: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/101.jpg)
Capacidad, sobreajuste, subajustecapacity, overfitting, underfitting
• El objetivo del aprendizaje automático es que• Etrain sea muy pequeno• Etrain y Etest sean similares
• Si Etrain es grande: modelo subajusta (underfitting), modelo elegido no essuficientemente complejo como para representar los datos (poca capacidad)
• Si Etest − Etrain es grande: modelo sobreajusta (overfitting), modelo demasiadocomplejo y sobreajusta conjunto de entrenamiento (demasiada capacidad)
• Capacidad del modelo es controlada por: espacio de funciones (e.g.,polinomios de grado n), regularización, cantidad de parámetros
25 / 32
![Page 102: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/102.jpg)
Capacidad: Ejemplo
Dado un conjunto de ntrain puntos de entrenamiento ajustamos unpolinomio de orden n,
y = b+
n∑i=1
wixi.
26 / 32
![Page 103: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/103.jpg)
Capacidad: Ejemplo
Dado un conjunto de ntrain puntos de entrenamiento ajustamos unpolinomio de orden n,
y = b+n∑
i=1
wixi.
Evaluamos el error de ajuste utilizando un conjunto de testing
Capacidad ideal: orden ≈ 3
26 / 32
![Page 104: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/104.jpg)
Capacidad: Ejemplo
Dado un conjunto de ntrain puntos de entrenamiento ajustamos unpolinomio de orden n,
y = b+n∑
i=1
wixi.
Evaluamos el error de ajuste utilizando un conjunto de testing
Capacidad ideal: orden ≈ 3
26 / 32
![Page 105: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/105.jpg)
Capacidad: Ejemplo
ntrain = 5
27 / 32
![Page 106: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/106.jpg)
Capacidad: Ejemplo
ntrain = 6
27 / 32
![Page 107: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/107.jpg)
Capacidad: Ejemplo
ntrain = 7
27 / 32
![Page 108: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/108.jpg)
Capacidad: Ejemplo
ntrain = 10
27 / 32
![Page 109: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/109.jpg)
Capacidad: Ejemplo
Capacidad ideal depende del (tamaño) conjunto de
entrenamiento
ntrain = 5 ntrain = 10
27 / 32
![Page 110: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/110.jpg)
Vapnik-Chervonenkis dimension
• Estimar la capacidad de un modelo es difícil (existen distintasdefiniciones de capacidad)
• La dimensión VC (Vapnik-Chervonenkis) mide la capacidad de unclasificador binario.
• Se define como la máxima cantidad de puntos m que pueden serclasificados en dos categorías de manera arbitraria.
• Clasificador lineal tiene dimensión VC = 3 (4 puntos: XOR)
• En la práctica es muy difícil de estimar. Estimar la capacidad deuna red neuronal es un tema activo de investigación
28 / 32
![Page 111: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/111.jpg)
Vapnik-Chervonenkis dimension
• Estimar la capacidad de un modelo es difícil (existen distintasdefiniciones de capacidad)
• La dimensión VC (Vapnik-Chervonenkis) mide la capacidad de unclasificador binario.
• Se define como la máxima cantidad de puntos m que pueden serclasificados en dos categorías de manera arbitraria.
• Clasificador lineal tiene dimensión VC = 3 (4 puntos: XOR)
• En la práctica es muy difícil de estimar. Estimar la capacidad deuna red neuronal es un tema activo de investigación
28 / 32
![Page 112: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/112.jpg)
Vapnik-Chervonenkis dimension
• Estimar la capacidad de un modelo es difícil (existen distintasdefiniciones de capacidad)
• La dimensión VC (Vapnik-Chervonenkis) mide la capacidad de unclasificador binario.
• Se define como la máxima cantidad de puntos m que pueden serclasificados en dos categorías de manera arbitraria.
• Clasificador lineal tiene dimensión VC = 3 (4 puntos: XOR)
• En la práctica es muy difícil de estimar. Estimar la capacidad deuna red neuronal es un tema activo de investigación
28 / 32
![Page 113: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/113.jpg)
Vapnik-Chervonenkis dimension
• Estimar la capacidad de un modelo es difícil (existen distintasdefiniciones de capacidad)
• La dimensión VC (Vapnik-Chervonenkis) mide la capacidad de unclasificador binario.
• Se define como la máxima cantidad de puntos m que pueden serclasificados en dos categorías de manera arbitraria.
• Clasificador lineal tiene dimensión VC = 3 (4 puntos: XOR)
• En la práctica es muy difícil de estimar. Estimar la capacidad deuna red neuronal es un tema activo de investigación
28 / 32
![Page 114: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/114.jpg)
Vapnik-Chervonenkis dimension
• Estimar la capacidad de un modelo es difícil (existen distintasdefiniciones de capacidad)
• La dimensión VC (Vapnik-Chervonenkis) mide la capacidad de unclasificador binario.
• Se define como la máxima cantidad de puntos m que pueden serclasificados en dos categorías de manera arbitraria.
• Clasificador lineal tiene dimensión VC = 3 (4 puntos: XOR)
• En la práctica es muy difícil de estimar. Estimar la capacidad deuna red neuronal es un tema activo de investigación
28 / 32
![Page 115: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/115.jpg)
Tamaño de una red prealimentada
• Red de 2 capas
• 1 capa oculta (4 neuronas), 1 capa de salida (2 neuronas), 3 entradas
• 4 +2 = 6 neuronas
• 3x4 + 4x2 = 20 pesos, 4 + 2 = 6 biases = 26 parámetros
29 / 32
![Page 116: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/116.jpg)
Tamaño de una red prealimentada
• Red de 3 capas
• 2 capas ocultas (4 neuronas cada una), 1 capa de salida (1 neurona)
• 4 +4+1 = 9 neuronas
• 3x4 + 4x4 + 4x1 = 32 pesos, 4 + 4 +1 = 9 biases = 41 parámetros
29 / 32
![Page 117: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/117.jpg)
Tamaño de una red prealimentada
• Redes de convolución (que vamos a ver más adelante), muyutilizadas en la práctica pueden llegar a tener decenas de capas ydecenas de millones de parámetros.
29 / 32
![Page 118: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/118.jpg)
Red prealimentada - Computo
• W1,W2,W3,b1,b2,b3 Parámetros a aprender
• La entrada puede programarse para que contenga un conjunto depuntos no sólo uno X = [x1, x2, . . . , xn]
• La salida en general es un puntaje o score (no tiene activación ensalida)
30 / 32
![Page 119: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/119.jpg)
Red prealimentada - Computo
• W1,W2,W3,b1,b2,b3 Parámetros a aprender
• La entrada puede programarse para que contenga un conjunto depuntos no sólo uno X = [x1, x2, . . . , xn]
• La salida en general es un puntaje o score (no tiene activación ensalida)
30 / 32
![Page 120: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/120.jpg)
Red prealimentada - Computo
• W1,W2,W3,b1,b2,b3 Parámetros a aprender
• La entrada puede programarse para que contenga un conjunto depuntos no sólo uno X = [x1, x2, . . . , xn]
• La salida en general es un puntaje o score (no tiene activación ensalida)
30 / 32
![Page 121: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/121.jpg)
Capacidad
Demo (Andrej Karpathy):http://cs.stanford.edu/people/karpathy/convnetjs/demo/classify2d.html
31 / 32
![Page 122: APRENDIZAJE PROFUNDO PARA VISIÃ N ARTIFICIALmdelbra/DL2017/slides/c4.pdf · Agenda 1 Modeloslineales,generalización 2 RedesNeuronalesPrealimentadas(feedforward) 3 Neuronasartificiales](https://reader033.vdocumento.com/reader033/viewer/2022060212/5f04fc437e708231d410affc/html5/thumbnails/122.jpg)
Capacidad
Regularización:
+λ‖W‖2 “weight decay”
32 / 32