3 intro supervised ml - coordinación de ciencias...

74
Introducción al Aprendizaje Computacional Hugo Jair Escalante [email protected] https://ccc.inaoep.mx/~hugojair/

Upload: others

Post on 26-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Introducción al Aprendizaje Computacional

Hugo Jair [email protected]://ccc.inaoep.mx/~hugojair/

Page 2: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Aprendizaje computacionalsupervisado

Hugo Jair [email protected]://ccc.inaoep.mx/~hugojair/

Page 3: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Preliminares

Page 4: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Aprendizaje computacional

• Subcampo de la IA que se enfoca en el desarrollo de programas de

computadora que:

• Adapten su comportamiento automáticamente a partir de datos

• Sean capaces de aprender sin ser programados explícitamente

T. M. Mitchell. The Discipline of Machine Learning. Tech. Report. CMU-ML-06-108, 2006

Cómo podemos construir programas de computadora

que mejoren con la experiencia?

Cuáles son las leyes fundamentales que rigen los

procesos de aprendizaje?

Page 5: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Aprendizaje computacional

Máquinaentrenada

Consultas

Algoritmo de aprendizaje

Datos Respuestas

Pedro Domingos. A Few Useful Things to Know about Machine Learning. Communications of the ACM, 55(10):78--87, 2012

Isabelle Guyon. A Practical Guide to Model Selection. In Jeremie Marie, editor, Machine Learning Summer School 2008, Springer Texts in Statistics, 2011.(slide from I.Guyon’s)

ML = representación + evaluación + optimización

Page 6: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Principales variantes• Aprendizaje supervisado: hacer predicciones con respecto a una o más

variables

• Aprendizaje semi-supervisado: Usar técnicas supervisadas y la estructura de los datos para tareas heterogéneas

• Aprendizaje no-supervisado: hallar la mejor estructura (si la hay) para los datos

Page 7: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Aprendizaje supervisado• Clasificación de Micro-arreglos de ADN

?

x1

x2

No Cáncer

Cáncer

( )f b= +x w x!1 2,=x x x

0b+ =w x!

0b+ >w x!

0b+ <w x!

?

Page 8: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El proceso de diseño de un sistema de reconocimiento de patrones

Atributos

Adquisición de datos

Pre-procesamiento

Extracción de atributos

Clasificación

Ambiente

Decisión

ModeloAprendizaje del

modelo / Estimación

Atributos

Pre-procesamiento

Extracción de atributos

Datos de entrenamiento

Post-procesamiento

Entrenamiento – desarrolloPrueba – evaluación

R. O. Duda, P. Hart, D. Stork. Pattern Classification. Wiley, 2001.

Page 9: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Aprendizaje supervisado

• Un patrón es una entidad vagamente definida, a la cual se le puede dar nombre e.g.:• La imagen de un rostro• Una secuencia de ADN• Un número escrito a mano

• Reconocimiento de patrones es el estudio de métodos automáticos para:• Aprender a distinguir patrones de interés• Tomar decisiones razonables de acuerdo a las categorías de los patrones

5 10 15 20 25

5

10

15

20

25

5 10 15 20 25

5

10

15

20

25

vs.

Page 10: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Datos etiquetados

• Cuando los datos están asociados a categorías o clases se denominan datos etiquetados

1 2 3 4 5 6 7 8 9 10

Datos

Etiquetas

InstanciasObservaciones

Page 11: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Datos etiquetados

John

Economía

Saludo

Tumor

Saludable

Saludable

Auto

Dato Etiqueta

Usualmente los datos se representan como vectores numéricos y

las etiquetas con números entre 1 y K

Page 12: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Datos etiquetados

John

Economía

Saludo

Tumor

Saludable

Saludable

Auto

Dato Etiqueta Dato Etiqueta

1

3

2

1

2

1

24

Page 13: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Datos etiquetados

• Los datos se representan por un conjunto de atributos o mediciones;ejemplos:• Imágenes en color: Contenido de color en RGB, textura, intensidad, etc.• Textos: Bolsa de palabras• Imágenes en B/N: Concatenación de filas de la matriz• Señales: valor de la señal

• Los atributos pueden ser:• Binarios• Enteros• Continuos• Categóricos

Page 14: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

X={xij}

d

mXi

y ={yi}

•Matriz de datos: X

