Pular para o conteúdo principal

Regressão linear do Sklearn: Um guia completo com exemplos

Saiba mais sobre regressão linear, sua finalidade e como implementá-la usando a biblioteca scikit-learn. Inclui exemplos práticos.
Actualizado 5 de mar. de 2025  · 10 min de leitura

A regressão linear é uma técnica fundamental em estatística e machine learning que ajuda a modelar a relação entre as variáveis. Em termos simples, ele nos permite prever um resultado com base em um ou mais fatores de influência. É amplamente aplicado em preços de imóveis, previsão de vendas, avaliação de riscos e muitos outros campos.

Neste tutorial, exploraremos a regressão linear no scikit-learn, abordando como ela funciona, por que é útil e como implementá-la usando o scikit-learn. Ao final, você será capaz de criar e avaliar um modelo de regressão linear para fazer previsões orientadas por dados.

Gráfico de dispersão do preço da casa em relação ao número de cômodos

Regressão linear e machine learning

Além de sua utilidade imediata na determinação dos preços das casas, a regressão linear desempenha um papel importante no machine learning.

  • É um modelo básico para a compreensão de técnicas mais avançadas, como regressão logística, redes neurais e máquinas de vetores de suporte.
  • O treinamento é rápido, o que o torna ideal para prototipagem rápida.
  • Ele também serve como linha de base para comparação. Se os modelos mais avançados não apresentarem desempenho significativamente superior, sua complexidade adicional pode não se justificar.
  • Ao contrário de algumas técnicas (como a aprendizagem profunda), ela é facilmente interpretável.
  • Ele pode ajudar na seleção de recursos, identificando os preditores mais úteis.

Apesar de sua simplicidade, a regressão linear continua sendo uma ferramenta indispensável no machine learning devido à sua eficiência, interpretabilidade e versatilidade.

Regressão linear e a biblioteca scikit-learn

A biblioteca scikit-learn facilita a implementação da regressão linear. Essa biblioteca tem muitas vantagens.

  • Ele tem uma interface consistente. O código necessário para implementar diferentes algoritmos de ML é semelhante.
  • O código é simples, com detalhes matemáticos e de implementação complexos extraídos. Por exemplo, para ajustar um modelo nos dados de treinamento, basta usar a linha model.fit(X_train, y_train).
  • Ele fornece acesso fácil aos coeficientes do modelo.
  • Ele fornece métricas incorporadas para avaliar o desempenho do modelo.
  • É fácil integrar a regressão linear (ou qualquer outro algoritmo de ML) com etapas de pré-processamento, como dimensionamento e seleção de recursos, usando o Pipeline.

Se você é novo no scikit-learn, pode conferir nosso curso sobre machine learning com scikit-learn para obter uma introdução prática à biblioteca Python. 

Entendendo a regressão linear

Como vimos, na regressão linear simples, os dados são modelados usando uma "linha de melhor ajuste". A fórmula para essa linha é: 

onde m é a inclinação da linha e b é a interceptação.

A "regressão linear múltipla" generaliza o caso de um preditor para vários preditores (número de quartos, proximidade do oceano, renda média do bairro). A fórmula é generalizada para: 

em que cada xi é uma variável independente e o bi correspondente é seu coeficiente. Em três dimensões, a linha é generalizada para um plano. Em dimensões mais altas, o plano se torna um "hiperplano".

Como interpretamos os coeficientes e a interceptação? O intercepto é o valor previsto de y quando todas as variáveis independentes são 0 ou, em outras palavras, é o valor de linha de base da variável dependente quando não há contribuição dos preditores. Cada coeficiente bi representa a alteração na variável dependente y para uma alteração de uma unidade em xi, mantendo todas as outras variáveis independentes constantes.

Configuração do ambiente

A instalação do scikit-learn é fácil. Basta usar o comando pip install scikit-learn. Se você quiser instalar uma versão específica, por exemplo, 1.2.2, modifique o comando para incluir a versão: pip install scikit-learn==1.2.2. Se você usa o Anaconda, o scikit-learn já deve estar instalado. Se, por algum motivo, você ainda precisar instalá-lo ao usar a distribuição do Anaconda, use o comando conda install scikit-learn.

Várias bibliotecas são necessárias ou recomendadas quando você usa o scikit-learn. A biblioteca numpy é necessária para armazenar recursos e rótulos. A biblioteca pandas é recomendada para o carregamento, o pré-processamento e a exploração de conjuntos de dados .

