Algoritmo de Regressão Linear - Machine Learning

Regressão Linear: entenda como utilizar

Um dos conceitos estatísticos mais utilizados dentro do machine learning, a regressão linear é denominada dessa forma por ser uma reta traçada a partir de uma relação em um diagrama de dispersão.

Essa reta resume uma relação entre os dados de duas variáveis e também pode ser utilizada para realizar previsões.

 

O que é regressão linear?

Sua origem vem da correlação linear, que é a verificação da existência de um relacionamento entre duas variáveis. Ou seja, dado X e Y, quanto que X explica Y. Para isso, a regressão linear utiliza os pontos de dados para encontrar a melhor linha de ajuste para modelar essa relação.

O resultado da regressão linear é sempre um número. É utilizada adequadamente quando o dataset apresenta algum tipo de tendência de crescimento/descrescimento constante.

 
Regressão Linear - Gráfico

A linha traçada pode ser representada pela equação, , onde y é a variável explicada (dependente) e representa o que o modelo tentará prever; α é a contante, representa a interceptação da reta com o eixo vertical; ß representa a inclinação em relação à variável explicativa; X é a variável explicativa (independente) e ε representa os valores residuais e possíveis erros.

Dentro dessa equação, o algoritmo busca encontrar os valores para α e ß usando o conjunto de dados fornecido.

Um exemplo de regressão linear é o Preço X Demanda. Se o preço varia, é esperado que a procura também oscile de acordo com essa mudança. Ou seja, se eu aumento o preço é esperado que a demanda diminua.

Embora nem sempre ocorra um relação de causa e efeito, é uma forma de avaliar se duas grandezas variam concomitantemente. Essa relação pode ser direta, quando oscilam no mesmo sentido, ou inversa, quando oscilam em sentidos diferentes.

 

Coeficiente de Correlação

Para determinar se existe correlação entre duas variáveis é utilizado o coeficiente de correlação, também conhecido como coeficiente de Pearson ou coeficiente de determinação. Ele mede o grau da correlação e a direção dessa correlação (positiva ou negativa).

Esse coeficiente atribui valores entre -1 e 1 para determinar o grau de correlação. Quando encontramos números próximos a 1, a correlação é considerada positiva. Já quando encontramos números próximos a -1 a correlação negativa.

Quanto mais próximo dos extremos maior o grau de correlação e quanto mais próximo a zero menor o grau de correlação.

Caso o resultado da equação seja 0,98 dizemos que a correlação entre as duas variáveis é de 98%.

Portanto, devemos levar em conta o grau de correlação em nossas previsões. Geralmente acima de 70% consideramos uma correlação significativa.

No vídeo abaixo você pode assistir a uma aula introdutória sobre o assunto e visualizar melhor os exemplos dados:

 

 

Gráfico de regressão linear

Existem dois tipos de regressão linear: a simples, que utiliza apenas uma variável independente; e a múltipla, que utiliza mais de uma variável ​​independente.

No gráfico abaixo você pode visualizar uma relação simples entre preços de imóveis em que: quanto maior seu tamanho, maior o seu custo.

 
Algoritmo de regressão linear - Machine Learning

 
Embora alguns valores não fiquem dentro da reta traçada, claramente há uma relação de correlação entre as duas variáveis.

 

Implementação do código

Uma das formas de fazer a implementação via Python é utilizando a biblioteca “Scikit-learn“. Veja o modelo abaixo:

from sklearn import linear_model, datasets

#digit dataset from sklearn
digits = datasets.load_digits()

#create the LinearRegression model
clf = linear_model.LinearRegression()

#set training set
x, y = digits.data[:-1], digits.target[:-1]

#train model
clf.fit(x, y)

#predict
y_pred = clf.predict([digits.data[-1]])
y_true = digits.target[-1]

print(y_pred)
print(y_true)

 
Na implementação em Python, utilizando essa ou outra biblioteca, você não precisa criar o algoritmo ou dominar a fórmula matemática. É necessário apenas determinar corretamente as variáveis e avaliar, anteriormente, se a regressão linear é a melhor forma de realizar essa previsão.

Quer saber mais sobre o assunto? Então não deixe de conferir nosso artigo sobre os principais algoritmos de machine learning!

Avatar

About the Author: Pedro César Tebaldi Gomes

Atua há 8 anos no mercado B2B de tecnologia da informação como gerente de marketing, tendo escrito mais de 300 artigos sobre tecnologia durante esse período. Estuda ciência de dados, machine learning e estatística para atingir melhores resultados de negócios.

2 Comments

  1. Nesse trecho a explicação de a e b está invertida, no mais ótimo artigo.
    “A linha traçada pode ser representada pela equação, y = a * x + b…
    O termo a, também chamado de intercepto, representa o ponto em Y quando X = 0. Já o termo b representa a inclinação da reta. Caso b seja positivo a reta é ascendente; se b for negativo a reta será descendente.”

Deixe uma resposta

Regressão Linear: entenda como utilizar

tempo de leitura: 4 min