Linear Regression
A regressão linear prevê um número como uma soma ponderada de características ajustada por mínimos quadrados. Como funciona, os seus pressupostos, variantes e código Python.
A regressão linear é um método de aprendizado supervisionado que prevê um valor contínuo, como um preço, uma temperatura ou a procura do próximo mês, através de uma soma ponderada das características de entrada mais uma constante. Com uma característica, ajusta uma linha reta, ŷ = w·x + b; com várias, ajusta um plano ou hiperplano, ŷ = w₁x₁ + w₂x₂ + … + wₙxₙ + b. Adrien-Marie Legendre publicou em 1805 o método dos mínimos quadrados usado para a ajustar, e Carl Friedrich Gauss publicou a sua própria descrição em 1809. Continua a ser o primeiro modelo habitual para modelação preditiva numérica porque é treinado em milissegundos, funciona com poucos dados e cada peso indica quanto a previsão se altera por unidade da respetiva característica.
Como funciona a regressão linear#
O treino escolhe os pesos e a ordenada na origem que aproximam o máximo possível as previsões dos valores-alvo verdadeiros nos dados de treino. Os mínimos quadrados ordinários medem a proximidade como a soma dos resíduos ao quadrado, ou seja, as diferenças entre os valores-alvo e as previsões; isto equivale a minimizar o erro quadrático médio (MSE), a função de perda padrão para regressão. O erro quadrático torna a perda numa curva suave com um único mínimo; por isso, os melhores pesos têm uma solução em forma fechada, a equação normal w = (XᵀX)⁻¹Xᵀy, que as bibliotecas calculam com fatorizações matriciais estáveis, como QR ou SVD, em vez de uma inversa explícita. Em conjuntos de dados demasiado grandes para esse método, a descida do gradiente ou a descida do gradiente estocástico chega iterativamente aos mesmos pesos e converge mais depressa quando as características são padronizadas para escalas semelhantes.
Cada peso indica a alteração da previsão por cada aumento de uma unidade na respetiva característica, mantendo as restantes constantes, o que facilita a auditoria do modelo. O estimador LinearRegression do scikit-learn ajusta os mínimos quadrados ordinários, e este exemplo gera preços de casas a partir de coeficientes conhecidos e verifica a proximidade dos valores ajustados:
import numpy as np
from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score
from sklearn.model_selection import train_test_split
# 500 synthetic homes: price = $50,000 + $150 per sq ft - $2,000 per year of age + noise
rng = np.random.default_rng(0)
X = np.column_stack([rng.uniform(800, 3000, 500), rng.uniform(0, 50, 500)])
y = 50_000 + 150 * X[:, 0] - 2_000 * X[:, 1] + rng.normal(0, 20_000, 500)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
# Fit by ordinary least squares
model = LinearRegression()
model.fit(X_train, y_train)
print(f"Per sq ft: {model.coef_[0]:.1f}, per year: {model.coef_[1]:.0f}, intercept: {model.intercept_:.0f}")
print(f"Test R^2: {r2_score(y_test, model.predict(X_test)):.3f}")O ajuste recupera $147.7 por pé quadrado, face ao valor verdadeiro de $150, e −$1,992 por ano de idade, face ao valor verdadeiro de −$2,000, e explica 96.2% da variância dos preços reservados para teste (R² = 0.962). R² é a proporção da variância do valor-alvo explicada pelo modelo, e o erro quadrático médio da raiz (RMSE) indica o erro típico nas unidades próprias do valor-alvo.
Pressupostos e diagnósticos#
A regressão linear pressupõe que a média do alvo seja uma soma ponderada das entradas, que os erros sejam independentes e que a sua dispersão permaneça aproximadamente constante ao longo do intervalo de previsões; os intervalos de confiança e os valores p dos pesos também pressupõem erros aproximadamente normais. As entradas podem ser qualquer transformação fixa das características brutas, por isso adicionar termos quadráticos, logaritmos ou produtos de características através da engenharia de características continua a produzir uma regressão linear, capaz de acompanhar uma curva. Representar graficamente os resíduos em função das previsões é a verificação padrão: um padrão curvo indica a falta de um termo não linear, e uma forma de leque significa que os erros aumentam com a previsão, algo que muitas vezes se corrige com uma transformação logarítmica do alvo. O erro quadrático também permite que alguns valores atípicos desviem o ajuste na sua direção, e funções de perda robustas, como a perda de Huber, reduzem a sua influência.
Quando as características estão fortemente correlacionadas entre si, pequenas alterações nos dados fazem os seus pesos variar bastante. A regressão Ridge adiciona uma penalização aos pesos ao quadrado que os reduz; a regressão Lasso adiciona uma penalização aos pesos absolutos, que faz com que alguns se tornem exatamente zero e, assim, seleciona características; e a rede elástica combina ambas. Estas formas de regularização aceitam um pouco de viés em troca de menor variância, o compromisso entre viés e variância, e limitam o sobreajuste quando há muitas características em relação ao número de amostras.
Regressão linear em aprendizagem profunda#
Uma rede neuronal que prevê números termina geralmente numa camada linear, pelo que o seu último passo é uma regressão linear sobre características aprendidas pelas camadas anteriores; uma rede sem camadas ocultas treinada com MSE é exatamente uma regressão linear. Os modelos de deteção de objetos usam esta abordagem para as coordenadas das caixas. No YOLO26, cada ramo de caixas da cabeça de deteção termina numa convolução 1×1 que mapeia linearmente as características em cada localização da grelha para quatro distâncias dessa localização até às extremidades de uma caixa delimitadora, e o treino penaliza essas distâncias com uma perda L1, juntamente com uma perda CIoU na sobreposição das caixas.
Aplicações#
- Previsão: Os retalhistas e as empresas de serviços públicos fazem regressões das vendas ou da carga elétrica em função do preço, das promoções, da temperatura e dos indicadores do calendário; uma linha de tendência ajustada é uma referência comum para modelos de previsão mais complexos.
- Definição de preços e avaliação: Os modelos de preços hedónicos fazem regressões dos preços das casas em função da área, da idade e da localização, e cada peso indica o valor de mercado de mais uma unidade dessa característica.
- Estimativa de efeitos: Os economistas e os investigadores na área da saúde fazem regressões de um resultado, como os salários ou a pressão arterial, em função de um fator de interesse e de variáveis de controlo, para estimar como o resultado muda com esse fator quando os restantes se mantêm constantes.
- Curvas de calibração: Os laboratórios fazem regressões das leituras dos instrumentos em função das concentrações conhecidas de amostras de referência e, em seguida, invertem a reta ajustada para converter as leituras de novas amostras em concentrações.
Regressão linear vs. métodos relacionados#
- Regressão logística: Resolve problemas de classificação ao passar a mesma soma ponderada por uma função sigmoide para produzir uma probabilidade entre 0 e 1, e é treinada com a perda logarítmica em vez do erro quadrático.
- Regressão polinomial: Ajusta potências de uma característica, como x e x², e corresponde a uma regressão linear sobre essas características expandidas.
- Árvores de decisão e árvores impulsionadas, como o XGBoost: Dividem o espaço das características em regiões e aprendem efeitos e interações não lineares sem características criadas manualmente, mas preveem um valor constante dentro de cada região, pelo que não conseguem extrapolar uma tendência para além do intervalo de treino.
- Correlação: O coeficiente de correlação r de Pearson mede simetricamente a intensidade de uma relação linear, e o declive de uma regressão linear simples de y em função de x é igual a r multiplicado pelo quociente entre os desvios-padrão de y e de x.