Se você estiver usando o scikit-learn, provavelmente já está usando o pandas para a preparação de dados. Para plotar seus resultados, você provavelmente usará matplotlib ou seaborn ou ambos. Qualquer uma dessas bibliotecas pode ser instalada usando o pip install, como no exemplo acima. Você pode até mesmo instalar várias bibliotecas usando um único comando:

pip install scikit-learn numpy pandas matplotlib seaborn.

Implementação da regressão linear no sklearn

Antes de carregarmos o conjunto de dados, vamos importar os suspeitos de sempre.

# Import libraries.
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

Carregando o conjunto de dados

Vamos usar o conhecido conjunto de dados habitacionais da Califórnia.

# Read in California housing dataset.
from sklearn.datasets import fetch_california_housing


housing = fetch_california_housing()

Preparando os dados

Vamos dividir os dados em conjuntos de treinamento e de teste. Importamos o método train_test_split() de sklearn.model_selection e, em seguida, o invocamos, especificando uma porcentagem do conjunto de testes e um random_state. Também usaremos a regressão linear simples, usando o recurso correspondente ao número médio de quartos.

# Import train_test_split.
from sklearn.model_selection import train_test_split


# Create features X and target y.
X = pd.DataFrame(housing.data, columns=housing.feature_names)[["AveRooms"]]
y = housing.target  # Median house value in $100,000s


# Split the dataset into training (80%) and testing (20%) sets.
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

Agora que dividimos os dados em conjuntos de teste e de treinamento, vamos padronizar os recursos. Esse processo garante que todas as variáveis estejam na mesma escala, o que pode melhorar o desempenho do modelo e a estabilidade numérica.

# Import StandardScaler.
from sklearn.preprocessing import StandardScaler

# Instantiate StandardScaler.
scaler = StandardScaler()

# Fit and transform training data.
X_train_scaled = scaler.fit_transform(X_train)

# Also transform test data.
X_test_scaled = scaler.transform(X_test)

Nesse código, StandardScaler é uma ferramenta de pré-processamento de dados usada para remover a média e dimensionar os recursos para a variância da unidade. Isso ajuda a evitar que determinados recursos dominem o modelo devido a diferenças de escala.

O dimensionador é ajustado nos dados de treinamento usando o métodofit_transform(). Os dados de teste são então transformados separadamente usando o método transform() para garantir que sejam dimensionados usando os mesmos fatores que os dados de treinamento, evitando o vazamento de dados.

Treinamento do modelo de regressão linear

Para criar um modelo de regressão linear, importe LinearRegression() de sklearn.linear_model. Chame-o e atribua-o a uma variável.

# Import LinearRegression.
from sklearn.linear_model import LinearRegression


# Instantiate linear regression model.
model = LinearRegression()

O ajuste do modelo com dados de treinamento é simples.

# Fit the model to the training data.
model.fit(X_train_scaled, y_train)

Fazendo previsões

Agora que treinamos nosso modelo, fazemos previsões no conjunto de teste.

# Make predictions on the testing data.
y_pred = model.predict(X_test_scaled)

Avaliação do desempenho do modelo

Agora que fizemos previsões no conjunto de testes, precisamos saber se elas correspondem à realidade. Há várias métricas disponíveis para avaliar o desempenho de um algoritmo de regressão. Alguns dos mais comuns são o coeficiente de determinação (R2), o erro quadrático médio (MSE) e a raiz do erro quadrático médio (RMSE).

O coeficiente de determinação, denominadoR2, mede o grau em que um modelo de regressão explica a variabilidade da variável-alvo. Em outras palavras, ele quantifica o quanto da variabilidade na variável-alvo é explicada pelos preditores, o que é conhecido como adequação do ajuste.

Para entender melhor isso, vamos analisar a fórmula:

em que yactual são os valores reais da variável-alvo, ypredicted são os valores previstos pelo modelo e ȳ é a média dos valores reais. Essa fórmula nos ajuda a entender o quanto a variação na variável-alvo é explicada pelo modelo. O denominador representa a variação total nos dados, enquanto o numerador representa a variação não explicada após a aplicação do modelo de regressão. A proporção, portanto, fornece a porcentagem da variação explicada pelo modelo.

Como interpretamos oR2?

  • R2 = 1: o modelo explica perfeitamente toda a variação da variável-alvo. 
  • R2 = 0: o modelo não explica nenhuma das variações; as previsões não são melhores do que simplesmente usar a média. 
  • R2 < 0: O modelo tem um desempenho pior do que o simples uso da média, indicando um ajuste ruim.

