fundamentos del aprendizaje automático. clasificación 2019-11-20.pdfb) máquinas de vectores...

Post on 21-Feb-2021

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Fundamentos del aprendizaje automático

(Machine learning)

Joaquín Luque

Contenido

1. Introducción2. Regresión

a) Regresión univariableb) Regresión multivariable

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

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

c) Funciones Kerneld) Clasificación multiclase

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

ClasificaciónEnfoques

• Extensión de la regresión– Regresión logística (logistic regression)

• Maximización de la separación entre clases– Máquinas de Vectores Soporte (Support Vector

Machines)

• Minimización de la distancia a clases– K-medias (K-means)– K-vecinos más próximos (K-Nearest Neighbours)

• Modelos arbóreos (tree-like)– Árbol de decisión (decision tree)– Bosques aleatorios (random forest)

Regresión logística

• Hipótesis– Función signo– Función logística

• Función de coste– 0-1– Logística

• Evaluación– Matriz de confusión y métricas derivadas– Análisis ROC– Curva de aprendizaje

ClasificaciónEjemplo en el sector eléctrico

• La empresa está impulsando la transición al vehículo eléctrico. Para ello tiene una política de marketing que se dirige captar nuevos usuarios entre sus clientes. – Dado el coste de dicha política, la acción comercial no

se dirige a todos los clientes de manera universal, sino sólo a aquéllos que son potenciales compradores.

– ¿El nuevo cliente es uno de ellos?

• Para dilucidarlo se plantea distintas cuestiones previas

ClasificaciónEjemplo en el sector eléctrico

• La primera cuestión es saber si el cliente tiene o no garaje propio. Ese dato no consta en sus bases de datos, por lo que realiza un muestreo entre sus clientes.

• De este muestreo obtiene dos datos1. Superficie de la vivienda (m2)2. Tiene garaje (Si/No)

• Con esa información quiere inferir sin un determinado cliente tiene garaje en función del tamaño de su vivienda (dato que sí consta en sus bases de datos)

Regresión logística3. Formulación de hipótesis

Regresión logística3. Formulación de hipótesis

ℎ𝑤 𝑥 = 𝑤0 + 𝑤1𝑥

𝑤0, 𝑤1

calculadospor regresión

lineal

Regresión logística3. Formulación de hipótesis

ℎ𝑤 𝑥 = 𝑤0 + 𝑤1𝑥

𝑤0, 𝑤1

calculadospor regresión

lineal

Regresión logística3. Formulación de hipótesis

ℎ𝑤 𝑥 =1 + sign 𝑥 + 𝑤0

2

𝑤0 = −100

Regresión logística5. Optimización del coste

ℎ𝑤 𝑥 =1 + sign 𝑥 + 𝑤0

2

𝑑

𝑑𝑤𝐽 ℎ𝑤 𝑥 , 𝑦 = 0

La función sign(x) no es derivable (en el origen)

Regresión logística3. Formulación de hipótesis

ℎ𝑤 𝑥 =1

1 + 𝑒−𝑧

𝑤0

𝑤1= −100

Funciónlogística

𝑧 ≡ 𝑤0 + 𝑤1𝑥

Regresión logística3. Formulación de hipótesis

𝑜 ≡𝑝

1 − 𝑝Cuota (odds)

𝐿𝑛 𝑜 = 𝑧 = 𝑤0 + 𝑤1𝑥Log-oddsUnida de medida:logit (logistic unit)

𝑝 =𝑜

1 + 𝑜=

1

1 + 𝑜−1=

1

1 + 𝑒−𝑧=

1

1 + 𝑒− 𝑤0+𝑤1𝑥

𝑜 = 𝑒𝑧 = 𝑒 𝑤0+𝑤1𝑥

𝑝: probabilidad de que tenga garaje

Puede usarse otra función no lineal 𝑧 = 𝑓 𝑥 (p.e. polinómica)

Regresión logística3. Formulación de hipótesis

ℎ𝑤 𝑥 =1

2+atan 𝑧

𝜋

Otrassigmoides

