Logistica

professor de matemática
1.1 – Supervisionado
1.1.1 – Regressao
1.1.1.5 – Logistica
LEGENDA
Principal
Ramo
Metodo
Problemas
Modelo
Arquitetura

quando a resposta é uma probabilidade

Regressão logística é um algoritmo de classificação apesar do nome sugerir regressão. Ela estima a probabilidade de um exemplo pertencer a uma determinada categoria. Diferente da regressão linear, a saída está sempre entre 0 e 1. Por exemplo, podemos estimar a probabilidade de um e-mail ser spam. Primeiramente, o modelo usa uma função sigmoide que transforma qualquer valor em probabilidade. Além disso, essa função tem formato de “S”, comprimindo valores extremos. A decisão final usa um limiar (geralmente 0,5) para classificar o resultado.

função sigmoide: o coração do modelo

A função sigmoide transforma combinações lineares de variáveis em probabilidades entre 0 e 1. Sua fórmula matemática é f(z) = 1 / (1 + e^{-z}), onde z é combinação linear. Primeiramente, valores de z muito negativos produzem probabilidades próximas de zero. Além disso, valores de z muito positivos produzem probabilidades próximas de um. Por exemplo, características que indicam spam produzem z positivo e probabilidade alta. O modelo aprende os coeficientes que melhor separam as duas classes. Essa curva em “S” é fundamental para o funcionamento do algoritmo.

fronteiras de decisão

Regressão logística cria fronteiras lineares que separam as diferentes classes no espaço. Para duas dimensões, essa fronteira é uma linha reta no plano cartesiano. Primeiramente, pontos de um lado recebem classificação 0 e do outro lado 1. Além disso, podemos usar transformações polinomiais para criar fronteiras não lineares. Por exemplo, adicionar termos como x² e y² gera círculos como fronteira. A fronteira de decisão ocorre onde a probabilidade prevista é exatamente 0,5. Essa visualização ajuda a entender como o modelo faz classificações.

avaliando classificadores binários

Avaliar regressão logística exige métricas específicas para classificação binária. Primeiramente, acurácia mede a proporção de acertos entre todas as previsões realizadas. Além disso, precisão indica quantos positivos previstos estavam corretos. Recall mostra quantos positivos reais conseguimos capturar corretamente. Curva ROC e AUC ajudam a avaliar o desempenho em diferentes limiares. Primeiramente, AUC próximo de 1 indica excelente capacidade de separação entre classes. Matriz de confusão organiza acertos e erros em quatro categorias distintas. Essas métricas oferecem visão completa do desempenho do modelo.

aplicações no mundo real

Regressão logística é amplamente utilizada em problemas de classificação binária diversos. Primeiramente, bancos usam para prever inadimplência em empréstimos concedidos a clientes. Além disso, hospitais empregam para diagnosticar doenças com base em exames. Marketing utiliza para prever quais clientes responderão a campanhas promocionais. Recursos humanos aplicam para prever rotatividade de funcionários na empresa. Sistemas antifraude usam para identificar transações suspeitas em tempo real. Para iniciantes, regressão logística é a porta de entrada para classificação supervisionada. É simples, interpretável e eficaz para muitos problemas práticos do cotidiano.

Contexto do Problema

Uma clínica médica deseja prever se um paciente tem diabetes com base em dois atributos: glicose (mg/dL) e IMC (kg/m²). Utilize a Regressão Logística para construir um modelo classificador.

Características do Modelo

  • Tipo: Modelo de classificação binária supervisionada
  • Função de ativação: Sigmóide (Logística)
  • Saída: Probabilidade entre 0 e 1
  • Decisão: Classe 1 se P ≥ 0.5, senão Classe 0
  • Limitação: Assume linearidade nos log-odds

Arquitetura do Modelo

A Regressão Logística é um modelo linear com uma única camada: \[ z = w_1 x_1 + w_2 x_2 + b \] \[ \hat{y} = \sigma(z) = \frac{1}{1 + e^{-z}} \] Onde:
  • \(x_1, x_2\): características de entrada (glicose, IMC)
  • \(w_1, w_2\): pesos do modelo
  • \(b\): viés (bias)
  • \(\hat{y}\): probabilidade prevista da classe positiva

Hiperparâmetros

  • C (regularização inversa): \(C = \frac{1}{\lambda}\) (padrão=1.0). Valores menores aumentam a regularização. Controle de overfitting através da regularização L2.
  • penalty: Tipo de regularização (‘l1’, ‘l2’, ‘elasticnet’ ou None)
  • max_iter: Número máximo de iterações para convergência (padrão=100)
  • solver: Algoritmo de otimização (‘lbfgs’, ‘liblinear’, ‘newton-cg’, ‘sag’, ‘saga’)
  • tol: Tolerância para critério de parada (padrão=1e-4)

Função de Custo (Log-Loss)

\[ J(\mathbf{w}) = -\frac{1}{m} \sum_{i=1}^{m} [y^{(i)} \log(\hat{y}^{(i)}) + (1-y^{(i)}) \log(1-\hat{y}^{(i)})] \]

Tarefa

Implemente um modelo de Regressão Logística para classificar pacientes com diabetes. Utilize os dados sintéticos fornecidos e avalie o modelo com acurácia e matriz de confusão. Visualize a fronteira de decisão no espaço 2D.  

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

professor de matemática
1.1 – Supervisionado
1.1.1 – Regressao
1.1.1.4 – Ridge, Lasso, Elastic Net
LEGENDA
Principal
Ramo
Metodo
Problemas
Modelo
Arquitetura

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