Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ipynb - Colaboratory
decisión. Para los clasi cadores con modelos lineales, las super cies de decisión se de nen como una
función lineal respecto a la muestra a evaluar m⃗ , tal función es refererida como función de activación f :
→T
′ ′
y(m⃗ ) = f (w m⃗ +w0 ) = f (y(m⃗ ))
→
con lo que la posición de la muestra m′ respecto al hiperplano de nido por y(m⃗ ) de ne la clasi cación
→
(etiqueta k) de la muestra m′ . La dimensionalidad del vector de pesos, en este caso, es la misma que
→ → →
los datos, por lo que w′ ∈ R
D
. La función y(m′ ) es lineal respecto a m′ .
Haciendo la analogía respecto al problema de regresión, las muestras de entrada x⃗ son comparables
→ → →
con el conjunto de muestras de entrada M ′ = {m
′
1, m
′
2, … , m
′
N } para construir el modelo de
clasi cación, y por cada muestra a la salida real del fenómeno t es comparable con la etiqueta a asignar
por muestra q ⃗ . El problema de la clasi cación se puede enfocar entonces como la discretización del
problema de ajuste de curvas, donde la salida t pasa a tener un número nito de valores K . Por
ejemplo, si el objetivo es clasi car en K = 2 clases el conjunto de muestras M ′ , q ⃗ ∈ {0, 1}. Si
K > 2, la codi cación de la etiqueta puede implementarse usando un esquema 1-de-K el cual de ne a
q ⃗ = [q 0 , q 1 , … , q K ] ,
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 1/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
poniendo en uno el valor qj de la etiqueta j a representar y en cero los demás como un vector de largo
K.
Para el problema de clasi cación en 2 clases, la función lineal discriminante más sencilla es dada por:
→
′T ′
y(m⃗ ) = w⃗ m + w0
donde w⃗ es el vector de pesos, y w0 es el sesgo o su negativo es también llamado umbral. Un vector de
→
entrada m⃗ es asignado a la clase C1 si y (m′ ) ≥ 0 y a la clase C2 de otro modo. Lo anterior se
resume como:
→ →
′ ′
y (m ) ≥ 0 m ∈ C1 k = 0
→
′
′
y (m⃗ ) < 0 m ∈ C2 k = 1,
donde k corresponde a la etiqueta de la clase. Como se puede observar en la siguiente Figura, el vector
′
de pesos w⃗ de ne la orientación del límite de decisión, y el negativo del sesgo w0 , la distancia respecto
→ →
′T
al origen. La super cie de decisión con D = 2 está de nida por y (m′ ) = w⃗ m
′
+ w0 , con
→
x = m
′
a partir de las ecuaciones de proyección y del hecho de que para los puntos en la super cie de
decisión y(x) = 0
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 2/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Tomando en cuenta como los dos puntos m⃗ 1 y m⃗ 2 están sobre la super cie de decisión, por lo que
entonces
→ → → →
′ ′ ′T ′T
′ ′
y (m 1) = y (m 2) = 0 ⇒ w⃗ m + w0 − w⃗ m − w0 = 0
1 2
→ →
T
′ ′
⇒ w⃗ (m − m ) = 0
1 2
lo cual signi ca que el vector w⃗ es perpendicular a todos los vectores paralelos o sobre la super cie de
decisión, y además de ne la orientación de tal super cie, como lo muestra el vector verde en la Figura.
→
De forma similar, si m′ 1 es un punto sobre la super cie de decisión, se tiene que:
→ →
′ ′T ′
y (m 1) = w⃗ m 1 + w0 = 0
Para simpli car la notación, se incluye el sesgo, con un valor neutro mo = 1 , de niendo entonces
→
T
y m⃗ = . Por ello, w,⃗ m⃗ ∈ . Es necesario entonces aumentar la
′ D+1
w⃗ = [w0 , w]
⃗ (m0 , m ) R
dimensionalidad de las entradas a D + 1 para utilizar esta notación. Así entonces la expresión
simpli cada, la ecuación se escribe como sigue:
T
y (m⃗ ) = w⃗ m⃗
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 3/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Generalizando para la matriz de muestras M ∈ RN ×(D+1) y w⃗ ∈ R(D+1)×1 , donde los valores de cada
muestra m⃗ j se representan en la la j de tal matriz a la ecuación en la sección anterior, se obtiene:
y (M ) = M w.
⃗
− m⃗ 1 − w0
⎡ ⎤⎡ ⎤
⇒ y (M ) = ⎢ ⎥⎢ ⎥.
⎢ ⋮ ⋮ ⋮ ⎥⎢ ⋮ ⎥
⎣ ⎦⎣ ⎦
− m⃗ N − wD
Así, respecto a la matriz con todos los valores conocidos de pertenencia de clase t ⃗ = [ t1 … tN ]
T
⃗ =
E (w) ∥ M w⃗ − t ∥
⃗ = ⃗
{(M w⃗ − t ) ⃗
(M w⃗ − t )}
∥ ∥
2 2
La función gradiente respecto al vector de pesos w⃗ de esta función de error igualada a cero, viene dada
por (según lo demostrado para el caso de la regresión):
⃗
∂ E(w)
T T
= M M w⃗ − M t
⃗ = 0
∂ w⃗
−1
donde, si no existe la inversa de (M T M ) , los tres factores se reemplazan por la pseudo inversa
−1
. Así, la clasi cación de una nueva muestra h⃗ ∈ viene dada por:
T T + D+1
(M M) M = M R
−1
⃗ ⃗ T T ⃗ .
y (h) = h ((M M ) M t)
Para simpli car la clasi cación en dos clases, la super cie de decisión queda de nida por y (m⃗ ) = w0 ,
por lo que si y (m⃗ ) ≥ w0 , m⃗ ∈ C1 , de lo contrario m⃗ ∈ C2 .
Para el caso especí co de la clasi cación en un espacio R2 , (D = 2 ) , se tiene que cada muestra está
T
dada por m⃗ = [m = 1
0 m1 m2 ] y el modelo está compuesto por los pesos
, por lo que entonces el modelo está dado por:
T
w⃗ = [ w0 w1 w2 ]
y (m⃗ ) = w0 + w1 m1 + w2 m2
lo cual es un plano en R2 , para lo cual es necesario gra car la curva de nivel, para lo cual se toma el
valor en y (m⃗ ) = 0 , con lo que:
−w0 = w1 m1 + w2 m2
y para la gra cación de la curva, es necesario entonces despejar alguna de las variables:
−w0 − w1 m1
= m2
w2
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 4/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
La clasi cación por mínimos cuadrados presenta una importante debilidad: al castigar la distancia
euclidiana de las muestras respecto al modelo, la exactitud de tal modelo es perjudicada cuando se
presentan sesgos en las muestras, es decir, muestras muy desviadas del comportamiento usual de la
clase. Incluso si estos sesgos son muy correctos (muestras muy alejadas de los montículos principales),
el modelo es afectado, como se observa en la Figura.
m̌ = y ( m ) = w T m
→ → →
donde m̌ ∈ R y en general el símbolo del sombrero invertido denota una reducción de dimensionalidad a
N = 1.
En general, la proyección de un espacio de dimensión D a uno de menor dimensión D u < D ′ para un
conjunto de datos implica pérdida de información, lo que di culta muchas veces una clasi cación
exitosa de los datos, como se puede observar en la Figura izquierda, a continuación.
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 5/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Los datos antes fácilmente separables en dos dimensiones, pueden llegar a traslaparse en mayor
medida, dependiendo de la perspectiva de la proyección. La separabilidad y, por ende, la facilidad de
→
clasi car los datos, depende de la posición del plano proyectado, de nido por el vector de pesos w,
como también se puede observar en la Figura.
El objetivo de la función discriminante lineal de Fisher es maximizar la distancia entre las medias
proyectadas μ 1 y μ 2 de las clases C 1y C 2, con N 1 y N 2 muestras respectivamente. Las medias aritméticas
→
de cada clase son determinadas a partir de las muestras de entrenamiento m n:
1 1
→
μ1 =
N1
∑ →
m n,
→
μ2 =
N2
∑ →
m n
n ∈ C1 n ∈ C2
→ → ′
donde μ 1, μ 2 ∈ R D × 1, y con la proyección de la diferencia de las medias dada por:
( )
→T → →
μ̌ 2 − μ̌ 1 = w μ1 − μ2
puesto que μ k son también muestras de dimensionalidad N, y su proyección en general viene dada por
→T →
μ̌ k = w μk
Basado en la ecuación que re eja la diferencia de medias, podemos escribir la siguiente función a
maximizar:
( )2 = (w T μ 1 − w T μ 2 )(w T μ 1 − w T μ 2 ) T = w T ( μ 1 − μ 2 )( μ 1 − μ 2 )Tw
→ → → → → → → → → → → →
J μ (w
→
) = μ̌ 2 − μ̌ 1 → →
J μ (w
→
) = w→ TS Bw→
donde S B se re ere a la matriz D × D de covarianza inter-clase, basada en las medias de las dos clases
(recuerde que el factor a la derecha transpuesto genera un producto externo):
( )( μ 1 − μ 2 )T
→ → → →
SB = μ 1 − μ 2
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 6/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Sin embargo, la Figura también muestra que maximizar la distancia entre las medias no es su ciente
para garantizar la separabilidad de los datos en un espacio de dimensionalidad reducida, dado el aún
posible traslape en la proyección de las poblaciones ocasionada por altas varianzas. La maximización J μ
→
según la ecuación matricial puede arribar a un conjunto de pesos w incorrecto sino se toma en cuenta la
varianza intra-clase, es decir, la varianza de las muestras en cada clase.
El objetivo entonces de la función de costo J es: maximizar la varianza inter-clase (distancia entre las
medias de las poblaciones) y minimizar la varianza intra-clase (varianza de las muestras en la población
de cada clase).
La varianza intra-clase proyectada a minimizar š k de una clase C k, se de ne como la diferencia al
→ T→
cuadrado respecto a su media proyectada μ k de todas las muestras proyectadas m̌ n = w m n:
( m̌ n − μ̌ k ) = ∑ (w T m n − w T μ k )(w T m n − w T μ k )
T
š k = ∑ 2 → → → → → → → →
n∈C k n∈C k
→T
⇒ š k = w
(n∈C
∑( m n − μ k )(m n − μ k )
k
→ → T→ →
) →
w
por lo que entonces para el caso de dos clases, la varianza intra-clase total viene dada por š W = š 1 + š 2.
En el espacio de dimensionalidad D ′ , la ecuación se expresa en términos de las matrices de covarianza
S i:
∑ ( m n − μ i )(m n − μ i )
T
→ → → →
Si =
n∈C i
2
donde entonces S w = S 1 + S 2. La varianza proyectada š k en el espacio original de dimensión N está dada
por (usando los resultados anteriores):
→T →
š w = š 1 + š 2 = w S ww.
(μ̌ 2 − μ̌ 1 )2 →T
w →
S Bw
J (w ) =
→
=
š 1 + š 2 →T
w →
S ww
xTA→
∇x → →
(
x = 2A→)
x ):
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 7/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
∇ wJ =
→ = 0,
(w S w )
→T
w
→ 2
\begin{equation} \require{cancel}
\Rightarrow\nabla_{\vec{w}}J=\frac{\left(S_{B}\vec{w}\right)\cancel{\left(\vec{w}^{T}S_{w}\vec{w}\right)
}}
{\left(\vec{w}^{T}S_{w}\vec{w}\right)^{\cancel{2}}}=\frac{\left(\vec{w}^{T}S_{B}\vec{w}\right)\left(S_{w}\
vec{w}\right)}{\left(\vec{w}^{T}S_{w}\vec{w}\right)^{2}}, \end{equation}
tomando en cuenta que las formas cuadráticas son escalares y multiplicando por la inversa de S_{w}:
\begin{equation} S_{w}^{-1}S_{B}\vec{w}=\left(\frac{\vec{w}^{T}S_{B}\vec{w}}
{\vec{w}^{T}S_{w}\vec{w}}\right)\vec{w} \end{equation}
Si S_{W} tiene una inversa calculable S_{W}^{-1}, entonces multiplicando tal factor a ambos lados de la
ecuación se obtiene que:
\begin{equation} S_{w}^{-1}S_{B}\vec{w}=\left(\frac{\vec{w}^{T}S_{B}\vec{w}}
{\vec{w}^{T}S_{w}\vec{w}}\right)\vec{w} \end{equation}
donde el problema de encontar \vec{w} se puede interpretar como el de calcular el auto-vector \vec{w}
para el autovalor \mathbf{\lambda}:
\begin{equation} \lambda=\frac{\vec{w}^{T}S_{B}\vec{w}}{\vec{w}^{T}S_{w}\vec{w}} \end{equation}
y la matriz A=S_{w}^{-1}S_{B}, en la conocida ecuación para los auto-vectores y auto-valores:
\begin{equation} A\vec{w}=\lambda\vec{w}. \end{equation}
Recordando el concepto de auto-vector y auto-valor: El auto-vector \vec{w} de dimensión D'\times1, para
la matriz cuadrada A de dimensiones D'\times D', corresponde a un vector que no cambia su dirección
cuando se aplica la transformación especi cada en la matriz A, T(\vec{w})=A\,\vec{w}. El vector
transformado A\vec{w} es entonces paralelo al vector \vec{w}. Los auto-vectores de una matriz de
covarianza como S_{w} resultan en las direcciones principales de la varianza, donde la predominancia de
un auto-vector es de nida por el auto-valor \lambda.
Continuando con el problema , tal y como se mencionó anteriormente, lo importante en el caso del
vector \vec{w} es su dirección, y no su magnitud, por lo que entonces podemos simpli car el problema
haciendo
\begin{equation} \lambda=1. \end{equation}
Tomando en cuenta la ecuación matricial para la diferencia de medias, podemos entonces desarrollar la
ecuación para auto valores y auto vectores:
\begin{equation} S_{w}^{-1}\left(\vec{\mu}_{1}-\vec{\mu}_{2}\right)\left(\vec{\mu}_{1}-
\vec{\mu}_{2}\right)^{T}\vec{w}=\lambda\vec{w} \end{equation}
donde el vector \left(\mu_{1}-\mu_{2}\right)\left(\mu_{1}-\mu_{2}\right)^{T}\vec{w} tiene siempre la
dirección S_{w}^{-1}\left(\mu_{1}-\mu_{2}\right), puesto que \left(\vec{\mu}_{1}-
\vec{\mu}_{1}\right)^{T}\vec{w} es un escalar, y recordando que es posible hacer \lambda=1, la ecuación
nos permite arribar a la orientación del vector de pesos \vec{w}:
\begin{equation} \vec{w}\propto S_{w}^{-1}\left(\vec{\mu}_{1}-\vec{\mu}_{2}\right) \end{equation}
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 8/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Por medio de esta ecuación es posible encontrar un vector de pesos \vec{w} que maximiza la varianza
inter-clase y minimiza la varianza intra-clase, en la proyección de las muestras
\check{m}=y\left(\vec{m}\right)=\vec{w}^{T}\vec{m}, con lo cual es relativamente sencillo a través de un
análisis Gaussiano, encontrar el umbral para clasi car una muestra como perteneciente a
\mathcal{C}_{1} o a \mathcal{C}_{2}.
El perceptrón
El algoritmo del perceptrón es uno de los algoritmos de clasi cación que marcó el desarrollo del
reconocimiento de patrones, sirviendo de fundamento para el área de aprendizaje automático por redes
neuronales. El perceptrón se basa en la abstracción matemática de una neurona a nivel biológico. Una
neurona tiene una serie de entradas $\vec{m}=\begin{bmatrix}m_{0} & \ldots & m_{D}\end{bmatrix}^{T}$
las cuales son combinadas linealmente por un vector de pesos o de enlaces sinápticos
$\vec{w}=\begin{bmatrix}w_{0} & \ldots & w_{D}\end{bmatrix}^{T}$ en la función de red:
\begin{equation} \varUpsilon\left(\vec{m}\right)=\sum_{i=0}^{D}m_{i}w_{i}=\vec{w}^{T}\vec{m}.
\end{equation}
Lo cual anteriormente correspondía a la función $y=\varUpsilon$. Una neurona es excitada según una
función de activación $f(\varUpsilon)$, que recibe como entrada el resultado de la función de red
$\varUpsilon$, y puede corresponder por ejemplo a una función de tipo escalón:
\begin{equation} f\left(\vec{m}\right)=\begin{cases} +1 & \varUpsilon\left(\vec{m}\right)\geq0\\ -1 &
\varUpsilon\left(\vec{m}\right)<0 \end{cases}. \end{equation}
Para el problema de clasi cación en dos clases, las etiquetas de las clases $\mathcal{C}_{1}$ y
$\mathcal{C}_{2}$ corresponderían a la salida de la función de excitación $t=y(\vec{m})$, por lo que
entonces
\begin{equation} t\in\{-1,1\} \end{equation}
, con $t=1$ si $t\in\mathcal{C}_{1}$ y $t=-1$ si $t\in\mathcal{C}_{2}$. El perceptrón es un algoritmo
supervisado de clasi cación, en el que debe estar especi cado para el conjunto $M$ de $N$ muestras
de entrenamiento
\begin{equation} M=\begin{bmatrix}- & \vec{m}_{1} & -\\ \vdots & \vdots & \vdots\\ - & \vec{m}_{N} & -
\end{bmatrix}, \end{equation}
sus etiquetas de pertenencia de clase correspondientes
\begin{equation} \vec{t}=\begin{bmatrix}t_{1}\\ \vdots\\ t_{N} \end{bmatrix}. \end{equation}
La siguiente gura ilustra el concepto del perceptrón.
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 9/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Para la determinación de los pesos $\vec{w}$, se utiliza el criterio del perceptrón, el cual establece que
una muestra $\vec{m}_{j}$ de dimensionalidad $N$ es correctamente clasi cada si cumple que:
\begin{equation} \varUpsilon\left(\vec{m}_{j}\right)\,t_{j}=\vec{w}^{T}\vec{m}_{j}\,t_{j}>0, \end{equation}
donde $t_{j}$ es la etiqueta correcta de la muestra (pertenencia a la clase), previamente conocida. El
criterio del perceptrón especi ca que el error total toma en cuenta únicamente las muestras
incorrectamente clasi cadas ($\vec{w}^{T}\vec{m}_{j}\,t_{j}\leq0$) las cuales están contenidas en el
conjunto de muestras incorrectamente clasi cadas $\mathcal{U}$, como lo muestra la función de error
$E_{P}\left(\vec{w}\right)$:
\begin{equation} E_{P}\left(\vec{w}\right)=-
\sum_{\vec{m}_{j}\in\mathcal{U}}\left(\vec{w}^{T}\vec{m}_{j}\,t_{j}\right). \end{equation}
De este modo, si todas las muestras son correctamente clasi cadas, entonces
$E_{P}\left(\vec{w}\right)=0$.
El algoritmo de entrenamiento usa el criterio del perceptrón para evaluar el error
$E_{P}\left(\vec{w}\right)$ en $P$ iteraciones, donde por cada iteración $\tau$, se evalúa el error para
todas las muestras $\vec{m}_{j}$ en las clases $C_{1}$ y $C_{2}$, y se modi ca el vector de pesos
$\vec{w}$ como sigue:
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 10/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Con tal interpretación vectorial es posible apreciar el impacto del valor inicial del vector de pesos
$\vec{w}\left(1\right)$ en los valores nales al nal del entrenamiento y la cantidad de iteraciones $P$
necesarias para lograr la convergencia del algoritmo.
El algoritmo del perceptrón tiene la ventaja respecto al enfoque de mínimos cuadrados de ser menos
sensible a las muestras muy lejanas, datos aislados u outliers.
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 11/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 12/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 13/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
El lector puede realizar la cuarta iteración, y con rmar que para la quinta, no el vector $\vec{w}$ no
cambia.
Bayes Ingenuo
El problema de clasi cación se puede modelar como el problema de estimar una función de densidad.
Por ejemplo, el clasi cador de Bayes ingenuo estima una función de densidad condicional, como sigue.
Suponga que estamos ante el problema de clasi car imágenes vectorizadas binarias
$\vec{m}\in\mathbb{R}^{D}$ en dos categorías, correspondientes a si simbolizan el digito 1 o 2. El
objetivo del Bayes ingenuo es entonces estimar las siguientes funciones de densidad de probabilidad
condicional:
\begin{equation} \begin{array}{c} p\left(t=1|\overrightarrow{m}\right)\\
p\left(t=2|\overrightarrow{m}\right) \end{array} \end{equation}
lo cual se lee como la probabilidad de que la etiqueta sea 1 dada la muestra $\overrightarrow{m}$, y la
etiqueta sea 2 dada esa muestra $\overrightarrow{m}$, respectivamente. Para hacer esto, usamos el
teorema de Bayes:
\begin{equation} p\left(t|\overrightarrow{m}\right)=\frac{p\left(\overrightarrow{m}|t\right)p\left(t\right)}
{p\left(\overrightarrow{m}\right)}=\frac{p\left(m_{0},\ldots,m_{D}|t\right)p\left(t\right)}
{p\left(m_{0},\ldots,m_{D}\right)} \end{equation}
lo cual implica que las probabilidades condicionales se expresan en términos de las probabilidades
conjuntas. En este caso particular, cada componente $m_{i}$ corresponde a un pixel en la imagen, con lo
cual por ejemplo $p\left(m_{1}|t\right)$ se lee como la probabilidad de que el pixel 1 esté encendido
dado que la muestra tiene la etiqueta $t$. La asunción clave del bayes ingenuo, es la independencia de
todas las variables aleatorias, en este caso, los pixeles, por lo que la ecuación anterior se reescribe
como sigue:
\begin{equation} p\left(t|\overrightarrow{m}\right)=\frac{p\left(m_{0}|t\right)p\left(m_{1}|t\right)\ldots
p\left(m_{D}|t\right)p\left(t\right)}{p\left(m_{0}\right)p\left(m_{1}\right)\ldots
p\left(m_{D}\right)}=\frac{\prod_{i=0}^{D}p\left(m_{i}|t\right)p\left(t\right)}
{\prod_{i=0}^{D}p\left(m_{i}\right)} \end{equation}
Observe que en general, la sumatoria de las probabilidades condicionales para todas las etiquetas $K$,
para una muestra $\overrightarrow{m}$ es
\begin{equation}
\sum_{j}^{K}p\left(t=j|\overrightarrow{m}\right)=1=\sum_{j}^{K}\frac{\prod_{i=0}^{D}p\left(m_{i}|t=j\right)
p\left(t\right)}{\prod_{i=0}^{D}p\left(m_{i}\right)}=1 \end{equation}
donde el denominador es el mismo para todos los términos, al ser independiente de la etiqueta, por lo
que podemos prescindir de él y encontrar una relación proporcional:
\begin{equation} p\left(t|\overrightarrow{m}\right)\propto\prod_{i=0}^{D}p\left(m_{i}|t\right)p\left(t\right)
\end{equation}
Las probabilidades marginales para las etiquetas $p\left(t\right)$ se calculan, por ejemplo para el caso
de la estimación del digito que aparece en la imagen, si se cuenta con $M=10000$, como la proporción
entre la cantidad de muestras de cada clase en tal conjunto de datos, por ejemplo si la mitad de las
muestras son de un dígito y la otra mitad de otro, entonces
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 14/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Regresión Logística
El enfoque de estimar una función de densidad cambia el problema a una regresión, donde la salida del
modelo $y$ puede tomar un valor real en el intervalo de 0 a 1, por lo que entonces $y\in\left\{ 0,1\right\}
$. De esta forma, si $y\geq0.5\Rightarrow t=1$, y de lo contrario $t=0$.
Para una muestra $\vec{m}\in\mathbb{R}^{D}$, la regresión logística implementa un modelo basado en
la función sigmoidal, por lo que el mismo viene dado por:
\begin{equation} y\left(\overrightarrow{m},\overrightarrow{w}\right)=\frac{1}{1+e^{-
\vec{w}^{T}\overrightarrow{m}}}=\frac{1}{1+e^{-\gamma\left(\overrightarrow{m}\right)}} \end{equation}
donde el vector $\vec{w}$ corresponde al vector de parámetros o pesos a ajustar, y
$\gamma\left(\overrightarrow{m}\right)=\vec{w}^{T}\overrightarrow{m}=\vec{w}\cdot\overrightarrow{m
}$ corresponde a un producto punto, o la función de peso neto, y la función
$y\left(\overrightarrow{m}\right)$ corresponde a la función de activación, en analogía con el algoritmo
del perceptrón. La gura gra ca tal función.
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 15/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
\begin{equation}
p\left(\vec{t}|M,\vec{w}\right)=\prod_{i=1}^{N}p\left(t_{i}|\vec{m}_{i},\vec{w}\right)=\prod_{i=1}^{N}\left(y
\left(\vec{m}_{i},\vec{w}\right)\right)^{t_{i}}\left(1-y\left(\vec{m}_{i},\vec{w}\right)\right)^{1-t_{i}}.
\end{equation}
Como ya se vió, usualmente es más fácil maximizar el logaritmo de la función de verosimilitud, por lo
que entonces lo tomamos:
\begin{equation}
\ln\left(p\left(\vec{t}|M,\vec{w}\right)\right)=\sum_{i=1}^{N}t_{i}\ln\left(y\left(\vec{m}_{i},\vec{w}\right)\r
ight)+\left(1-t_{i}\right)\ln\left(1-y\left(\vec{m}_{i},\vec{w}\right)\right). \end{equation}
Recordando entonces que el negativo de la función de verosimilitud corresponde al error respecto a los
párametros del modelo $\vec{w}$, de nimos la función de error como sigue:
\begin{equation} E\left(\vec{w}\right)=-\ln\left(p\left(\vec{t}|M,\vec{w}\right)\right)=-\left\{
\sum_{i=1}^{N}t_{i}\ln\left(y\left(\vec{m}_{i},\vec{w}\right)\right)+\left(1-t_{i}\right)\ln\left(1-
y\left(\vec{m}_{i},\vec{w}\right)\right)\right\} . \end{equation}
Para encontrar el punto óptimo, utilizamos el método de optimización por descenso de gradiente, por lo
que entonces se calcula el vector gradiente del error de la siguiente forma:
\begin{equation} \nabla_{\vec{w}}E\left(\vec{w}\right)=-\sum_{i=1}^{N}\vec{m}_{i}\left\{ \left(\frac{t_{i}}
{y\left(\vec{m}_{i},\vec{w}\right)}\right)\nabla_{\vec{w}}\left(y\left(\vec{m}_{i},\vec{w}\right)\right)-
\left(\frac{1-t_{i}}{1-
y\left(\vec{m}_{i},\vec{w}\right)}\right)\nabla_{\vec{w}}\left(y\left(\vec{m}_{i},\vec{w}\right)\right)\right\}
\end{equation}
\begin{equation} \require{cancel} \Rightarrow\nabla E\left(\vec{w}\right)=-
\sum_{i=1}^{N}\vec{m}_{i}\left\{ \left(\frac{t_{i}}
{\cancel{y\left(\vec{m}_{i},\vec{w}\right)}}\right)\cancel{y\left(\vec{m}_{i},\vec{w}\right)}\left(1-
y\left(\vec{m}_{i},\vec{w}\right)\right)-\left(\frac{1-t_{i}}{\cancel{1-
y\left(\vec{m}_{i},\vec{w}\right)}}\right)y\left(\vec{m}_{i},\vec{w}\right)\cancel{\left(1-
y\left(\vec{m}_{i},\vec{w}\right)\right)}\right\} \end{equation}
\begin{equation} \Rightarrow\nabla E\left(\vec{w}\right)=-\sum_{i=1}^{N}\vec{m}_{i}\left\{ t_{i}\left(1-
y\left(\vec{m}_{i},\vec{w}\right)\right)-\left(1-t_{i}\right)y\left(\vec{m}_{i},\vec{w}\right)\right\}
\end{equation}
\begin{equation} \Rightarrow\nabla E\left(\vec{w}\right)=-\sum_{i=1}^{N}\vec{m}_{i}\left\{ t_{i}-
y\left(\vec{m},\vec{w}\right)\right\} . \end{equation}
De esta forma, la siguiente es la ecuación de actualización de los pesos:
\begin{equation} \vec{w}(\tau+1)^{T}=\vec{w}(\tau)^{T}-\alpha\,\nabla E_{P}\left(\vec{w}\right)=\vec{w}
(\tau)^{T}+\alpha\sum_{i=1}^{N}\vec{m}_{i}\left\{ t_{i}-y\left(\vec{m},\vec{w}\right)\right\} .
\end{equation}
Observe que en este caso se optó por minimizar el negativo de la función de verosimilitud, pero también
es posible la minimización de la función de error cuadrática usando el gradiente, sin embargo es
computacionalmente más e ciente la minimización del negativo de la verosimilitud.
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 17/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
Como se estudió en el problema de la regresión, el utilizar el error de ajuste del modelo con los datos de
entrenamiento únicamente como parámetro de decisión del modelo a usar, conlleva un aumento en el
error de clasi cación cuando nuevos datos, con los cuales no se realizó el entrenamiento del modelo, se
utilizan, como lo muestra la Figura.
Es necesario entonces realizar una evaluación del error con los datos de validación, los cuales no fueron
utilizados para construir en el modelo. En los algoritmos supervisados de clasi cación y regresión, se
suele particionar el conjunto de datos etiquetados en un conjunto de entrenamiento y de validación,
usualmente con una proporción de 70% de los datos para entrenamiento y el restante 30% para
validación.
Sin embargo, muchas veces se dispone de no su ciente número de datos etiquetados, por lo que se
procede a realizar lo que se conoce como una validación cruzada de los datos. Para ello, se realizan $C$
corridas del algoritmo, y en cada una se escoge un conjunto distinto de muestras de entrenamiento y de
validación, como muestra la Figura. Esto además es útil para algoritmos con componentes aleatorios,
donde una corrida con los mismos datos puede arrojar resultados distintos.
Maldición de la dimensionalidad
Tómese el caso en que se desea realizar la clasi cación de un conjunto de muestras de dos
dimensiones $\vec{x}\in\mathbb{R}^{2}$ y $K=3$ clases, como se muestra en la Figura.
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 18/19
8/5/2019 AprendizajeAutomático_Leccion3.ipynb - Colaboratory
De esta forma, si un dato nuevo se desea clasi car, se asigna su clase según la pertenencia de la celda a
una clase de las $K=3$ clases.
Este esquema de división del espacio en celdas tiene dos problemas, en función de la dimensionalidad
del espacio:
La cantidad de celdas crece exponencialmente con la dimensión de tal espacio, como lo muestra
la Figura.
La cantidad de datos necesaria para determinar la pertenencia de la celda a alguna de las clases
debe también crecer exponencialmente, de forma que se eviten las celdas vacías.
Las anteriores claúsulas suponen que el agregar más dimensiones a las muestras a clasi car, para
nuestro clasi cador sencillo por celdas, aumenta la complejidad y la cantidad necesaria de muestras, lo
que se le conoce como la maldición de la dimensionalidad.
https://colab.research.google.com/drive/1uVAdePSpeEadrI84gt5qEDEYDtEMxGgd#printMode=true 19/19