𝑤0

𝑤1= −100

𝑧 ≡ 𝑤0 + 𝑤1𝑥

Regresión logística

• Hipótesis– Función signo– Función logística

• Función de coste– 0-1– Logística

• Evaluación– Matriz de confusión y métricas derivadas– Análisis ROC– Curva de aprendizaje

Regresión logística4. Elección de la función de coste

Hipótesis:Funciónlogística

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

ℎ𝑤 𝑥 𝑖 − 𝑦 𝑖 2

Costecuadrático

No convexo

𝑤1 = 1

Regresión logística4. Elección de la función de coste

Hipótesis:Funciónlogística

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

ℎ𝑤 𝑥 𝑖 − 𝑦 𝑖 2

Costecuadrático

No convexo

𝑤0 = −100

Regresión logística4. Elección de la función de coste

Función de coste 0-1

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐼 ො𝑦 𝑖 ≠ 𝑦 𝑖 = 𝐴𝐶𝐶

𝐼 𝑢 ≡ ቊ1, 𝑢 = 𝑇𝑟𝑢𝑒0, 𝑢 = 𝐹𝑎𝑙𝑠𝑒

ො𝑦 = ቊ1, ℎ𝑤 𝑥 ≥ 𝑡ℎ0, ℎ𝑤 𝑥 < 𝑡ℎ

𝑡ℎ = 0.5

𝐴𝐶𝐶 ≡#𝑎𝑐𝑖𝑒𝑟𝑡𝑜𝑠

𝑛

Regresión logística4. Elección de la función de coste

Coste 0-1No convexo

Regresión logística4. Elección de la función de coste

𝑒 ℎ𝑤(𝑥), 𝑦 = ℎ𝑤 𝑥 − 𝑦

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝐿𝑛 1 − 𝑒

Función de coste logística (cros-entropía)

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐿 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖

Regresión logística4. Elección de la función de coste

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝐿𝑛 1 − 𝑒

Regresión logística4. Elección de la función de coste

Función de coste logística (cros-entropía)

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐿 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖

𝑒 = ℎ𝑤 𝑥 − 𝑦 = ቊ1 − ℎ𝑤 𝑥 , ∀𝑦 = 1

ℎ𝑤 𝑥 , ∀𝑦 = 0

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝐿𝑛 1 − 𝑒 = ቐ−𝐿𝑛 ℎ𝑤 𝑥 , ∀𝑦 = 1

−𝐿𝑛 1 − ℎ𝑤 𝑥 , ∀𝑦 = 0

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝑦𝐿𝑛 ℎ𝑤 𝑥 − 1 − 𝑦 𝐿𝑛 1 − ℎ𝑤 𝑥

Regresión logística4. Elección de la función de coste

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝑦𝐿𝑛 ℎ𝑤 𝑥 − 1 − 𝑦 𝐿𝑛 1 − ℎ𝑤 𝑥

Regresión logística4. Elección de la función de coste

Función de coste logística (cros-entropía)CONVEXA

Regresión logística4. Elección de la función de coste

Función de coste logística (cros-entropía)CONVEXA

Regresión logística4. Elección de la función de coste

Función de coste logística con regularización

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐿 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖 + 𝜆 𝑤 2

2

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝑦𝐿𝑛 ℎ𝑤 𝑥 − 1 − 𝑦 𝐿𝑛 1 − ℎ𝑤 𝑥

Regresión logística5. Optimización del coste

𝑤∗ = arg min𝑤

𝐽 ℎ𝑤(𝑥), 𝑦

Normal Equation

𝛻𝑤𝐽 ℎ𝑤 𝑥 , 𝑦 = 0

𝛻𝑤1

𝑛

𝑖=1

𝑛

𝐿𝑜𝑠𝑠 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖 = 0

𝑖=1

𝑛

𝛻𝑤𝐿𝑜𝑠𝑠 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖 = 0

Regresión logística5. Optimización del coste

𝑖=1

𝑛

𝛻𝑤 − 𝐿𝑛 1 + 2𝑦 𝑖 − 1 ℎ𝑤 𝑥 𝑖 − 𝑦 𝑖 = 0

