Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Costruzione della Regressione Lineare Multipla | Sezione
Practice
Projects
Quizzes & Challenges
Quiz
Challenges
/
Fondamenti di Apprendimento Supervisionato

bookCostruzione della Regressione Lineare Multipla

La classe LinearRegression consente di costruire una Regressione Lineare Multipla nello stesso modo della Regressione Lineare Semplice. Gestisce automaticamente più caratteristiche (colonne) nella matrice di input.

Preparazione dei dati

Abbiamo lo stesso dataset dell'esempio di regressione lineare semplice, ma ora include l'altezza della madre come seconda caratteristica. Lo caricheremo ed esamineremo la sua variabile X:

12345678
import pandas as pd file_link='https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/heights_two_feature.csv' df = pd.read_csv(file_link) # Open the file # Assign the variables X = df[['Father', 'Mother']] y = df['Height'] print(X.head())
copy

Per impostazione predefinita, il parametro fit_intercept=True è attivato, quindi il modello calcola automaticamente il termine di bias ()! Possiamo passare direttamente il DataFrame X (che è già bidimensionale) al modello.

Ricerca dei Parametri

Ottimo! Ora possiamo costruire il modello, trovare i parametri ed effettuare previsioni.

12345678910111213141516171819202122
from sklearn.linear_model import LinearRegression import numpy as np # Initialize the model model = LinearRegression() # Train the model (No need to add constant!) model.fit(X, y) # Get the parameters beta_0 = model.intercept_ beta_1 = model.coef_[0] # Coefficient for 'Father' beta_2 = model.coef_[1] # Coefficient for 'Mother' print('beta_0 is: ', beta_0) print('beta_1 is: ', beta_1) print('beta_2 is: ', beta_2) # Predict new values # Feature values of new instances: [[Father, Mother], [Father, Mother], ...] X_new = np.array([[65, 62], [70, 65], [75, 70]]) y_pred = model.predict(X_new) # Predict the target print('Predictions:', y_pred)
copy
Note
Nota

Ora che il nostro set di addestramento ha 2 caratteristiche, dobbiamo fornire 2 caratteristiche per ogni nuova istanza che vogliamo prevedere. Ecco perché è stato utilizzato np.array([[65, 62],[70, 65],[75, 70]]). Inoltre, nota che model.coef_ restituisce un array di coefficienti corrispondenti all'ordine delle colonne in X. Poiché X era ['Father', 'Mother'], coef_[0] è il coefficiente per Father e coef_[1] è per Mother.

question mark

La classe LinearRegression richiede l'aggiunta manuale di una colonna costante?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 7

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

bookCostruzione della Regressione Lineare Multipla

Scorri per mostrare il menu

La classe LinearRegression consente di costruire una Regressione Lineare Multipla nello stesso modo della Regressione Lineare Semplice. Gestisce automaticamente più caratteristiche (colonne) nella matrice di input.

Preparazione dei dati

Abbiamo lo stesso dataset dell'esempio di regressione lineare semplice, ma ora include l'altezza della madre come seconda caratteristica. Lo caricheremo ed esamineremo la sua variabile X:

12345678
import pandas as pd file_link='https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/heights_two_feature.csv' df = pd.read_csv(file_link) # Open the file # Assign the variables X = df[['Father', 'Mother']] y = df['Height'] print(X.head())
copy

Per impostazione predefinita, il parametro fit_intercept=True è attivato, quindi il modello calcola automaticamente il termine di bias ()! Possiamo passare direttamente il DataFrame X (che è già bidimensionale) al modello.

Ricerca dei Parametri

Ottimo! Ora possiamo costruire il modello, trovare i parametri ed effettuare previsioni.

12345678910111213141516171819202122
from sklearn.linear_model import LinearRegression import numpy as np # Initialize the model model = LinearRegression() # Train the model (No need to add constant!) model.fit(X, y) # Get the parameters beta_0 = model.intercept_ beta_1 = model.coef_[0] # Coefficient for 'Father' beta_2 = model.coef_[1] # Coefficient for 'Mother' print('beta_0 is: ', beta_0) print('beta_1 is: ', beta_1) print('beta_2 is: ', beta_2) # Predict new values # Feature values of new instances: [[Father, Mother], [Father, Mother], ...] X_new = np.array([[65, 62], [70, 65], [75, 70]]) y_pred = model.predict(X_new) # Predict the target print('Predictions:', y_pred)
copy
Note
Nota

Ora che il nostro set di addestramento ha 2 caratteristiche, dobbiamo fornire 2 caratteristiche per ogni nuova istanza che vogliamo prevedere. Ecco perché è stato utilizzato np.array([[65, 62],[70, 65],[75, 70]]). Inoltre, nota che model.coef_ restituisce un array di coefficienti corrispondenti all'ordine delle colonne in X. Poiché X era ['Father', 'Mother'], coef_[0] è il coefficiente per Father e coef_[1] è per Mother.

question mark

La classe LinearRegression richiede l'aggiunta manuale di una colonna costante?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 7
some-alt