•m filas = patrones (datos): muestras, pacientes, documentos, imágenes, …

•n columnas = atributos: (features, variables de entrada): genes, palabras, píxeles, …

•Vector de “salidas” Y con yi en {-1, 1} (binario) o en {1,2, …, K} (multiclase)

yi

Convenciones

Page 15: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

X={xij}

d

mXi =

y ={yi}

5 10 15 20 25

5

10

15

20

25

yi =1

•Matriz de datos: X

•m filas = patrones (datos): muestras, pacientes, documentos, imágenes, …

•n columnas = atributos: (features, variables de entrada): genes, palabras,

píxeles, …

•Vector de “salidas” Y con yi en {-1, 1} (binario) o en {1,2, …, K} (multiclase)

Convenciones

Page 16: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

X={xij}

d

m

Xi’ =y ={yi}

yi' =-1

5 10 15 20 25

5

10

15

20

25

•Matriz de datos: X

•m filas = patrones (datos): muestras, pacientes, documentos, imágenes, …

•n columnas = atributos: (features, variables de entrada): genes, palabras, píxeles, …

•Vector de “salidas” Y con yi en {-1, 1} (binario) o en {1,2, …, K} (multiclase)

Convenciones

Page 17: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El proceso de diseño de un sistema de reconocimiento de patrones

Atributos

Adquisición de datos

Pre-procesamiento

Extracción de atributos

Clasificación

Ambiente

Decisión

ModeloAprendizaje del

modelo / Estimación

Atributos

Pre-procesamiento

Extracción de atributos

Datos de entrenamiento

Post-procesamiento

Entrenamiento – desarrolloPrueba – evaluación

Page 18: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Más formalmente…

• Dado un conjunto de datos etiquetado:

• En aprendizaje supervisado se busca encontrar una función:

! = {(%&, ())},,…. % ∈ ℝ1; ( ∈ C

4:ℝ1 ⟶ 7

Page 19: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Más formalmente…

• Clasificación binaria:

• Clasificación multi-clase:

• Clasificación multi-etiqueta:

• Regressión:

!:ℝ$ ⟶ −1,1 ; * ∈ ℝ$; , ∈ {−1,1}

!:ℝ$ ⟶ /0,… , /2 ; * ∈ ℝ$; , ∈ /0,… , /2

!: ℝ$, /3 ⟶ {0,1}; * ∈ ℝ$; , ∈ /0,… , /2

!:ℝ$ ⟶ ℝ5; * ∈ ℝ$; , ∈ ℝ5

Page 20: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Clasificación binaria : 2 clases

?

x1

x2

No Cáncer

Cáncer

( )f b= +x w x!1 2,=x x x 0b+ =w x!

0b+ >w x!

0b+ <w x!

?

!:ℝ$ ⟶ −1,1 ; * ∈ ℝ$; , ∈ {−1,1}

Page 21: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Clasificación multi-clase : k-categorías

• Desarrollo de métodos automáticos para clasificar documentos encategorías predefinidas

Training documents(Labeled)

Learning machine(an algorithm)

Trained machine

Unseen (test, query)document

Labeled document

!:ℝ$ ⟶ &',… , &* ; , ∈ ℝ$; . ∈ &',… , &*

Page 22: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Ejemplo: clasificación de documentos

C1C2C3C4

Categorías

X1

X2

Cómo aprender estas funciones??

Page 23: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión

• Estimación de una variablecontinua

!:ℝ$ ⟶ ℝ&; ( ∈ ℝ$; * ∈ ℝ&

Page 24: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Resumiendo

• Tratamos de aprender algo que nos permita mapear entradas a salidas deseadas

• Las entradas serán vectores en Rd y las salidas pueden ser diversas

• Para aprender contamos con ejemplos etiquetados (supervisión)

• Podemos distinguir dos fases: desarrollo (entrenamiento) y evaluación (prueba)

• El objetivo es obtener un modelo que generalice más allá de la muestra

Page 25: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión

Page 26: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión

!:ℝ$ ⟶ ℝ&;

( ∈ ℝ$; * ∈ ℝ&

• Estimación de una variablecontinua

• Encontrar:

• Dado:

• Con:

+ = {((/, *1)}4,…6

Page 27: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal

• Uno de los modelos más sencillos para regresión es un modelo lineal de la forma:

• Se asume que los datos D son generados de acuerdo a f! ",$ = &' + &)*) …++&,*,

Page 28: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal

• Uno de los modelos más sencillos para regresión es un modelo lineal de la forma:

! =1$%$&

' =()(%(&

* !,' = '!

Con d=2

* !,' = () + (%$% …++(.$.

Page 29: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal

• La restricción lineal limita al modelo, pero es posible hacer un mapeo no lineal de las variables antes de aplicar el modelo lineal:

• Asumamos que ! es la función identidad: ! " = "• Cómo encontrar los pesos w qué definen al modelo?

$ ",& = &!(")Qué forma tiene!?

$ ",& = )* + ),ϕ(.,) +⋯+)01(.0)

Page 30: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal

• La restricción lineal limita al modelo, pero es posible hacer un mapeo no lineal de las variables antes de aplicar el modelo lineal:

• Asumamos que ! es la función identidad: ! " = "• Cómo encontrar los pesos w qué definen al modelo?

$ ",& = &!(")Qué forma tiene!?

$ ",& = )* + ),ϕ(.,) +⋯+)01(.0)

Page 31: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: mínimos cuadrados • Una forma de abordar el problema es tratando de encontrar un

aproximador de f, f* que minimice el cuadrado de los residuos:

• Para una muestra de m-datos, queremos encontrar la función f* que minimiza:

!" = (% &,( − *∗ &,( ) "

=-./0

1(2.−(∗&.)"!" =-

./0

1(%(&,() − %∗(&,())"

Page 32: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: mínimos cuadrados

!" = (% &,( − *∗ &,( ) "

http://people.cs.ubc.ca/~murphyk/MLbook/figReport-16-Aug-2012/pdfFigures/linRegResiduals.pdf

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

−2

−1

0

1

2

3

4

5

predictiontruth

Page 33: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: mínimos cuadrados• Una forma de abordar el problema es tratando de encontrar un

aproximador f* de f que minimice el cuadrado de los residuos:

• Para una muestra de m-datos, queremos encontrar la función f* que minimiza

!" = (% &,( − *∗ &,( ) "

=-./0

1(2.−(∗&.)"!" =-

./0

1(%(&,() − %∗(&,())"

Page 34: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: mínimos cuadrados

• Queremos encontrar w tal que se minimiza E,

• Por conveniencia:

! "∗ =%&'(

)(+&−"∗-&)/

! "∗ = (0 − 12)3(0 − 12)

Page 35: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: mínimos cuadrados

• Queremos encontrar w tal que se minimiza E,

• Derivando E con respecto a w:

! "∗ =%&'(

)(+&−"∗-&)/

0!("∗)0"∗ = 12(3 − 14)

Page 36: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: mínimos cuadrados

• Queremos encontrar w tal que se minimiza E,

• Igualando a ceros:

! "∗ =%&'(

)(+&−"∗-&)/

01 2 − 03 = 43 = (010)5( 012

Page 37: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: mínimos cuadrados

• Queremos encontrar w tal que se minimiza E,

• Si XTX es invertible, se tiene que la solución única está dada por:

! "∗ =%&'(

)(+&−"∗-&)/

0 = (121)3( 124

Page 38: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal

• La solución de mínimos cuadrados es óptima, ideal cuando es posible invertir la matriz, qué pasa cuando esto no es posible?

Page 39: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: Gradiente descendente

• Alternativa:• Minimize ! " = $

%∑'($) (+' − -')% w.r.t w

• Idea: explorar el espacio de posiblesvalores que w puede tomar.Iniciando con un w aleatorio yactualizándolo cierta magnitud en ladirección que disminuye el error.• El gradiente de E(w) indica la direcciónque produce el mayor incremento enw

Page 40: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: Gradiente descendente

• Regla de actualización:

• Estimando delta

Page 41: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: Gradiente descendente

• Estimación de w mediante gradiente descendente:

1. w ← randomly initialize weights2. Repeat until stop criterion meet

I. ∆$← initialize to 0II. For each %& ∈ (

a) +& ← $%& + . // estimate the predictionb) For each weight j estimate

1. ∆$0 ← ∆$0 + (2& − +&)4 56,0 // estimate the rate of changeIII. $ ← $+ ∆$ //Update w

3. Return w

Page 42: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión lineal: Gradiente descendente

• SGD: en la práctica una version estocástica del algoritmo es utilizada, los pesos se actualizan después de procesar cada dato.

1. w ← randomly initialize weights2. Repeat until stop criterion meet

I. ∆$← initialize to 0II. For each %& ∈ (

a) +& ← $%& + . // estimate the prediction b) For each weight j estimate

1. ∆$0 ← ∆$0 + (2& − +&)4 56,0 // estimate the rate of changec) $ ← $ + ∆$ //Update w

3. Return w

Page 43: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Interpretación probabilista

• Supongamos que y está dada por una función determinista más un ruido Gausiano aditivo:

! = # $,& + (

)(!|$,&, ,) = .(!|# $,& , ,/)

)(!|$,&, ,) = .(!|&0$, ,/)

Page 44: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión: recapitulando

• Diversas formas para resolver el mismo problema,

• Diferentes soluciones

• Los modelos son definidos por los vectores de pesos w

• Aprendizaje supervisado que existe desde el siglo XVIII

• Beneficios de regresión lineal: simpleza, eficiencia, versiones online, performance satisfactorio cuando los datos siguen una distribución lineal, interpretabilidad del modelo

Page 45: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión: extensiones

• Muchas otras formas de abordar el problema: árboles de decisión, redes neuronales, regresión por vectores de soporte, procesos Gaussianos, etc. (Algunas de éstas se verán en el curso)

• Extensión para datos no linealmente separables

Page 46: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Clasificación

Page 47: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Modelos lineales para clasificación

• Idea: aprender una función lineal (en los paramétros) que nospermita separar los datos:

• f(x) = w • x +b =Sj=1:n wj xj +b (linear discriminant)

¢ f(x) = w •F(x) +b = Sj wj fj(x) +b (the perceptron)

¢ f(x) = Si=1:m ai k(xi,x) +b (Kernel-based methods)

Linear Discriminants and Support Vector Machines, I. Guyon and D. Stork, In Smola et al Eds. Advances in Large Margin Classifiers. Pages 147--169, MIT Press, 2000.

Page 48: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

?

x1

x2

No Cancer

Cancer

1 2,=x x x

?0<+× bxw

0>+× bxw

0=+× bxw

bf +×= xwx)(

Modelos lineales para clasificación

Page 49: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Modelos lineales para clasificación

Figura de P. Flach. Machine Learning. The Art and Science of Algorithms that Make Sense of Data, Cambridge University Press, 2012

Page 50: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Linear support vector machine

http://clopinet.com/CLOP

Modelos lineales para clasificación

Page 51: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

“Non-linear” support vector machine

http://clopinet.com/CLOP

Modelos lineales para clasificación

Page 52: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Kernel ridge regression

http://clopinet.com/CLOP

Modelos lineales para clasificación

Page 53: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Zarbi classifier

http://clopinet.com/CLOP

Modelos lineales para clasificación

Page 54: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron

• Perceptron: Un clasificador lineal simple que puede resolverproblemas de clasificación que son linealmente separables (abuelo delas redes neuronales y las máquinas de soporte vectorial)

• El perceptron aprende una función de decision de la forma:! " = $%&'()" + +), with) ∈ ℝ/

Page 55: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron

• Given: ! = {(%&, (&)*,…,,}, with .& ∈ ℝ1 and (& ∈ {−1, 1}

Page 56: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron

• El perceptron aprende una función de decision de la forma:! " = $%&'()" + +), with ) ∈ ℝ/

1

x2

x1w1

w2

1 = 2343 + 2545 + +

1 = !(")

" =43451

) =2325+

Page 57: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron

• El perceptron aprende una función de decision de la forma:! " = $%&'()" + +), with ) ∈ ℝ/

1

x2

x1w1

w2

1 = 2343 + 2545 + +

1 = !(")

Page 58: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron

• El perceptron aprende una función de decision de la forma:! " = $%&'()" + +), with ) ∈ ℝ/

Page 59: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron

• Diferentes paramétros resultan en diferentes modelos

Page 60: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron

• Cómo estimar los pesos w?

• El algoritmo de aprendizaje del perceptron

1. w ← randomly initialize weights2. Repeat until stop criterion meet

I. For each !" ∈ $a) '" ← )!" + + // estimate perceptron’s prediction b) ∆) ← .(0" − '") // estimate the rate of changec) ) ← )+∆) //Update w

3. Return w

• Convergencia está garantizada (para problemas linealmente separables)

Intución ?

Page 61: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron en acción

Page 62: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron en acción

Page 63: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El perceptron

• Cómo estimar los pesos w?

• El algoritmo de aprendizaje del perceptron

1. w ← randomly initialize weights2. Repeat until stop criterion meet

I. For each !" ∈ $a) '" ← )!" + + // estimate perceptron’s prediction b) ∆) ← .(0" − '") // estimate the rate of changec) ) ← )+∆) //Update w

3. Return w

• Convergencia está garantizada (para problemas linealmente separables)

Intución ?

Qué pasa si el problema no es linealmente separable?

Page 64: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión logística

• También podemos aprender clasificadores lineales con fundamento probabilista, estimando p(y|x;w), con ! ∈{0,1}

• Queremos estimar la probabilidad de que p(y=1|x;w)

• Asumiendo un modelo lineal de regresión modificado por una sigmoide: • ((! = 1|,;.) = 0(.1,) 0 2 = 1

1 + 456

Page 65: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión logística

?

x1

x2

No Cancer

Cancer

?

0=+× bxw

• Asumiendo un modelo lineal de regresión modificado por una sigmoide: • !(# = 1|';)) = +(),')

• Regla de decisión: - ',) = ! # ',) > 0.5

• Asumiendo: ! # = 1 ',) = Ber(#|+(),'))

Page 66: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión logística

• Aprendizaje de w?• Se calcula el NLL de: ! " #,% = Ber " * %+#• NNL % = −∑0123 log[* %+# 89:;< ×(1 − * %+# )89:;A]• NNL % = −∑0123 log "0 log * %+# + 1 − "0 log 1 − * %+#

Page 67: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Regresión logística

• Aprendizaje de w?• Se calcula el NLL de: ! " #,% = Ber " * %+#• NNL % = −∑0123 log[* %+# 89:;< ×(1 − * %+# )89:;A]• NNL % = −∑0123 log "0 log * %+# + 1 − "0 log 1 − * %+#

• Usar gradiente descendente u otro método para encontrar wCross entropy loss function

Page 68: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Unidades no lineales?

• Un problema con el perceptron es que solopueden aprender funciones lineales. Endatos no linealmente separables soloPodemos esperar un buen ajuste!

• Soluciones?• Mapear los datos a un espacio de mayordimensionalidad donde el problema sealinealmente separable?• Construir modelos no lineales?• ?

Page 69: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Clasificadores lineales

• Únicamente aprenden funciones lineales (aunque pueden generalizarse a espacios no lineales, SVM, NNs)

• Eficientes, interpretables (algunos)

Page 70: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Extensiones?

• Extensión multi clase? Multi etiqueta?• Dimensionalidad y eficiencia?• Ruido en los datos?

Page 71: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Principales métodos de clasificación

• Árboles de decisión• Intuitivo, simple, genera reglas

• Clasificador Bayesiano Ingenuo• Probabilista

• K-Vecinos más cercanos• Basado en similitudes, ejemplos

• Máquinas de soporte vectorial• Basado en kernels

• Ensambles• Combinación de clasificadores individuales

• Redes neuronales• SoTA

Page 72: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

El proceso de diseño de un sistema de reconocimiento de patrones

Atributos

Adquisición de datos

Pre-procesamiento

Extracción de atributos

Clasificación

Ambiente

Decisión

ModeloAprendizaje del

modelo / Estimación

Atributos

Pre-procesamiento

Extracción de atributos

Datos de entrenamiento

Post-procesamiento

Entrenamiento – desarrolloPrueba – evaluación

R. O. Duda, P. Hart, D. Stork. Pattern Classification. Wiley, 2001.

Page 73: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Recap.

• Introducción al aprendizaje supervisado• Requieren ejemplos etiquetados• Aprenden a mapear entradas a salidas deseadas

• Tareas comunes: regresión, clasificación• Objetos se describen por vectores• Modelos lineales

Page 74: 3 intro supervised ml - Coordinación de Ciencias …hugojair/Courses/ML2019/3_intro_supervised… · Extracción de atributos Datosde entrenamiento Post-procesamiento Prueba–evaluación

Preguntas