Normal Equation

𝑖=1

𝑛2𝑦 𝑖 − 1 𝛻𝑤ℎ𝑤 𝑥 𝑖 − 𝑦 𝑖

1 + 2𝑦 𝑖 − 1 ℎ𝑤 𝑥 𝑖 − 𝑦 𝑖= 0

ℎ𝑤 𝑥 =1

1 + 𝑒− 𝑤0+𝑤1𝑥

Regresión logística5. Optimización del coste

𝛻𝑤ℎ𝑤 =𝜕ℎ𝑤𝜕𝑤0

𝜕ℎ𝑤𝜕𝑤1

Normal Equation

𝜕ℎ𝑤𝜕𝑤0

=−1

1 + 𝑒− 𝑤0+𝑤1𝑥 2𝑒− 𝑤0+𝑤1𝑥 −1

𝜕ℎ𝑤𝜕𝑤1

=−1

1 + 𝑒− 𝑤0+𝑤1𝑥 2𝑒− 𝑤0+𝑤1𝑥 −𝑥

Regresión logística5. Optimización del coste

𝑖=1

𝑛 2𝑦 𝑖 − 1𝜕ℎ𝑤 𝑥 𝑖

𝜕𝑤0− 𝑦 𝑖

1 + 2𝑦 𝑖 − 1 ℎ𝑤 𝑥 𝑖 − 𝑦 𝑖= 0

𝑖=1

𝑛 2𝑦 𝑖 − 1𝜕ℎ𝑤 𝑥 𝑖

𝜕𝑤1− 𝑦 𝑖

1 + 2𝑦 𝑖 − 1 ℎ𝑤 𝑥 𝑖 − 𝑦 𝑖= 0

Normal Equation

Regresión logística5. Optimización del coste

𝑖=1

𝑛2𝑦 𝑖 − 1

𝑒− 𝑤0+𝑤1𝑥𝑖

1 + 𝑒− 𝑤0+𝑤1𝑥𝑖 2 − 𝑦 𝑖

1 + 2𝑦 𝑖 − 11

1 + 𝑒− 𝑤0+𝑤1𝑥𝑖 − 𝑦 𝑖

= 0

𝑖=1

𝑛2𝑦 𝑖 − 1

𝑥 𝑖 𝑒− 𝑤0+𝑤1𝑥𝑖

1 + 𝑒− 𝑤0+𝑤1𝑥𝑖 2 − 𝑦 𝑖

1 + 2𝑦 𝑖 − 11

1 + 𝑒− 𝑤0+𝑤1𝑥𝑖 − 𝑦 𝑖

= 0

Normal Equation

Regresión logística5. Optimización del coste

𝑖=1

𝑛2𝑦 𝑖 − 1

𝑒− 𝑤0+𝑤1𝑥𝑖

1 + 𝑒− 𝑤0+𝑤1𝑥𝑖 2 − 𝑦 𝑖

1 + 2𝑦 𝑖 − 11

1 + 𝑒− 𝑤0+𝑤1𝑥𝑖 − 𝑦 𝑖

= 0

𝑖=1

𝑛2𝑦 𝑖 − 1

𝑥 𝑖 𝑒− 𝑤0+𝑤1𝑥𝑖

1 + 𝑒− 𝑤0+𝑤1𝑥𝑖 2 − 𝑦 𝑖

1 + 2𝑦 𝑖 − 11

1 + 𝑒− 𝑤0+𝑤1𝑥𝑖 − 𝑦 𝑖

= 0

Normal Equation

Regresión logística5. Optimización del coste

Gradient Descent

𝑤0∗ = −15.2

𝑤1∗ = 0.155

Regresión logística

• Hipótesis– Función signo– Función logística

• Función de coste– 0-1– Logística

• Evaluación– Matriz de confusión y métricas derivadas– Análisis ROC– Curva de aprendizaje

Regresión logística6. Evaluación del resultado

ClienteSuperficie (m2)

𝒙(𝒊)Garaje

𝒚(𝒊)Predicción