Algumas considerações importantes que você deve ter em mente.

  • R2 mais alto nem sempre é melhor. UmR2 alto pode indicar ajuste excessivo, especialmente com modelos complexos. 
  • A adição de mais recursos pode aumentar artificialmente oR2, portanto, um valor mais alto não é necessariamente melhor.
  • Para regressão múltipla, use oR2 ajustado, que leva em conta o número de preditores e evita melhorias enganosas de variáveis desnecessárias.

Avaliar o desempenho do modelo usando o coeficiente de determinação é fácil com o scikit-learn.

# Import metrics.
from sklearn.metrics import mean_squared_error, r2_score


# Calculate and print R^2 score.
r2 = r2_score(y_test, y_pred)
print(f"R-squared: {r2:.4f}")
R-squared: 0.0138

Outras métricas comumente usadas são o erro quadrático médio (MSE) e a raiz do erro quadrático médio (RMSE). Essas métricas medem o quanto as previsões de um modelo se desviam dos valores reais.

O MSE calcula a diferença média ao quadrado entre os valores reais e previstos: 

para o número total de observações n. Como os erros são elevados ao quadrado antes de calcular a média, os erros maiores são mais penalizados do que os menores, o que torna o MSE sensível a valores discrepantes. Um MSE menor indica um melhor ajuste do modelo.

Para resolver esse problema, é usado o RMSE, que é simplesmente a raiz quadrada do MSE. Como o RMSE está nas mesmas unidades que a variável-alvo, ele fornece uma medida mais interpretável de quão longe as previsões estão, em média.

Calcular o MSE e o RMSE é fácil com o scikit-learn.

# Calculate and print MSE.
mse = mean_squared_error(y_test, y_pred)
print(f"Mean squared error: {mse:.4f}")


# Calculate and print RMSE.
rmse = mse ** 0.5
print(f"Root mean squared error: {rmse:.4f}")
Mean squared error: 1.2923
Root mean squared error: 1.1368

Trabalhando com regressão linear múltipla no scikit-learn

Vamos executar novamente o modelo usando todos os nossos recursos disponíveis, não apenas o número médio de quartos. Você espera resultados melhores ou piores?

# Uses all features.
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.datasets import fetch_california_housing
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_score


# Load data set.
housing = fetch_california_housing()


# Split into X, y.
X = pd.DataFrame(housing.data, columns=housing.feature_names)
y = housing.target  # Median house value in $100,000s
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)


# Scale the data.
scaler = StandardScaler()


X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)


# Create model and fit it to the training data.
model = LinearRegression()
model.fit(X_train_scaled, y_train)


# Make predictions.
y_pred = model.predict(X_test_scaled)


# Calculate and print errors.
r2 = r2_score(y_test, y_pred)
print(f"R-squared: {r2:.4f}")


mse = mean_squared_error(y_test, y_pred)
print(f"Mean squared error: {mse:.4f}")


rmse = mse ** 0.5
print(f"Root mean squared error: {rmse:.4f}")
R-squared: 0.5758
Mean squared error: 0.5559
Root mean squared error: 0.7456

Vemos que os resultados são um pouco melhores do que quando você usa apenas um recurso. No entanto, isso levanta a questão de saber se precisamos de todos os recursos. Alguns recursos são mais relevantes do que outros? A escolha dos recursos mais relevantes do conjunto de dados é conhecida como seleção de recursos.

A seleção de recursos é importante por vários motivos.

  • Reduz o ajuste excessivo. Menos recursos significam menos complexidade, reduzindo o risco de ajuste excessivo.
  • Melhora a precisão. A remoção de recursos irrelevantes ou redundantes ajuda o modelo a se concentrar em padrões significativos.
  • Aumenta a capacidade de interpretação. Torna os modelos mais fáceis de entender, destacando os fatores mais importantes.
  • Acelera o treinamento. A redução do número de recursos diminui o tempo de computação e o uso da memória.

Quando vários recursos são altamente correlacionados, eles são redundantes, o que significa que estão basicamente fornecendo ao modelo as mesmas informações. Essa situação é chamada de multicolinearidade. Embora a multicolinearidade nem sempre afete a precisão dos modelos preditivos, ela complica a seleção e a interpretação dos recursos, especialmente na regressão linear e nos modelos relacionados.

O VIF (Variance Inflation Factor, fator de inflação de variância) é uma métrica usada para detectar multicolinearidade entre os preditores. Para cada preditor, o VIF é calculado como: 

