Regressão Linear Regularizada (Ridg, Lasso e Elastic Net)

professor de matemática

O que é regressão linear e por que regularizar?

Primeiramente, imagine desenhar uma linha reta entre vários pontos. Por conseguinte, essa linha tenta prever um valor (como o preço de uma casa). Esse método chama-se regressão linear simples. Contudo, dados reais costumam ser bagunçados e cheios de variáveis. Assim, o modelo pode ficar complexo demais para os dados. Esse problema é conhecido como overfitting (sobreajuste). Para evitar isso, usamos técnicas de regularização. Dessa forma, elas aplicam “punições” aos coeficientes do modelo. Além disso, o modelo fica mais simples e generalizável. Três métodos populares são Ridge, Lasso e Elastic Net. Cada um age de maneira diferente nos coeficientes. Especialistas usam esses métodos em aprendizado de máquina. Seu principal benefício é melhorar previsões em novos dados. Portanto, a regularização é essencial para modelos confiáveis.

Ridge: encolhendo coeficientes sem zerar

Ridge é a primeira técnica que vamos explorar. Ela adiciona uma penalidade ao quadrado dos coeficientes. Os profissionais chamam essa penalidade de norma L2. O objetivo é encolher todos os coeficientes, mas sem zerá-los. Assim, nenhuma variável sai completamente do modelo. Isso é útil quando todas as variáveis importam um pouco. Por exemplo, dados genéticos ou de sensores se beneficiam disso. A força da penalidade depende de um parâmetro (alpha). Consequentemente, alpha maior produz coeficientes menores. Isso resulta em modelo mais simples e robusto. Uma desvantagem é que Ridge mantém variáveis irrelevantes. Elas ficam perto de zero, mas não exatamente zero. Portanto, isso pode dificultar a interpretação do modelo final. Ainda assim, Ridge evita overfitting severo com eficiência. Muitas situações práticas se beneficiam dessa abordagem.

Lasso: escolhendo variáveis importantes

Lasso usa uma penalidade diferente, chamada norma L1. Ela soma os valores absolutos dos coeficientes. O resultado é que alguns coeficientes viram exatamente zero. Desse modo, Lasso faz seleção automática de variáveis. Variáveis zeradas saem do modelo final completamente. Isso torna o modelo mais simples e fácil de explicar. Por exemplo, marketing com 100 possíveis canais de venda. Lasso descobre quais canais realmente influenciam as vendas. Contudo, Lasso tem uma limitação importante. Se duas variáveis forem muito correlacionadas, ele escolhe uma. A outra variável fica zerada, mesmo que ambas sejam úteis. Além disso, poucos dados podem deixar Lasso instável. A escolha do alpha também exige cuidado e testes. Apesar disso, Lasso é muito usado em dados de alta dimensão.

Elastic Net: o melhor dos dois mundos

Elastic Net combina Ridge e Lasso em um só método. Sua penalidade mistura norma L1 e norma L2. Dois parâmetros controlam essa mistura: alpha e l1ratio. O alpha controla a força total da regularização. Já o l1ratio decide quanto de L1 versus L2 usar. Quando l1ratio é 1, Elastic Net vira Lasso puro. Quando l1ratio é 0, Elastic Net vira Ridge puro. Valores intermediários trazem benefícios de ambos. Por exemplo, ele encolhe coeficientes como Ridge. Mas também zera variáveis menos importantes como Lasso. Além disso, Elastic Net funciona bem com variáveis correlacionadas. Ele mantém grupos de variáveis relevantes juntos normalmente. Por essa razão, os especialistas preferem esse método. Em muitos projetos, Elastic Net supera Ridge e Lasso. Portanto, sua flexibilidade representa uma grande vantagem prática.

Como aplicar esses métodos na prática

Primeiramente, padronize os dados antes de tudo. Isso significa colocar todas as variáveis na mesma escala. Caso contrário, as penalidades seriam aplicadas de forma injusta. Use StandardScaler da biblioteca scikit-learn para isso. Depois, divida os dados em treino e teste. A regularização depende apenas dos dados de treino. Escolha o parâmetro alpha (e l1_ratio) com cuidado. Uma técnica comum é a validação cruzada (cross-validation). Ela testa vários valores e seleciona o melhor. No scikit-learn, existem RidgeCV, LassoCV e ElasticNetCV. Essas classes já implementam a busca automática. Avalie modelos regularizados pelo R² ou MSE. Sempre compare com uma regressão linear sem regularização. Isso mostra se a regularização realmente ajudou. Por fim, interprete os coeficientes com atenção. Eles indicam o impacto de cada variável no resultado. Lembre-se: regularização não resolve todos os problemas. Dados mal coletados ou com poucos exemplos continuam sendo um desafio. Portanto, combine sempre boas práticas de coleta e limpeza. Com esses passos, você estará pronto para usar Ridge, Lasso e Elastic Net.