𝒉(𝒊)Garajeෝ𝒚(𝒊)

11 139 S 0.998 S

12 54 N 0.001 N

13 96 S 0.428 N

14 95 N 0.372 N

15 132 S 0.994 S

⋮ ⋮ ⋮ ⋮ ⋮

𝑛𝑡𝑟𝑎𝑖𝑛 = 10 𝑡ℎ = 0.5

ℎ𝑤 𝑥 =1

1 + 𝑒− 𝑤0+𝑤1𝑥ො𝑦 = ቊ

0, ∀ℎ𝑤 𝑥 < 𝑡ℎ0, ∀ℎ𝑤 𝑥 ≥ 𝑡ℎ

Regresión logística6. Evaluación del resultado

Clase calculada

𝑷 𝑵 Elementos

Clase real𝑷 TP FN 𝑛𝑃

𝑵 FP TN 𝑛𝑁

Estimaciones 𝑒𝑃 𝑒𝑁 𝑛

Clase calculada

𝑷 𝑵 Elementos

Clase real𝑷 545 46 591

𝑵 77 322 399

Estimaciones 622 368 990

Matriz de confusión

Regresión logística6. Evaluación del resultado

Nombre Acrónimo Expresión Valor

Sensitivity SNS𝑇𝑃

𝑇𝑃 + 𝐹𝑁0.9222

Specificity SPC𝑇𝑁

𝑇𝑁 + 𝐹𝑃0.8070

Precision PRC𝑇𝑃

𝑇𝑃 + 𝐹𝑃0.8762

Negative Predictive Value NPV𝑇𝑁

𝑇𝑁 + 𝐹𝑁0.8750

Accuracy ACC𝑇𝑃 + 𝑇𝑁

𝑇𝑃 + 𝑇𝑁 + 𝐹𝑃 + 𝐹𝑁0.8758

F1 Score F1 2𝑆𝑁𝑆 · 𝑃𝑅𝐶

𝑆𝑁𝑆 + 𝑃𝑅𝐶0.8986

Geometric Mean GM 𝑆𝑁𝑆 · 𝑆𝑃𝐶 0.8627

Regresión logística6. Evaluación del resultado

Regresión logística6. Evaluación del resultado

Regresión logística6. Evaluación del resultado

Regresión logística6. Evaluación del resultado

Receiver operating characteristic (ROC)

Regresión logística6. Evaluación del resultado

Area Under Curve (AUC)𝐴𝑈𝐶 = 0.9519

Regresión logística6. Evaluación del resultado

Elección del umbral de decisiónDatos de validación

Regresión logística6. Evaluación del resultado

Elección del umbral de decisiónDatos de validación

Regresión logística6. Evaluación del resultado

Curva de aprendizaje

Contenido

1. Introducción2. Regresión

a) Regresión univariableb) Regresión multivariable

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

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

c) Funciones Kerneld) Clasificación multiclase

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

Maquina de vectores soporte (SVM)

• Frontera de decisión

– Margen

• Función de coste

– Función bisagra (hinge loss)

• Clasificación multivariable

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

Hipótesis + Umbral de decisión = Frontera de decisión

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

Hipótesis + Umbral de decisión = Frontera de decisión

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

ℎ𝑤 𝑥𝑏 =1

1 + 𝑒−𝑧𝑏= 𝑡ℎ

𝑒−𝑧𝑏 =1

𝑡ℎ− 1

𝑧𝑏 = −𝐿𝑛1

𝑡ℎ− 1

𝑧𝑏 = 𝑤𝑥𝑏 + 𝑏

Frontera

Puede usarse otra función no lineal 𝑧𝑏 = 𝑓 𝑥𝑏 (p.e. polinómica)

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

𝑧𝑏 = 𝑤𝑥𝑏 + 𝑏 = −𝐿𝑛1

𝑡ℎ− 1

𝑡ℎ =1

2⇒ 𝑧𝑏 = 0

𝑥𝑏 =−𝑏 − 𝐿𝑛

1𝑡ℎ− 1

𝑤