em que Ri2 é o valor R2 obtido quando o preditor Xi é regredido em relação a todos os outros preditores no modelo. Um VIF mais alto significa que o preditor está altamente correlacionado com outras variáveis.

  • VIF = 1: sem multicolinearidade (cenário ideal).
  • VIF < 5: multicolinearidade baixa a moderada (geralmente aceitável).
  • VIF > 5: alta multicolinearidade (considere remover ou combinar variáveis correlacionadas).
  • VIF > 10: multicolinearidade grave (sugere fortemente redundância de variáveis).
# Import libraries.
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.datasets import fetch_california_housing
from statsmodels.stats.outliers_influence import variance_inflation_factor


# Load the dataset.
housing = fetch_california_housing()
X = pd.DataFrame(housing.data, columns=housing.feature_names)


# Compute the correlation matrix.
corr_matrix = X.corr()


# Identify pairs of features with high collinearity (correlation > 0.8 or < -0.8).
high_corr_features = [(col1, col2, corr_matrix.loc[col1, col2])
                     for col1 in corr_matrix.columns
                     for col2 in corr_matrix.columns
                     if col1 != col2 and abs(corr_matrix.loc[col1, col2]) > 0.8]


# Convert to a DataFrame for better visualization.
collinearity_df = pd.DataFrame(high_corr_features, columns=["Feature 1", "Feature 2", "Correlation"])
print("\nHighly Correlated Features:\n", collinearity_df)


# Compute Variance Inflation Factor (VIF) for each feature.
vif_data = pd.DataFrame()
vif_data["Feature"] = X.columns
vif_data["VIF"] = [variance_inflation_factor(X.values, i) for i in range(X.shape[1])]


# Print VIF values.
print("\nVariance Inflation Factor (VIF) for each feature:\n", vif_data)
   Highly Correlated Features:
       Feature 1  Feature 2  Correlation
   0   AveRooms  AveBedrms     0.847621
   1  AveBedrms   AveRooms     0.847621
   2   Latitude  Longitude    -0.924664
   3  Longitude   Latitude    -0.924664
  
   Variance Inflation Factor (VIF) for each feature:
          Feature         VIF
   0      MedInc   11.511140
   1    HouseAge    7.195917
   2    AveRooms   45.993601
   3   AveBedrms   43.590314
   4  Population    2.935745
   5    AveOccup    1.095243
   6    Latitude  559.874071
   7   Longitude  633.711654

Vamos remover o AveBedrms do modelo.

# Import libraries.
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.datasets import fetch_california_housing
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_score


# Load California housing dataset.
housing = fetch_california_housing()


# Create DataFrame and remove "AveBedrms" feature.
X = pd.DataFrame(housing.data, columns=housing.feature_names).drop(columns=["AveBedrms"])
y = housing.target  # Median house value in $100,000s


# Split data into training and testing sets.
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)


# Scale the data (Standardization).
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)


# Create a linear regression model and train it.
model = LinearRegression()
model.fit(X_train_scaled, y_train)


# Make predictions on the test set.
y_pred = model.predict(X_test_scaled)


# Calculate performance metrics.
r2 = r2_score(y_test, y_pred)
mse = mean_squared_error(y_test, y_pred)
rmse = np.sqrt(mse)
# Print evaluation metrics
print(f"R-squared: {r2:.4f}")
print(f"Mean squared error: {mse:.4f}")
print(f"Root mean squared error: {rmse:.4f}")
R-squared: 0.5823
Mean squared error: 0.5473
Root mean squared error: 0.7398

Os resultados são (marginalmente) melhores.

Extração de percepções do modelo

Criar um modelo de regressão é apenas a primeira etapa; compreender seus resultados é igualmente importante. Ao analisar os coeficientes do modelo, podemos determinar quais recursos têm o impacto mais significativo sobre as previsões.

Entendendo os coeficientes de regressão

Depois que um modelo de regressão linear é treinado, os coeficientes podem ser acessados usando model.coef_. Você pode acessar a interceptação usando model.intercept_.

Depois que um modelo de regressão linear é treinado usando LinearRegression(), os coeficientes podem ser acessados usando model.coef_ e a interceptação pode ser acessada usando model.intercept_.

print("Intercept:", model.intercept_)


coeff_df = pd.DataFrame({"Feature": X.columns, "Coefficient": model.coef_})
print("\nFeature Coefficients:\n", coeff_df)
   Intercept: 2.0719469373788777  

   Feature Coefficients:

         Feature  Coefficient

   0     MedInc     0.725747

   1   HouseAge     0.121519

   2   Latitude    -0.943105

   3  Longitude    -0.900735

