Regressão Linear: Entendendo o Básico

Mar 27 2023
A regressão linear é uma técnica estatística usada para modelar a relação entre uma variável dependente e uma ou mais variáveis ​​independentes. É amplamente utilizado em vários campos, como finanças, economia, ciências sociais e engenharia, para fazer previsões ou prever resultados.

A regressão linear é uma técnica estatística usada para modelar a relação entre uma variável dependente e uma ou mais variáveis ​​independentes. É amplamente utilizado em vários campos, como finanças, economia, ciências sociais e engenharia, para fazer previsões ou prever resultados.

No contexto do aprendizado de máquina, a regressão linear é um tipo de algoritmo de aprendizado supervisionado usado para tarefas de regressão. Ele tenta ajustar uma função linear a um determinado conjunto de pontos de dados, minimizando a diferença entre a saída prevista e a saída real.

O objetivo da regressão linear é encontrar a melhor linha de ajuste (conhecida como linha de regressão) que descreva a relação entre as variáveis ​​independentes e dependentes. A linha de regressão é uma linha que minimiza a soma das diferenças ao quadrado entre os valores observados e os valores previstos pela linha.

Neste blog, exploraremos os tipos de regressão linear, suposições, intuição matemática da regressão linear simples e sua implementação no aprendizado de máquina.

Tipos de regressão linear.

Existem dois tipos principais de Regressão Linear: Regressão Linear Simples e Regressão Linear Múltipla.

Regressão Linear Simples

A Regressão Linear Simples é uma abordagem linear para modelar a relação entre uma variável dependente e uma única variável independente. É representado pela equação:

Onde Y é a variável dependente, X é a variável independente, β0 é a interceptação, β1 é a inclinação

Regressão linear múltipla

A Regressão Linear Múltipla é uma extensão da Regressão Linear Simples, onde a relação entre uma variável dependente e duas ou mais variáveis ​​independentes é modelada. É representado pela equação:

Onde Y é a variável dependente, X1, X2, …, Xn são as variáveis ​​independentes, β0 é a interceptação, β1, β2, …, βn são as inclinações

Suposições de Regressão Linear.

Existem certas suposições que devem ser atendidas para que os resultados de um modelo de regressão linear sejam válidos e confiáveis. Aqui estão as cinco principais suposições da Regressão Linear:

  1. Linearidade: A relação entre a variável dependente e as variáveis ​​independentes deve ser linear. Isso significa que as mudanças na variável dependente são diretamente proporcionais às mudanças nas variáveis ​​independentes.
  2. Independência: As observações no conjunto de dados devem ser independentes umas das outras. Em outras palavras, o valor da variável dependente para uma observação não deve ser influenciado pelos valores da variável dependente para outras observações.
  3. Homocedasticidade: A variância dos erros (as diferenças entre os valores reais e previstos) deve ser constante em todos os níveis das variáveis ​​independentes. Isso significa que a dispersão dos resíduos deve ser aproximadamente igual em todo o intervalo de valores previstos.
  4. Normalidade: Os resíduos devem ser normalmente distribuídos. Isso significa que a distribuição dos resíduos deve ser simétrica em torno de zero, com a maioria dos resíduos próximos de zero e poucos resíduos mais distantes.
  5. Sem Multicolinearidade: As variáveis ​​independentes não devem ser altamente correlacionadas umas com as outras. Se duas ou mais variáveis ​​independentes estiverem altamente correlacionadas, torna-se difícil distinguir o efeito de cada variável independente individual sobre a variável dependente.

intuição matemática

Na regressão linear, o objetivo principal é encontrar os valores ótimos dos parâmetros do modelo (ou seja, a inclinação e a interceptação) que minimizem a soma dos erros quadrados entre os valores previstos e os valores reais da variável dependente.

Existem várias maneiras de encontrar os parâmetros do modelo na regressão linear, incluindo:

  1. Solução de forma fechada: A solução de forma fechada (também conhecida como método dos mínimos quadrados ordinários ) é uma fórmula matemática que calcula diretamente os valores dos parâmetros do modelo que minimizam a soma dos erros quadrados entre os valores previstos e os valores reais do variável dependente.
  2. Solução de forma não fechada: A solução de forma não fechada para regressão linear refere-se ao uso de algoritmos de otimização para estimar os parâmetros do modelo. Isso geralmente é necessário quando a solução de forma fechada não é viável ou não é desejável devido ao tamanho do conjunto de dados ou à complexidade do modelo. Um algoritmo de otimização comumente usado é o Gradient Descent .
Uma representação de erros entre valores reais e previstos

Os erros são, na verdade, as distâncias entre os valores reais e previstos indicados por d1, d2, d3, d4…dn. Portanto, o erro total E pode ser calculado como:

Mas as distâncias também são negativas, então os quadrados das distâncias são tomados e a equação se torna:

Mas di é dado por,

Nosso objetivo é minimizar o erro E. Os valores de yi e xi da equação de erro são constantes, portanto, apenas os valores de inclinação (βi) e interceptação (β0) podem ser usados ​​para minimizar o erro E. Como E é uma função de β0 e βi para encontrar o valor mínimo de E vamos diferenciar parcialmente E tanto em relação a β0 quanto a βi e torná-los iguais a zero.

Agora diferencie parcialmente E em relação a βi,

No método de solução de forma fechada (mínimos quadrados ordinários), os valores de intercepto β0 e inclinação βi são calculados usando as fórmulas derivadas acima. A regressão linear do sklearn usa as fórmulas derivadas acima em seu back-end para calcular os parâmetros ideais do modelo.

Regressão linear usando Sklearn

Primeiro importe as bibliotecas necessárias

import numpy as np
import pandas as pd
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split

dataset = pd.read_csv('dataset.csv')
X = dataset.iloc[:, :-1].values
y = dataset.iloc[:, -1].values
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=2)

regressor = LinearRegression()
regressor.fit(X_train, y_train)

y_pred = regressor.predict(X_test)
mse = np.mean((y_pred - y_test)**2)
r2_score = regressor.score(X_test, y_test)

A regressão linear é uma técnica estatística amplamente utilizada para análise preditiva em vários campos. É importante entender os tipos de regressão linear, as suposições e a implementação para garantir a precisão das previsões. Além disso, recomenda-se avaliar o desempenho do modelo usando métricas adequadas para garantir sua eficácia.