Frontera

𝑥𝑏 =−𝑏

𝑤

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

Frontera

ቊ𝑦 = 1, ∀𝑥 ≥ 𝑥𝑏𝑦 = 0, ∀𝑥 < 𝑥𝑏

ℎ𝑤 𝑥 =1

1 + 𝑒− 𝑤𝑥+𝑏

Hipótesis: formulación original

Hipótesis: formulación alternativa

𝑥𝑏 =−𝑏

𝑤

ቊ𝑦 = 1, ∀ℎ𝑤 𝑥 ≥ 𝑡ℎ𝑦 = 0, ∀ℎ𝑤 𝑥 < 𝑡ℎ

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

𝑧𝑏 𝑧𝑝𝑧𝑛

𝑧𝑝 = 𝑤 𝑥𝑏 +𝑚 + 𝑏 = 𝑤−𝑏

𝑤+𝑚 + 𝑏 = 𝑤 𝑚 = 𝑤

1

𝑤= 1

𝑧𝑏 = 0

𝑧𝑛 = −1

𝑧𝑝 = 1𝑚 =1

𝑤

Margen

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

Frontera dura (Hard Margin)

ቊ𝑦 = 1, ∀𝑥 ≥ 𝑥𝑏 +𝑚𝑦 = 0, ∀𝑥 ≤ 𝑥𝑏 −𝑚

ℎ𝑤 𝑥 =1

1 + 𝑒− 𝑤𝑥+𝑏

Hipótesis: formulación original

Hipótesis: formulación alternativa

𝑥𝑏 =−𝑏

𝑤;𝑚 =

1

𝑤

ቊ𝑦 = 1, ∀ℎ𝑤 𝑥 ≥ 𝑡ℎ𝑦 = 0, ∀ℎ𝑤 𝑥 < 𝑡ℎ

Maquina de vectores soporte (SVM)5. Optimización del coste

Frontera dura (Hard Margin)

Optimización: formulación original

Optimización: formulación alternativa

𝑤∗ = arg min𝑤

𝐽 ℎ𝑤(𝑥), 𝑦

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝑦𝐿𝑛 ℎ𝑤 𝑥 − 1 − 𝑦 𝐿𝑛 1 − ℎ𝑤 𝑥

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐿 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖

argmax𝑤,𝑏

𝑚 : ቊ𝑥 ≥ 𝑥𝑏 +𝑚,∀𝑦 = 1𝑥 ≤ 𝑥𝑏 −𝑚,∀𝑦 = 0

Maquina de vectores soporte (SVM)5. Optimización del coste

Frontera dura (Hard Margin)

𝑥𝑏 =−𝑏

𝑤;𝑚 =

1

𝑤

argmax𝑤,𝑏

𝑚 : ቊ𝑥 ≥ 𝑥𝑏 +𝑚,∀𝑦 = 1𝑥 ≤ 𝑥𝑏 −𝑚,∀𝑦 = 0

argmax𝑤,𝑏

1

𝑤:𝑥 ≥

−𝑏 + 1

𝑤, ∀𝑦 = 1

𝑥 ≤−𝑏 − 1

𝑤, ∀𝑦 = 0

Optimización : formulación alternativa

Maquina de vectores soporte (SVM)5. Optimización del coste

Margen máximo

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

Frontera suave (soft margin)

ℎ𝑤 𝑥 = ቊ𝑦 = 1, ∀𝑥 ≥ 𝑥𝑏𝑦 = 0, ∀𝑥 < 𝑥𝑏

Maquina de vectores soporte (SVM)4. Elección de la función de coste

𝑧𝑏 𝑧𝑝𝑧𝑛

𝑧𝑏 = 0

𝑧𝑛 = −1

𝑧𝑝 = 1

Maquina de vectores soporte (SVM)

• Frontera de decisión

– Margen

• Función de coste

– Función bisagra (hinge loss)

• Clasificación multivariable

Maquina de vectores soporte (SVM)4. Elección de la función de coste