Resumo dos resultados do modelo

Como o Scikit-Learn não oferece um método summary() integrado como o Statsmodels, podemos extrair e visualizar manualmente a importância de cada recurso usando os coeficientes de regressão. Os recursos com coeficientes absolutos maiores têm um impacto mais forte sobre a variável de destino. Considere o código a seguir.

# Sort dataframe by coefficients.
coef_df_sorted = coef_df.sort_values(by="Coefficient", ascending=False)


# Create plot.
plt.figure(figsize=(8,6))
plt.barh(coef_df["Feature"], coef_df_sorted["Coefficient"], color="blue")
plt.xlabel("Coefficient Value")
plt.ylabel("Feature")
plt.title("Feature Importance (Linear Regression Coefficients)")
plt.show()

Importância da característica (coeficientes de regressão linear)

Gráfico da importância do recurso com base nos valores do coeficiente

Agora, vamos visualizar os resíduos e o ajuste da regressão.

# Compute residuals.
residuals = y_test - y_pred


# Create plots.
plt.figure(figsize=(12,5))


# Plot 1: Residuals Distribution.
plt.subplot(1,2,1)
sns.histplot(residuals, bins=30, kde=True, color="blue")
plt.axvline(x=0, color='red', linestyle='--')
plt.title("Residuals Distribution")
plt.xlabel("Residuals (y_actual - y_predicted)")
plt.ylabel("Frequency")


# Plot 2: Regression Fit (Actual vs Predicted).
plt.subplot(1,2,2)
sns.scatterplot(x=y_test, y=y_pred, alpha=0.5)
plt.plot([min(y_test), max(y_test)], [min(y_test), max(y_test)], color='red', linestyle='--')  # Perfect fit line
plt.title("Regression Fit: Actual vs Predicted")
plt.xlabel("Actual Prices (in $100,000s)")
plt.ylabel("Predicted Prices (in $100,000s)")


# Show plots.
plt.tight_layout()
plt.show()

Distribuição de resíduos e ajuste de regressão

Gráficos para visualizar resíduos e ajuste de regressão

A distribuição de resíduos (gráfico à esquerda) deve ser centralizada em zero, indicando que os erros são distribuídos aleatoriamente. Se os resíduos seguirem uma distribuição normal, o modelo se ajusta bem, mas se houver distorção ou tendência, isso pode sugerir erros sistemáticos. O ajuste de regressão (gráfico à direita) compara os valores reais com os valores previstos, com a linha tracejada vermelha representando um ajuste perfeito. Se os pontos seguirem a linha de perto, as previsões serão precisas, mas se aparecer um padrão (por exemplo, uma curva), a relação pode não ser realmente linear. 

Essas visualizações ajudam a diagnosticar o excesso ou a falta de ajuste, revelam padrões nos resíduos que sugerem relações ausentes e fornecem uma avaliação clara da eficácia do modelo.

Aplicativos do mundo real

A regressão linear é amplamente usada em todos os setores para previsão e tomada de decisões. No setor imobiliário, ele estima os preços das casas com base em fatores como tamanho e localização. 

O setor de vendas e marketing o utiliza para previsão de demanda e otimização de orçamento, enquanto o setor de saúde o aplica à avaliação de risco de doenças. Em finanças, ele ajuda na previsão do preço das ações e na pontuação de crédito e, na fabricação, ajuda no controle de qualidade e na previsão de falhas. 

Quando usar a regressão linear

  • Os recursos e a variável-alvo têm uma relação linear.
  • A interpretabilidade e a simplicidade são mais importantes do que a modelagem complexa.
  • Os dados exigem um mínimo de engenharia de recursos.

Quando não usar a regressão linear

Conclusão

A regressão linear continua sendo uma das técnicas mais fundamentais e amplamente usadas em machine learning e modelagem estatística. Apesar de sua simplicidade, é uma ferramenta poderosa para entender as relações entre variáveis e fazer previsões em várias aplicações do mundo real.

Aqui estão as principais conclusões do tutorial:

  • Aplicações versáteis. A regressão linear oferece percepções valiosas em vários setores e domínios de problemas.
  • Interpretável.  Ao contrário dos modelos complexos de caixa preta, a regressão linear oferece interpretações claras baseadas em coeficientes, o que facilita a interpretação e a explicação.
  • Seleção de recursos. A seleção adequada de recursos e o tratamento da multicolinearidade garantem que os modelos permaneçam precisos, estáveis e confiáveis. 

