Inteligencia
Artificial
REGRESIÓN LINEAL CEIA - FIUBA
Dr. Ing. Facundo
Adrián Lucianna
LO QUE VIMOS LA CLASE ANTERIOR…
APRENDIZAJE AUTOMÁTICO
Aprendizaje automático se entiende a:
Una computadora observa algunos datos, construye un
modelo basado en estos datos, y usa el modelo como
una hipótesis sobre el mundo y como una pieza de
software que puede resolver problemas.
¿Pero porque queremos que una computadora aprenda?
¿Por qué no programar el modelo directamente?
• No se puede anticipar todas las posibles situaciones
futuras.
• No se tiene idea de cómo programar una solución por
uno mismo.
Inteligencia Artificial – CEIA – FIUBA 3
DATOS
Lo más importante en Aprendizaje Automático (y en Data Science en general) son los
Datos
Nos permite describir un objeto al que podemos llamar entidad.
Esta entidad y su información puede ser diferente a pesar de que describa un mismo objeto.
La forma en que se elija representar los datos no solo afecta la forma en que se construyen
sus sistemas, sino también los problemas que sus sistemas pueden resolver.
Por ejemplo, queremos representar un auto:
• En un problema para compra y venta de autos, podemos representarlo con el fabricante,
modelo, año, color, y su precio.
• En un problema de un sistema de seguimiento policial, podemos representarlo por quien es
el dueño, patente y su historia de direcciones registradas.
Inteligencia Artificial – CEIA – FIUBA 4
DATOS
Atributos/features Objetivo
Position Experience Skill Country City Salary ($)
Observación Developer 0 1 Argentina Buenos Aires 103100
Data Scientist 2 2 Uruguay Montevideo 104900
Developer 3 1 Argentina Chivilcoy 106800
QA Eng 2 2 Colombia Bogotá 108700
Product 1 5 Perú Lima 110400
Manager
Developer 7 5 Paraguay Asunción 112300
Cloud Eng 5 2 Argentina Buenos Aires 116100
Inteligencia Artificial – CEIA – FIUBA 5
FORMAS DE APRENDIZAJE
Un esquema de aplicar Aprendizaje Automático nos queda…
Subset Entrenamos
entrenamien
to
Modelo
h(X)
ypred
Población Predecimos
Inteligencia Artificial – CEIA – FIUBA 6
FORMAS DE APRENDIZAJE
Tipos de aprendizajes
• Aprendizaje supervisado: El modelo observa pares de entradas-salidas y aprende la
relación entre ellos. Es decir, en este tipo de aprendizaje, conocemos el valor de y y se lo
enseñamos al modelo.
• Aprendizaje no supervisado: El modelo aprende patrones de la entrada sin ninguna
retroalimentación. Es decir, no contamos con y de antemano.
• Aprendizaje por refuerzo: El agente aprende con una serie de refuerzos: recompensas y
castigos. Depende del agente decidir cuál de las acciones anteriores al refuerzo fue la más
responsable de él y modificar sus acciones para apuntar a más recompensas en el futuro.
Inteligencia Artificial – CEIA – FIUBA 7
APRENDIZAJE SUPERVISADO
Generalización
Entrenamient
Pre-procesamiento Evaluación Predicción
o
Datos
Set Nuevos
entrenamie datos
crudos nto Modelo de Modelo
ML entrenado
Label Set
evaluación Label
Inteligencia Artificial – CEIA – FIUBA 8
SESGO Y VARIANZA
Inteligencia Artificial – CEIA – FIUBA 9
SESGO Y VARIANZA
Como regla general,
• Cuando más complejo es el modelo, la varianza
va a aumentar y el sesgo va a disminuir.
• Cuando aumentamos la complejidad de este, el
sesgo tiende a disminuir más rápido de lo que
la variabilidad aumenta, disminuyendo el error.
• Llega un punto en donde el efecto de la
variabilidad es apreciable, aumentando el valor
del error de nuevo.
Inteligencia Artificial – CEIA – FIUBA 10
MÉTRICAS DE CLASIFICACIÓN
Entonces, es importante para saber si el clasificador binario es bueno o malo, entender cómo se
puede equivocar.
Supongamos que, si el clasificador dice que es SPAM, entonces la salida es positiva, y si no es
negativo, con eso podemos tener los siguientes casos en comparación con el verdadero valor
Valor verdadero
Salida del clasificador
Verdadero Falso
positivo (TP) positivo (FP)
Falso Verdadero
negativo negativo
(FN) (TN)
Esta estructura se llama matriz de confusión
Inteligencia Artificial – CEIA – FIUBA 11
MÉTRICAS DE CLASIFICACIÓN
Matriz de confusión
• Verdadero positivo: Es aquellas observaciones que clasificamos
como 1 y que realmente eran 1.
• Verdadero negativo: Es aquellas observaciones que clasificamos
como 0 y que realmente eran 0.
• Falso positivo: Es aquellas observaciones que clasificamos como
1 y que realmente eran 0. Este tipo de error se llaman de tipo I.
• Falso negativo: Es aquellas observaciones que clasificamos como
0 y que realmente eran 1. Este tipo de error se llaman de tipo II.
Inteligencia Artificial – CEIA – FIUBA 12
REGRESIÓN
REGRESIÓN
Si tenemos un problema donde el target y es una
variable numerica, se llama un problema de
regresión.
Se centra en estudiar las relaciones entre una
variable dependiente de una o más variables
independientes.
Es importante notar que, en Aprendizaje
Automático, cuando buscamos una h(X) estamos
armando un modelo puramente empírico. Es
decir, nos basamos 100% en los datos medidos.
En contraste con los modelos basados en
propiedades fundamentales.
Inteligencia Artificial – CEIA – FIUBA 14
REGRESIÓN LINEAL
REGRESIÓN LINEAL
El modelo de regresión lineal más simple es el que involucra una
combinación lineal de las variables de entradas:
Son los features de nuestras observaciones. Son todas variables numéricas
Son los coeficientes del modelo. Son números reales. Cuanto más cerca de
cero,
la variable dependiente depende menos del feature que multiplica.
Es la predicción del modelo. Es con quien comparamos con el Label de la
observación
Inteligencia Artificial – CEIA – FIUBA 16
REGRESIÓN LINEAL
Vamos al caso más sencillo, la regresión lineal de una sola variable
independiente:
(w0)
(b)
(x0)
Inteligencia Artificial – CEIA – FIUBA 17
REGRESIÓN LINEAL
Regresión lineal es parte de una subárea de aprendizaje automático
llamada aprendizaje estadístico, donde:
• Se enfoca en el estudio de modelos estadísticos y métodos para
analizar y entender los datos.
• Utiliza herramientas y técnicas estadísticas clásicas para hacer
inferencias y tomar decisiones basadas en los datos.
• El enfoque principal puede ser la estimación de parámetros, la
predicción o la inferencia sobre la relación entre variables.
Inteligencia Artificial – CEIA – FIUBA 18
REGRESIÓN LINEAL
¿Ahora cuál recta?
(x0)
Inteligencia Artificial – CEIA – FIUBA 19
REGRESIÓN LINEAL
Para encontrarla, medimos la distancia entre la recta y cada punto,
que llamamos residuos.
𝑒 [𝑖 ]=𝑦 [ 𝑖] − ^
𝑦[ 𝑖]
(x0)
Inteligencia Artificial – CEIA – FIUBA 20
REGRESIÓN LINEAL
Buscamos minimizar el valor de los residuos. Para lograr esto, lo
hacemos minimizando la suma de los cuadrados de los residuos.
𝑁−1 𝑁 −1
𝑆 𝑅 = ∑ ( 𝑒 [𝑖]) 2= ∑ ( 𝑦 [ 𝑖] − 𝑏 −𝑤 0 𝑥 0[ 𝑖]) 2
𝑖=0 𝑖=0
( )
𝑁 −1
min (𝑆 𝑅 )=min ∑ ( 𝑒[𝑖 ] )2
𝑖= 0
Para minimizar, solo podemos tocar los coeficientes. Lo que
hacemos es ir por el gradiente.
𝜕 𝑆𝑅 𝜕 𝑆𝑅
=0 =0
𝜕𝑏 𝜕 𝑤0
(x0)
Inteligencia Artificial – CEIA – FIUBA 21
REGRESIÓN LINEAL
SR en regresión lineal es siempre convexa, es decir que siempre tiene un
solo mínimo. En su forma tradicional,
𝜕 𝑆𝑅 𝜕 𝑆𝑅
=0 =0
𝜕𝑏 𝜕 𝑤0
Si planteamos las derivadas, obtenemos un sistema de ecuación, llamado
ecuaciones normales. Si se resuelve este sistema se encuentra la
solución.
El problema es que cuando tenemos muchos datos, resolver el sistema es
muy difícil, ¡en esos casos podemos usar gradiente descendiente!
Inteligencia Artificial – CEIA – FIUBA 22
REGRESIÓN LINEAL
Inteligencia Artificial – CEIA – FIUBA 23
REGRESIÓN LINEAL
En todo este proceso, hemos obviado una suposición importante
con respecto a los residuos, por el que aplicar mínimos cuadrados
funciona,…
Para simplificar, pasemos a notación matricial
Inteligencia Artificial – CEIA – FIUBA 24
REGRESIÓN LINEAL
Dado que el residuo tiene una distribución normal, la verosimilitud de
ver un y particular dado un X particular:
Y podemos encontrar los parámetros W y b usando el principio de
máxima verosimilitud, buscándolos aquel que maximiza la
verosimilitud para todo el dataset:
Esto se cumple porque todos los pares (X[i], y[i]) se asumen que
independientes e idénticamente distribuidas.
Inteligencia Artificial – CEIA – FIUBA 25
REGRESIÓN LINEAL
Estimador elegidos de acuerdo a este principio, se llaman estimadores de máxima
verosimilitud. Maximizar una función de productos es realmente difícil, sobre todo si
es compuesta de exponenciales. Esto lo podemos simplificar si minimizamos el
logaritmo de la verosimilitud:
Si asumimos que todos los residuos tienen la misma varianza 𝜎, se puede ignorar
el primer término. El segundo termino es igual al de mínimos cuadrados multiplicado
por una constante.
Por lo que minimizar por cuadrados mínimos es equivalente a usar un estimador de
máxima verosimilitud bajo la suposición que el residuo proviene de ruido gaussiano
aditivo.
Inteligencia Artificial – CEIA – FIUBA 26
REGRESIÓN LINEAL
Ajuste
¿Como hacemos para medir que tan bien se ajusta una regresión a
nuestros datos?
Si medimos la varianza de la variable dependiente de los datos:
Esta varianza la podemos separar en dos partes, una parte que es
dada por el modelo y una que no:
=
Parte que explica el Parte que no (residuos)
modelo
Inteligencia Artificial – CEIA – FIUBA 27
REGRESIÓN LINEAL
Ajuste
Inteligencia Artificial – CEIA – FIUBA 28
REGRESIÓN LINEAL
Ajuste
Como métricas, podemos usar:
• El cálculo del desvío estándar del modelo:
Donde d es la cantidad de features.
• Coeficiente de Pearson (cuando más cerca de 1 mejor ajuste, es
decir residuos más chicos):
Inteligencia Artificial – CEIA – FIUBA 29
REGRESIÓN LINEAL
Ajuste
El valor del coeficiente de Pearson no es una metrica muy buena (a pesar de
su popularidad). Todo dependerá de que hace que genera el valor de residuo:
• Si la relación entre la variable independiente y dependiente es realmente
lineal, y se cumplen las suposiciones, el residuo es Por lo que depende de
cómo se tomaron los datos y la varianza de la distribución normal. Por
ejemplo, en registro de temperatura, si el termómetro es de mala calidad,
esperamos tener una mayor variación, por lo que el coeficiente podría ser
bajo, pero sin ser culpa del modelo.
• Si la relación no es lineal, el valor del coeficiente de Pearson nos va a
indicar que el modelo es malo.
Inteligencia Artificial – CEIA – FIUBA 30
REGRESIÓN LINEAL
Ajuste
Inteligencia Artificial – CEIA – FIUBA 31
REGRESIÓN LINEAL
Suposiciones
Las suposiciones que usamos para poder aplicar regresión lineal son:
• Relación lineal: Lógicamente, y esto muchas veces al aplicar el
modelo buscamos validar.
• Features independientes: Los features de entrada de la regresión
deben ser independientes entre sí.
• Homocedasticidad: Es decir, el valor de SE se mantiene igual en toda
parte de la recta
• Errores independientes: Los errores entre si no están
correlacionados.
Inteligencia Artificial – CEIA – FIUBA 32
REGRESIÓN LINEAL
¿Qué pasa si queremos ver relaciones no
lineales?
Un truco es adaptar la regresión lineal a relaciones no lineales es transformar los datos usando funciones
bases.
La idea es tomar un modelo linear multidimensional:
Y construir a x1, x2, …, de una entrada de una sola dimensión x 0.
Por ejemplo, si hacemos , nuestro modelo se transforma en una regresión polinómica:
No solo podemos usar funciones polinómicas, sino que cualquier otra función.
Este tema no lo vamos a explorar, pero se puede profundizar como introducción el capítulo 5 de Python Data
Science Handbook de Jake VanderPlas y el capítulo 7 de An Introduction to Statistical Learning de Gareth James
Inteligencia Artificial – CEIA – FIUBA 33
MÉTRICAS DE EVALUACIÓN
MÉTRICAS DE EVALUACIÓN
Como vimos la clase anterior, cuando armamos el modelo, al dataset lo
separamos en una parte usada para entrenar el modelo y la parte de
evaluación. El conjunto de datos de evaluación se utiliza para evaluar qué
tan bien se entrenó el algoritmo con el conjunto de datos de entrenamiento.
¿Pero cómo evaluamos?
• El coeficiente de Pearson (R2). Aunque no es el mejor caso.
Podemos usar métricas más generales, métricas que midan error de
variables numéricas que se pueda aplicar también a otros tipos de casos,
como por ejemplo forecasting en series de tiempo.
Inteligencia Artificial – CEIA – FIUBA 35
MÉTRICAS DE EVALUACIÓN
Error absoluto medio (MAE)
El error absoluto medio (MAE) es el cálculo del valor absoluto
del residuo para cada punto de datos, para que los residuos
negativos y positivos no se cancelen. Luego tomamos el promedio
de todos estos residuos.
Debido a que utilizamos el valor absoluto del residuo, MAE no indica
si el modelo sobreestima o subestima.
Inteligencia Artificial – CEIA – FIUBA 36
MÉTRICAS DE EVALUACIÓN
Error cuadrático medio (MSE)
El error cuadrático medio (MSE) es similar al MAE, pero ahora
calculamos el cuadrado de los residuos. Esto es similar a lo que se
usamos para encontrar los coeficientes.
MSE siempre es mayor a MAE. Un detalle importante son aquellos
residuos grandes (outliers), en esta métrica aporta más que en
MAE. En MAE el aporte es proporcional al valor del residuo, pero
aquí es cuadráticamente más grande.
Inteligencia Artificial – CEIA – FIUBA 37
MÉTRICAS DE EVALUACIÓN
Raíz cuadrada del error cuadrático medio
(RMSE)
Si al MSE le calculamos la raíz, tendremos una métrica llamada
RMSE que tiene la misma unidad de la salida original, donde el
MSE no. El RMSE es análogo al desvío estándar.
Inteligencia Artificial – CEIA – FIUBA 38
MÉTRICAS DE EVALUACIÓN
Outliers
Valores atípicos es una constante de discusión. ¿Se incluyen o no?
La respuesta dependerá del problema en particular, de los datos
disponibles y las consecuencias que hay si se consideran o no.
Si quiero tenerlo en cuenta a la hora de comparar modelos, me va a
convenir usar MSE, en cambio sí quiero reducir su importancia,
puedo usar MAE.
Ambas son métricas de error viables, pero describen diferentes
matices sobre los errores de predicción.
Inteligencia Artificial – CEIA – FIUBA 39
MÉTRICAS DE EVALUACIÓN
Error absoluto porcentual medio (MAPE)
El error absoluto porcentual medio (MAPE) es el cálculo del error
MAE, pero escalado al verdadero valor, por lo que el resultado es
porcentual
No es una métrica buena porque es susceptible a errores numéricos. No
puede calcularse cuando y[i] vale cero. Y además tiene sesgo para cuando
la predicción subestima:
Inteligencia Artificial – CEIA – FIUBA 40
MÉTRICAS DE EVALUACIÓN
Error porcentual medio (MPE)
El error porcentual medio (MPE) es el cálculo del error MAPE,
pero ahora no calculamos el valor absoluto
Aunque la falta de valor absoluto puede ser problemático ya que
puede cancelar términos, nos permite saber si:
• El modelo subestima
• El modelo sobreestima
Inteligencia Artificial – CEIA – FIUBA 41
TRATAMIENTO DE VARIABLES
TRATAMIENTO DE VARIABLES
Normalización o estandarización
En la regresión lineal, tenemos la multiplicación de coeficientes por nuestras entradas:
Los coeficientes nos dan un valor de importancia de las entradas. Pero esto si todas
las entradas están en la misma escala.
Si la variable x0 está en rango de [1000, 3000] y x1 en [-1, 1], los valores de w0 y w1 van
a ser de diferentes escalas, y por consiguiente no comparables.
Además, aunque la regresión lineal no presenta problemas de escalas, valores muy
diferentes nos pueden introducir errores numéricos. Otro tipo de regresiones o
clasificadores si o si necesitan escalas, por lo que debemos normalizar o estandarizar.
Inteligencia Artificial – CEIA – FIUBA 43
TRATAMIENTO DE VARIABLES
Normalización o estandarización
Una forma de normalizar es hacer que los valores estén entre 0 y 1, tomando el máximo
y el mínimo.
Esta fórmula se usa cuando la distribución de datos no es normal. Pero cuando nuestros
datos tienen una distribución normal, como la suposición en regresión lineal, se aplica
estandarización:
Donde ahora hacemos que la distribución tenga medio cero y desvío estándar uno.
Con estos escalados, ahora los parámetros tendrán sentido entre sí.
Mas detalles los verán en: Análisis de datos
Inteligencia Artificial – CEIA – FIUBA 44
TRATAMIENTO DE VARIABLES
Variables Dummies
Como vimos, regresión utiliza variables numéricas para predecir un valor. ¿Como
podemos hacer para usar variables categóricas?
Para poder usarlos, debemos transformarlos en numéricas mediante alguna
codificación.
Cuando tenemos variables categóricas ordinales, podemos asociar un número.
Por ejemplo, si tenemos que usar casos como : “me gusta mucho”, “me gusta poco”,
“neutral”, “no me gusta poco”…
Se puede usar números enteros, teniendo en cuenta el orden para darle importancia.
Estará en la creatividad de quien lo hace para determinar si las distancias son
equidistantes o no.
Inteligencia Artificial – CEIA – FIUBA 45
TRATAMIENTO DE VARIABLES
Variables Dummies
Ahora si tenemos casos nominales no podemos asociar números, porque al
hacerlo, establecemos un orden.
Para este tipo de variable existe one-hot encoding.
Al usar esta codificación, creamos nuevos atributos de acuerdo con la cantidad de
clases presentes en la variable categórica, es decir, si hay n número de categorías,
se crearán n nuevos atributos. Estos atributos creados se denominan variables
dummies.
Inteligencia Artificial – CEIA – FIUBA 46
TRATAMIENTO DE VARIABLES
Variables Dummies
Peso Altura País
80 180 Argentina
83 177 Chile
75 169 Chile
68 155 Argentina
Inteligencia Artificial – CEIA – FIUBA 47
TRATAMIENTO DE VARIABLES
Variables Dummies
Peso Altura País arg chile
80 180 Argentina 1 0
83 177 Chile 0 1
75 169 Chile 0 1
68 155 Argentina 1 0
Inteligencia Artificial – CEIA – FIUBA 48
TRATAMIENTO DE VARIABLES
Variables Dummies
Peso Altura arg chile
80 180 1 0
83 177 0 1
75 169 0 1
68 155 1 0
Inteligencia Artificial – CEIA – FIUBA 49
TRATAMIENTO DE VARIABLES
Variables Dummies
Como vimos, one-hot enconding nos genera un nuevo atributo por categoría, pero esto
nos genera una trampa
Si vemos el ejemplo, las dos variables que estamos usando están 100% correlacionadas
entre sí:
𝑥 𝑐h𝑖𝑙𝑒=1 − 𝑥 𝑎𝑟𝑔
Para solucionar esto es quitar siempre quitar una columna para romper la trampa.
Inteligencia Artificial – CEIA – FIUBA 50
TRATAMIENTO DE VARIABLES
Variables Dummies
Peso Altura arg
80 180 1
83 177 0
75 169 0
68 155 1
Inteligencia Artificial – CEIA – FIUBA 51
REGRESIÓN LINEAL
Vamos a practicar un poco…
Inteligencia Artificial – CEIA – FIUBA 52
CONSTRUCCIÓN DE UN MODELO
CONSTRUCCIÓN DE UN MODELO
¿Cuándo construimos un modelo de regresión múltiple, como hacemos para elegir
los features que formarán parte del modelo?
Ver la correlación entre variables es un primer paso, pero surge la pregunta, si dos
variables estas correlacionadas, ¿cuál de las dos descarto?
Por lo que hay diferentes métodos de construir un modelo.
Inteligencia Artificial – CEIA – FIUBA 54
CONSTRUCCIÓN DE UN MODELO
Podemos mencionar 4 formas:
• Exhaustivo
• Eliminación hacia atrás
• Selección hacia adelante
• Eliminación bidireccional
Inteligencia Artificial – CEIA – FIUBA 55
CONSTRUCCIÓN DE UN MODELO
Exhaustivo (all-in)
Este es el caso más sencillo, usamos todas las variables. En qué casos conviene
usar esta forma es cuando tenemos conocimiento a priori, o una necesidad
especifica.
x1 x2
x0 y x3
Inteligencia Artificial – CEIA – FIUBA 56
CONSTRUCCIÓN DE UN MODELO
Eliminación hacia atrás
• Se arranca con un modelo completo con todas las variables.
• Se va eliminado de forma greedy, variables de entrada que menos
“aportan” el modelo de una por vez.
• Se continua hasta que eliminar variables no mejore
significativamente el modelo.
• La forma que se puede realizar es con alguna métrica que nos mida
la información que aporta cada variable.
Inteligencia Artificial – CEIA – FIUBA 57
CONSTRUCCIÓN DE UN MODELO
Selección hacia adelante
• Comienza con un modelo vacío con solo la ordenada al origen.
• Luego se agrega las variables que más aporta al modelo (usando el
criterio de ajuste) de una por vez.
• Se termina una vez que agregar más variables no genera mejor
aporte.
Inteligencia Artificial – CEIA – FIUBA 58
CONSTRUCCIÓN DE UN MODELO
Eliminación bidireccional
• Es en esencia la selección hacia adelante, pero dando la posibilidad
de quitar variables en cada iteración cuando se observa correlación
entre variables.
Inteligencia Artificial – CEIA – FIUBA 59
CONSTRUCCIÓN DE UN MODELO
Como hacemos para saber el aporte de cada
atributo
• Bondad de ajuste: Se realiza un test de hipótesis si el coeficiente de
una entrada en particular es cero. Luego se evalúa el valor de p. Un
valor p bajo (< 0,05) indica que se puede rechazar la hipótesis nula,
indicando que cambios en esta variable es probable que genere
cambios en la respuesta.
• Coeficiente de Pearson ajustado: El cual es el R2 pero penalizando
la complejidad del modelo:
Donde N es número de observaciones y d es el número de atributos.
Inteligencia Artificial – CEIA – FIUBA 60
CONSTRUCCIÓN DE UN MODELO
Como hacemos para saber el aporte de cada
atributo
• Criterio de Información de Aikake (AIC): AIC maneja un equilibrio entre la
bondad de ajuste del modelo y la complejidad del modelo. En otras palabras, AIC
aborda tanto el riesgo de sobre-ajuste como el riesgo sub-ajuste.
Donde es el logaritmo de la estimación de máxima similitud. Este valor se obtiene
√
como:
𝑆𝐸
𝜎= 𝑐𝑜𝑛 𝑁 ≫ 𝑑
𝑁
𝑁−1
𝑆 𝐸 = ∑ ( 𝑦 [ 𝑖] −𝑾 𝑿 [𝑖] − 𝑏 )
𝑇 2
𝑖=0
El valor de AIC cuando es más bajo, es mejor.
Inteligencia Artificial – CEIA – FIUBA 61
CONSTRUCCIÓN DE UN MODELO
Como hacemos para saber el aporte de cada
atributo
• Criterio de información bayesiano (BIC): Se basa en el principio
de la navaja de Occam, que establece que es preferible el modelo
más simple que explique los datos. A diferencia del AIC, BIC
penaliza más el modelo por su complejidad
El valor de BIC cuando es más bajo es mejor.
Inteligencia Artificial – CEIA – FIUBA 62
REGRESIÓN LASSO Y RIDGE
REGRESIÓN DE RIDGE Y LASSO
Como hacemos para saber el aporte de cada
atributo
Cuando se trata de entrenar modelos, nos podemos encontrar como problemas de
sobreajuste, podemos implementar algún método de regularización.
Con estos métodos de regularización podemos ajustar un modelo que contenga todos
los atributos utilizando una técnica que restrinja o regularice las estimaciones de los
coeficientes o, de manera equivalente, que reduzca las estimaciones de los coeficientes
hacia cero.
Puede que no sea inmediatamente obvio por qué tal restricción debería mejorar el
ajuste, pero resulta que reducir las estimaciones de los coeficientes puede reducir
significativamente su varianza.
Las dos técnicas más conocidas para reducir los coeficientes de regresión a cero son la
regresión de Ridge y la de Lasso.
Inteligencia Artificial – CEIA – FIUBA 64
REGRESIÓN DE RIDGE
En la regresión lineal, vimos que se buscaba los coeficientes que
minimizaban la suma de los residuos al cuadrado. La regresión de
Ridge es muy similar, pero excepto que los coeficientes se estiman
minimizando una cantidad ligeramente diferente:
Donde es un hiper-parámetro de ajuste.
Inteligencia Artificial – CEIA – FIUBA 65
REGRESIÓN DE RIDGE
En esta regresión, se busca los coeficientes que minimizan S E. Sin embargo, el
segundo termino:
Llamado el termino de penalización por encogimiento. Este es pequeño cuando los
coeficientes están cerca de cero.
funciona de control al impacto relativo de ambos términos. Cuando = 0, es una
regresión normal. En cambio, si crece, el impacto de termino de penalización crece, y
los coeficientes se acercan a cero.
La regresión de Ridge genera un set de coeficientes por cada valor de . Seleccionar
un valor de es difícil, y se deben usar métodos de validación cruzada.
Inteligencia Artificial – CEIA – FIUBA 66
REGRESIÓN DE RIDGE
Notese que la penalización no toca la ordenada al origen b. Si es ∞,
todos los coeficientes son cero y b nos queda:
Inteligencia Artificial – CEIA – FIUBA 67
REGRESIÓN DE RIDGE
0
1
2
3
Inteligencia Artificial – CEIA – FIUBA 68
REGRESIÓN DE RIDGE
¿Para qué nos sirve?
La ventaja de la regresión de Ridge sobre la regresión lineal de mínimos cuadrados tiene
su origen en el equilibrio entre sesgo y varianza. A medida que aumenta, la flexibilidad
del ajuste disminuye, lo que lleva a una menor varianza, pero a un mayor sesgo.
D
D
D
d
𝛼
Inteligencia Artificial – CEIA – FIUBA 69
REGRESIÓN DE RIDGE
¿Para qué nos sirve?
En general, cuando la verdadera relación es lineal, la regresión lineal tiene mucha
varianza. Esto principalmente ocurre cuando el número de observaciones es cercano
al número de coeficientes. En estos casos, la regresión de Ridge funciona mejor.
D
D
D
d
𝛼
Inteligencia Artificial – CEIA – FIUBA 70
REGRESIÓN DE LASSO
La regresión de Ridge, a priori, nos parece interesante para hacer una selección de modelo,
ya que, jugando con podemos ver si algún coeficiente se hace cero:
0
1
2
3
d 𝛼
Inteligencia Artificial – CEIA – FIUBA 71
REGRESIÓN DE LASSO
La regresión de Ridge, a priori, nos parece interesante para hacer una selección de modelo,
ya que, jugando con podemos ver si algún coeficiente se hace cero:
0 El problema es que los coeficientes se achican a
1
2 cero, pero no se hacen cero, salvo que sea infinito.
3
Por lo que no podemos eliminar atributos.
d 𝛼
Inteligencia Artificial – CEIA – FIUBA 72
REGRESIÓN DE LASSO
La regresión de Lasso cubre esta desventaja:
Es decir, la regresión de Lasso usa una penalización L1, mientras que
Ridge usa una penalización L2.
Inteligencia Artificial – CEIA – FIUBA 73
REGRESIÓN DE LASSO
Esta regresión cuando crece, algunos coeficientes se hacen exactamente cero.
Por lo que Lasso realiza una selección de atributos.
0
1
2
3
d 𝛼
Inteligencia Artificial – CEIA – FIUBA 74
REGRESIÓN DE LASSO
¿Para qué nos sirve?
Para entender porque esto ocurre, debemos reescribir a las
regresiones de otra forma equivalente:
Regresión Lasso
Regresión Ridge
Inteligencia Artificial – CEIA – FIUBA 75
REGRESIÓN DE LASSO
¿Para qué nos sirve?
Veamos el efecto de la penalización en un caso de 2 atributos (d=2):
1 1
Regresión Lasso Regresión Ridge
|𝑤 0|+|𝑤1|≤ 𝑠 2
𝑤 +𝑤 ≤ 𝑠
0
2
1
0 0
D
d
Inteligencia Artificial – CEIA – FIUBA 76
REGRESIÓN DE LASSO
¿Para qué nos sirve?
Veamos el efecto de la penalización en un caso de 2 atributos (d=2):
Regresión Lasso Regresión Ridge
1 1
D 0 0
d | 0| | 1|
𝑤 + 𝑤 ≤𝑠
𝑤20 + 𝑤21 ≤ 𝑠
Inteligencia Artificial – CEIA – FIUBA 77
REGRESIÓN DE LASSO
Vamos a practicar un poco…
Inteligencia Artificial – CEIA – FIUBA 78