Función de coste logística (cros-entropía)

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐿 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝑦𝐿𝑛 ℎ𝑤 𝑥 − 1 − 𝑦 𝐿𝑛 1 − ℎ𝑤 𝑥

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝑦𝐿𝑛1

1 + 𝑒−𝑧− 1 − 𝑦 𝐿𝑛 1 −

1

1 + 𝑒−𝑧

Maquina de vectores soporte (SVM)4. Elección de la función de coste

𝐿 ℎ𝑤(𝑥), 𝑦 = −𝑦𝐿𝑛1

1 + 𝑒−𝑧− 1 − 𝑦 𝐿𝑛 1 −

1

1 + 𝑒−𝑧

Maquina de vectores soporte (SVM)4. Elección de la función de coste

𝐿 ℎ𝑤(𝑥), 𝑦 = max 0,1 − 𝓎𝑧

Función de coste bisagra (hinge loss)

𝓎 ≡ 2𝑦 − 1

𝑦 ∈ 0,1𝓎 ∈ −1,1

Maquina de vectores soporte (SVM)4. Elección de la función de coste

Función de coste bisagra (hinge loss)CONVEXA

Maquina de vectores soporte (SVM)4. Elección de la función de coste

Función de coste bisagra (hinge loss)CONVEXA

Maquina de vectores soporte (SVM)4. Elección de la función de coste

Función de coste bisagra (hinge loss) con regularización

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐿 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖 + 𝜆 𝑤 2

2

𝐿 ℎ𝑤(𝑥), 𝑦 = max 0,1 − 𝓎𝑧

Maquina de vectores soporte (SVM)5. Optimización del coste

Gradient Descent

𝑏∗ = −16.7𝑤∗ = 0.160

𝑥𝑏∗ = 104.22

𝑚∗ = 6.24

Maquina de vectores soporte (SVM)6. Evaluación del resultado

ClienteSuperficie (m2)

𝒙(𝒊)Garaje

𝒚(𝒊)Garajeෝ𝒚(𝒊)

11 139 S S

12 54 N N

13 96 S N

14 95 N N

15 132 S S

⋮ ⋮ ⋮ ⋮

𝑛𝑡𝑟𝑎𝑖𝑛 = 10

ො𝑦 = ቊ1, ∀𝑥 ≥ 𝑥𝑏

0, ∀𝑥 < 𝑥𝑏∗

𝑥𝑏∗ = 104.22

Maquina de vectores soporte (SVM)6. Evaluación del resultado

Clase calculada

𝑷 𝑵 Elementos

Clase real𝑷 477 114 591

𝑵 32 367 399

Estimaciones 509 481 990

Matriz de confusión

𝑛𝑡𝑟𝑎𝑖𝑛 = 10

Maquina de vectores soporte (SVM)6. Evaluación del resultado

Nombre Acrónimo Expresión Valor

Sensitivity SNS𝑇𝑃

𝑇𝑃 + 𝐹𝑁0.8071

Specificity SPC𝑇𝑁

𝑇𝑁 + 𝐹𝑃0.9198

Precision PRC𝑇𝑃

𝑇𝑃 + 𝐹𝑃0.9371

Negative Predictive Value NPV𝑇𝑁

𝑇𝑁 + 𝐹𝑁0.7629

Accuracy ACC𝑇𝑃 + 𝑇𝑁

𝑇𝑃 + 𝑇𝑁 + 𝐹𝑃 + 𝐹𝑁0.8525

F1 Score F1 2𝑆𝑁𝑆 · 𝑃𝑅𝐶

𝑆𝑁𝑆 + 𝑃𝑅𝐶0.8672

Geometric Mean GM 𝑆𝑁𝑆 · 𝑆𝑃𝐶 0.8616

Maquina de vectores soporte (SVM)6. Evaluación del resultado

Curva de aprendizaje

Maquina de vectores soporte (SVM)

• Frontera de decisión

– Margen

• Función de coste

– Función bisagra (hinge loss)

• Clasificación multivariable

Clasificación multivariableEjemplo en el sector eléctrico