Para obter mais informações sobre a interpolação de strings do Python, consulte os recursos do DataCamp.

Perguntas frequentes sobre o Sklearn Regressão Linear

O que é regressão linear e como ela funciona?

A regressão linear é um método estatístico usado para modelar a relação entre uma variável-alvo e um ou mais preditores. Ele encontra a linha de melhor ajuste minimizando a diferença entre os valores reais e previstos usando o método dos mínimos quadrados.

Quais são as premissas da regressão linear?

A regressão linear se baseia nessas premissas:

  • Linearidade: A relação entre os preditores e a variável-alvo é linear.
  • Independência: As observações são independentes umas das outras.
  • Homocedasticidade: A variação dos resíduos é constante em todos os valores.
  • Normalidade dos resíduos: Os resíduos devem ser distribuídos normalmente.
  • Não há multicolinearidade: As variáveis independentes não devem ser altamente correlacionadas.

Por que devo dimensionar meus recursos antes de ajustar um modelo de regressão linear?

O escalonamento de recursos garante que todos os recursos contribuam igualmente para o modelo. Como a regressão linear é sensível às magnitudes dos recursos, o escalonamento evita que as variáveis com valores numéricos grandes dominem aquelas com valores menores. Use o site StandardScaler() para padronização

O que é multicolinearidade e como posso detectá-la?

A multicolinearidade ocorre quando duas ou mais variáveis independentes estão altamente correlacionadas, tornando a interpretação do coeficiente não confiável. Isso pode ser detectado usando o fator de inflação de variância (VIF).

Como faço para avaliar um modelo de regressão linear?

As principais métricas de desempenho incluem:

  • R² (Coeficiente de Determinação) → Mede o quanto o modelo explica a variação na variável-alvo.
  • MSE (Mean Squared Error, erro quadrático médio) → Mede o erro quadrático médio entre os valores reais e previstos.
  • RMSE (Root Mean Squared Error) → Uma versão mais interpretável do MSE.

Mark Pedigo's photo
Author
Mark Pedigo
LinkedIn

Mark Pedigo, PhD, é um ilustre cientista de dados com experiência em ciência de dados de saúde, programação e educação. Com doutorado em matemática, bacharelado em ciência da computação e certificado profissional em IA, Mark combina conhecimento técnico com solução prática de problemas. Sua carreira inclui funções em detecção de fraudes, previsão de mortalidade infantil e previsão financeira, além de contribuições para o software de estimativa de custos da NASA. Como educador, ele lecionou no DataCamp e na Washington University em St. Louis e foi mentor de programadores juniores. Em seu tempo livre, Mark curte o ar livre de Minnesota com sua esposa Mandy e seu cachorro Harley e toca piano jazz.

Temas

Principais cursos da DataCamp

curso

Supervised Learning with scikit-learn

4 hr
174.8K
Grow your machine learning skills with scikit-learn in Python. Use real-world datasets in this interactive course and learn how to make powerful predictions!
Ver DetalhesRight Arrow
Iniciar curso
Ver maisRight Arrow
Relacionado

tutorial

Regressão linear múltipla no R: Tutorial com exemplos

Uma visão geral completa para entender as regressões lineares múltiplas no R por meio de exemplos.
Zoumana Keita 's photo

Zoumana Keita

12 min

tutorial

Tutorial de regressão Lasso e Ridge em Python

Saiba mais sobre as técnicas de regressão lasso e ridge. Compare e analise os métodos em detalhes.
DataCamp Team's photo

DataCamp Team

10 min

tutorial

Tutorial para entender a regressão logística em Python

Aprenda sobre a regressão logística, suas propriedades básicas e crie um modelo de aprendizado de máquina em um aplicativo do mundo real em Python.
Avinash Navlani's photo

Avinash Navlani

10 min

tutorial

Tutorial de regressão linear no R

Neste tutorial, você aprenderá os fundamentos de um modelo estatístico muito popular: a regressão linear.

Eladio Montero Porras

15 min

tutorial

Tutorial de regressão logística no R

Descubra tudo sobre a regressão logística: como ela difere da regressão linear, como ajustar e avaliar esses modelos no R com a função glm() e muito mais!
Vidhi Chugh's photo

Vidhi Chugh

14 min

tutorial

Introdução ao k-Means Clustering com o scikit-learn em Python

Neste tutorial, saiba como aplicar o k-Means Clustering com o scikit-learn em Python

Kevin Babitz

21 min

Ver maisVer mais