enunciado: previsão de eficiência energética

Você recebeu um conjunto de dados sobre edifícios. O objetivo é prever a carga de aquecimento (variável alvo). Existem oito características disponíveis:

  • Área relativa do edifício
  • Área do telhado
  • Altura do edifício
  • Tamanho do vidro
  • Distribuição do vidro
  • Orientação (codificada)
  • Área da superfície do telhado
  • Área da superfície da parede

Seu trabalho é construir um modelo de regressão linear regularizado. O modelo deve aprender a relação entre as características e a carga de aquecimento. A arquitetura do modelo é simples: uma combinação linear das entradas. A fórmula da regressão linear é: \(\hat{y} = w_1 x_1 + w_2 x_2 + … + w_n x_n + b\) Onde \(w_i\) são os pesos e \(b\) é o intercepto. A regularização Ridge adiciona uma penalidade à soma dos quadrados dos pesos. Para Ridge, a função de custo é: \(J(w) = \text{MSE}(w) + \alpha \sum_{i=1}^{n} w_i^2\) Para Lasso, a penalidade usa o valor absoluto dos pesos: \(J(w) = \text{MSE}(w) + \alpha \sum_{i=1}^{n} |w_i|\) Elastic Net combina ambas as penalidades: \(J(w) = \text{MSE}(w) + \alpha \cdot \text{l1\_ratio} \sum |w_i| + \alpha \cdot (1 – \text{l1\_ratio}) \sum w_i^2\) Hiperparâmetros importantes:

  • alpha – controla a força da regularização. Quanto maior, mais simples o modelo.
  • l1_ratio (Elastic Net) – mistura entre Lasso (1) e Ridge (0).
  • max_iter – número máximo de iterações para convergência.
  • tol – tolerância para parar o treinamento.

Use validação cruzada para escolher o melhor alpha. Avalie o modelo com o erro quadrático médio (MSE) e o R². Compare os três métodos (Ridge, Lasso, Elastic Net).

Exemplo com Ridge

 

Exemplo com Lasso

 

Exemplo com Elastic Net

 

Polinomial

professor de matemática

curvas que se ajustam à realidade

Regressão polinomial captura relações não lineares entre variáveis usando termos polinomiais. Em vez de uma linha reta, ela cria curvas que se adaptam a padrões mais complexos. Por exemplo, o crescimento populacional frequentemente segue uma curva exponencial, não linear. A equação inclui termos como x², x³, e assim por diante. Primeiramente, transformamos os dados originais adicionando essas novas características polinomiais. Depois, aplicamos os mesmos princípios da regressão linear nesse espaço expandido. Essa técnica permite modelar fenômenos com aceleração, decaimento ou sazonalidade.

grau do polinômio e complexidade

A escolha do grau do polinômio determina a flexibilidade e capacidade do modelo. Grau 1 produz uma linha reta (regressão linear simples tradicional). Grau 2 cria curvas parabólicas que capturam um ponto de máximo ou mínimo. Grau 3 permite curvas com ponto de inflexão e formas mais complexas. Primeiramente, graus mais altos oferecem maior capacidade de ajuste aos dados. Além disso, eles também aumentam o risco de sobreajuste significativo. O equilíbrio entre viés e variância orienta a escolha do grau ideal. Técnicas de validação cruzada ajudam a encontrar esse ponto de equilíbrio.

sobreajuste: o perigo das curvas exageradas

Sobreajuste ocorre quando o modelo se ajusta excessivamente aos ruídos dos dados de treinamento. Polinômios de alto grau podem criar curvas que passam exatamente por todos os pontos. Por exemplo, grau 10 em 11 pontos cria oscilações extremas sem sentido prático. Primeiramente, o modelo perde capacidade de generalização para novos dados não vistos. Além disso, curvas muito complexas não representam fenômenos reais do mundo. Técnicas de regularização adicionam penalidades para coeficientes muito altos no modelo. A validação cruzada revela quando a complexidade adicional deixa de trazer benefícios.

transformação de características na prática

Implementar regressão polinomial requer criar novas características a partir das variáveis originais. Primeiramente, elevamos a variável x às potências desejadas: x², x³, até o grau escolhido. Por exemplo, para grau 3 com variável x, criamos x, x² e x³. Além disso, podemos incluir termos de interação entre diferentes variáveis originais. O algoritmo de regressão linear trata esses novos termos como características independentes. Essa abordagem mantém a simplicidade computacional da regressão linear tradicional. A preparação adequada dos dados é essencial para o sucesso do modelo.

aplicações no mundo real