• En el programa de impulso para la transición al vehículo eléctrico, la segunda cuestión es saber si el cliente tiene o no vehículo (no eléctrico). Ese dato no consta en sus bases de datos, por lo que realiza un muestreo entre sus clientes.

• De este muestreo obtiene 3 datos1. Ingresos anuales (€)2. Edad (años)3. Tiene vehículo (Si/No)

• Con esa información quiere inferir sin un determinado cliente tiene vehículo, en función de sus ingresos y su edad (datos que sí constan en sus bases de datos)

Clasificación multivariable2. Determinación de features

ClienteIngresos (m€)

𝒙𝟏𝒊

Edad (años)

𝒙𝟐𝒊

Vehículo

𝒚(𝒊)

1 97.17 26.6 S

2 44.67 32.3 N

3 46.64 26.7 N

4 33.84 23.7 N

5 79.35 27.0 S

⋮ ⋮ ⋮ ⋮

𝑥1 y 𝑥2tienen un rango similarNo necesitan normalización

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

ℎ𝑤 𝑥 =1

1 + 𝑒−𝑧Función logística

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

Puede usarse otra función no lineal 𝑧 = 𝑓 𝑥 (p.e. polinómica)

𝑤 ≡ 𝑤1 𝑤2

𝑥 ≡ 𝑥1 𝑥2

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

ℎ𝑤 𝑥𝑏 =1

1 + 𝑒−𝑧𝑏= 𝑡ℎFrontera

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

ℎ𝑤 𝑥𝑏 =1

1 + 𝑒−𝑧𝑏= 𝑡ℎFrontera

𝑒−𝑧𝑏 = 𝑒− 𝑥𝑏𝑤𝑇+𝑏 =

1

𝑡ℎ− 1

𝑧𝑏 = 𝑥𝑏𝑤𝑇 + 𝑏 = 𝑤1𝑥1𝑏 + 𝑤2𝑥2𝑏 + 𝑏 = −𝐿𝑛

1

𝑡ℎ− 1

𝑥2𝑏 =−𝑤1

𝑤2𝑥1𝑏 +

−𝑏 − 𝐿𝑛1𝑡ℎ− 1

𝑤2

Frontera lineal

Para 2 features (𝑑 = 2)

Rectafrontera

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

𝑧𝑏 = 𝑥𝑏𝑤𝑇 + 𝑏 = −𝐿𝑛

1

𝑡ℎ− 1

𝑡ℎ =1

2⇒ 𝑧𝑏 = 0

𝑥𝑏𝑤𝑇 = −𝑏 − 𝐿𝑛

1

𝑡ℎ− 1

Frontera lineal para 𝑑 features (caso general)

𝑥𝑏𝑤𝑇 = −𝑏

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

Margen para 2 features (𝑑 = 2)

𝑑 𝑟1, 𝑟2 =𝑐1 − 𝑐2

1 + 𝑎2

2 rectas paralelas(misma pendiente)

https://math.tutorvista.com/geometry/distance-between-two-parallel-lines.html

ቊ𝑟1: 𝑦 = 𝑎𝑥 + 𝑐1𝑟2: 𝑦 = 𝑎𝑥 + 𝑐2

Distancia entre las2 rectas paralelas

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

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

𝑟𝑠: 𝑥2𝑝 =−𝑤1

𝑤2𝑥1𝑝 +

1 − 𝑏

𝑤2

𝑟𝑓: 𝑥2𝑏 =−𝑤1

𝑤2𝑥1𝑏 +

−𝑏

𝑤2

Margensuperior

Frontera lineal

Margen para 2 features (𝑑 = 2)

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

𝑚 = 𝑑 𝑟𝑠, 𝑟𝑓 =𝑐1 − 𝑐2

1 + 𝑎2=

1 − 𝑏𝑤2

−−𝑏𝑤2

1 +−𝑤1𝑤2

2

=1

𝑤2 1 +𝑤12

𝑤22

𝑚 =1

𝑤12 + 𝑤2

2

𝑚 =1

𝑤

Margen para 2 features (𝑑 = 2)

Margen para fronteralineal con 𝑑 features

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

Frontera lineal con margen

൝𝑦 = 1, ∀𝑥𝑤𝑇 + 𝑏 ≥ 0

𝑦 = 0, ∀𝑥𝑤𝑇 + 𝑏 < 0

ℎ𝑤 𝑥 =1

1 + 𝑒− 𝑥𝑤𝑇+𝑏

Hipótesis: formulación original

Hipótesis: formulación alternativa

ቊ𝑦 = 1, ∀ℎ𝑤 𝑥 ≥ 𝑡ℎ𝑦 = 0, ∀ℎ𝑤 𝑥 < 𝑡ℎ

Maquina de vectores soporte (SVM)3. Formulación de hipótesis

Maquina de vectores soporte (SVM)4. Elección de la función de coste

Función de coste bisagra (hinge loss)

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐿 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖

𝐿 ℎ𝑤(𝑥), 𝑦 = max 0,1 − 𝓎𝑧

𝐽 ℎ𝑤(𝑥), 𝑦 =1

𝑛

𝑖=1

𝑛

𝐿 ℎ𝑤(𝑥𝑖 ), 𝑦 𝑖 + 𝜆 𝑤 2

2

Maquina de vectores soporte (SVM)4. Elección de la función de coste

Función de coste bisagra (hinge loss)CONVEXA

Maquina de vectores soporte (SVM)5. Optimización del coste

Gradient Descent

Maquina de vectores soporte (SVM)5. Optimización del coste

Gradient Descent

𝑏∗ = −52.0𝑤1∗ = 0.410

𝑤2∗ = 0.624

𝑚∗ = 0.75

Maquina de vectores soporte (SVM)6. Evaluación del resultado

ClienteIngresos (m€)

𝒙𝟏𝒊

Edad (años)

𝒙𝟐𝒊

Vehículo

𝒚(𝒊)Vehículoෝ𝒚(𝒊)

201 40.94 42.6 N N

202 57.53 53.7 S S

203 38.75 49.4 N N

204 72.85 46.9 S S

205 28.32 45.7 N N

⋮ ⋮ ⋮ ⋮

𝑛𝑡𝑟𝑎𝑖𝑛 = 200

൝𝑦 = 1, ∀𝑥𝑤𝑇 + 𝑏 ≥ 0

𝑦 = 0, ∀𝑥𝑤𝑇 + 𝑏 < 0

Optimización: scikit-learn.svm

Maquina de vectores soporte (SVM)6. Evaluación del resultado

Clase calculada

𝑷 𝑵 Elementos

Clase real𝑷 284 73 357

𝑵 50 393 443

Estimaciones 334 466 800

Matriz de confusión

Maquina de vectores soporte (SVM)6. Evaluación del resultado

Nombre Acrónimo Expresión Valor

Sensitivity SNS𝑇𝑃

𝑇𝑃 + 𝐹𝑁0.7955

Specificity SPC𝑇𝑁

𝑇𝑁 + 𝐹𝑃0.8871

Precision PRC𝑇𝑃

𝑇𝑃 + 𝐹𝑃0.8503

Negative Predictive Value NPV𝑇𝑁

𝑇𝑁 + 𝐹𝑁0.8433

Accuracy ACC𝑇𝑃 + 𝑇𝑁

𝑇𝑃 + 𝑇𝑁 + 𝐹𝑃 + 𝐹𝑁0.8463

F1 Score F1 2𝑆𝑁𝑆 · 𝑃𝑅𝐶

𝑆𝑁𝑆 + 𝑃𝑅𝐶0.8220

Geometric Mean GM 𝑆𝑁𝑆 · 𝑆𝑃𝐶 0.8401

Maquina de vectores soporte (SVM)6. Evaluación del resultado

𝑛𝑡𝑟𝑎𝑖𝑛 = 200

Maquina de vectores soporte (SVM)6. Evaluación del resultado

𝑛𝑡𝑟𝑎𝑖𝑛 = 200

Maquina de vectores soporte (SVM)6. Evaluación del resultado

Curva de aprendizaje

top related