Regressão polinomial aparece em diversas aplicações onde relações não lineares são evidentes. Primeiramente, previsão de temperatura ao longo do dia segue padrões parabólicos característicos. Além disso, física de projéteis modela trajetórias com equações quadráticas precisas. Na economia, modelos de custo marginal frequentemente apresentam curvas em forma de U. Empresas de energia preveem consumo com padrões sazonais usando termos polinomiais. Na biologia, crescimento de populações segue curvas sigmoides que polinômios aproximam. Para iniciantes, regressão polinomial demonstra como curvas capturam padrões que retas não alcançam. É uma ferramenta poderosa para modelar a complexidade natural dos fenômenos.

Enunciado do Problema

Uma empresa de consultoria deseja criar um modelo preditivo para estimar o salário de funcionários com base nos anos de experiência profissional. Após analisar dados históricos, observou-se que a relação entre experiência e salário não é linear – profissionais mais experientes tendem a ter um crescimento salarial acelerado devido a promoções e especializações.   Objetivo: Desenvolver um modelo de Regressão Polinomial que capture essa relação não-linear e faça previsões precisas de salário para diferentes níveis de experiência. Dados disponíveis: 100 registros de funcionários contendo anos de experiência (0-15 anos) e salário correspondente (com pequenas variações naturais).
 

Características do Modelo de Regressão Polinomial

Relações Não-Lineares

Captura relações curvas entre variáveis, diferente da regressão linear que assume relação reta.

Transformação de Features

Cria novas características através de potências da variável original (X, X², X³, etc.).

Maior Flexibilidade

Consegue ajustar curvas complexas aos dados, melhorando a precisão em problemas reais.

Risco de Overfitting

Graus muito altos podem memorizar ruídos em vez de aprender o padrão geral.

Arquitetura do Modelo

A Regressão Polinomial tem a seguinte estrutura matemática:
f(x) = β₀ + β₁·x + β₂·x² + β₃·x³ + … + βₙ·xⁿ + ε

Para nosso exemplo (Grau 2):

Salário = β₀ + β₁·(Experiência) + β₂·(Experiência)² + erro

β₀ (Intercept)

Salário base quando experiência = 0 (ponto de partida).

β₁ (Coeficiente Linear)

Efeito linear da experiência no salário.

β₂ (Coeficiente Quadrático)

Captura a aceleração do crescimento salarial (curvatura).

ε (Erro)

Variação aleatória não explicada pelo modelo.  

Como funciona internamente:

1. Transforma a variável original X em [X, X², X³, …] 2. Aplica Regressão Linear Múltipla nessas novas features 3. O resultado é uma curva polinomial que se ajusta aos dados

⚙️ Hiperparâmetros do Modelo

Hiperparâmetro Valor no Exemplo Descrição Impacto
degree 2 (testado 1 a 4) Grau do polinômio (potência máxima) Determina a complexidade da curva
include_bias False Incluir ou não termo de bias (intercept) Evita colinearidade com o intercepto
interaction_only False Apenas interações entre features Útil para múltiplas variáveis
fit_intercept True Calcula o intercepto β₀ Permite deslocamento vertical da curva

Como escolher o grau ideal?

Grau 1 (Linear)

Muito simples, pode subajustar (underfitting) dados com curvatura.

Grau 2-3 (Ideal)

Bom equilíbrio entre viés e variância.

Grau Alto (10+)

Risco alto de overfitting – memoriza ruídos.  

📏 Métricas de Avaliação

 

R² (Coef. Determinação)

Mede quanto da variabilidade dos dados é explicada pelo modelo. Intervalo: 0 a 1 (quanto mais perto de 1, melhor)

MSE (Erro Quadrático Médio)

Média dos quadrados dos erros. Quanto menor, melhor – penaliza erros grandes.

RMSE (Raiz do MSE)

Erro na mesma unidade da variável alvo. Exemplo: RMSE = R$ 500 significa erro médio de R$500.  

📈 Resultados Esperados

Ao executar o código, você observará:
  • ✅ O modelo polinomial (grau 2) terá R² superior à regressão linear simples
  • ✅ A curva se ajustará melhor aos dados, capturando o crescimento acelerado
  • ✅ Gráficos mostrando visualmente a diferença entre os modelos
  • ✅ Comparação de diferentes graus para escolher o melhor
 

 Interpretação dos Coeficientes (exemplo):

Salário = 2000 + 500·X + 50·X² → Um funcionário com 5 anos de experiência: 2000 + 2500 + 1250 = R$ 5.750 → Um funcionário com 10 anos: 2000 + 5000 + 5000 = R$ 12.000

 Vantagens e Desvantagens

 

✅ Vantagens

  • Captura relações não-lineares complexas
  • Simples de implementar e interpretar
  • Baseado na regressão linear (computacionalmente eficiente)
  • Funciona bem para problemas com curvatura suave

❌ Desvantagens

  • Sensível a outliers
  • Risco de overfitting com graus altos
  • Não escala bem para muitas variáveis
  • Extrapolações podem ser perigosas
LinkedIn
Share
Instagram