多項式回歸是一種線性回歸形式,其中自變量x和因變量y之間的關系被建模為n次多項式。多項式回歸擬合x的值與y的相應條件均值之間的非線性關系,表示為E(y | x)
為什么多項式回歸:
多項式回歸的使用:
這些基本上用于定義或描述非線性現象,例如:
回歸分析的基本目標是根據自變量x的值來模擬因變量y的期望值。在簡單回歸中,我們使用以下等式 y = a + bx + e
這里y是因變量,a是y截距,b是斜率,e是誤差率。
在許多情況下,這種線性模型將無法解決。例如,如果我們在這種情況下根據合成溫度分析化學合成的產生,我們使用二次模型y = a + b1x + b2 ^ 2 + e
這里y是x的因變量,a是y截距,e是誤差率。
通常,我們可以將其建模為第n個值。y = a + b1x + b2x ^ 2 + .... + bnx ^ n
由于回歸函數在未知變量方面是線性的,因此這些模型從估計的角度來看是線性的。
因此,通過最小二乘技術,讓我們計算y的響應值。
Python中的多項式回歸:
要獲得用于分析多項式回歸的數據集,請單擊此處。
步驟1:導入庫和數據集
導入重要的庫和我們用于執行多項式回歸的數據集。
# Importing the libraries import numpy as np import matplotlib.pyplot as plt import pandas as pd # Importing the dataset datas = pd.read_csv('data.csv') datas
第2步:將數據集分為2個組件
將數據集劃分為兩個組件,即X和yX將包含1到2之間的列.y將包含2列。
X = datas.iloc[:, 1:2].values y = datas.iloc[:, 2].values
第3步:將線性回歸擬合到數據集
擬合線性回歸模型在兩個組件上。
# Fitting Linear Regression to the dataset from sklearn.linear_model import LinearRegression lin = LinearRegression() lin.fit(X, y)
第4步:將多項式回歸擬合到數據集
將多項式回歸模型擬合到兩個分量X和y上。
# Fitting Polynomial Regression to the dataset from sklearn.preprocessing import PolynomialFeatures poly = PolynomialFeatures(degree = 4) X_poly = poly.fit_transform(X) poly.fit(X_poly, y) lin2 = LinearRegression() lin2.fit(X_poly, y)
步驟5:在此步驟中,我們使用散點圖可視化線性回歸結果。
# Visualising the Linear Regression results plt.scatter(X, y, color = 'blue') plt.plot(X, lin.predict(X), color = 'red') plt.title('Linear Regression') plt.xlabel('Temperature') plt.ylabel('Pressure') plt.show()
步驟6:使用散點圖可視化多項式回歸結果。
# Visualising the Polynomial Regression results plt.scatter(X, y, color = 'blue') plt.plot(X, lin2.predict(poly.fit_transform(X)), color = 'red') plt.title('Polynomial Regression') plt.xlabel('Temperature') plt.ylabel('Pressure') plt.show()
步驟7:使用線性和多項式回歸預測新結果。
# Predicting a new result with Linear Regression lin.predict(110.0)
# Predicting a new result with Polynomial Regression lin2.predict(poly.fit_transform(110.0))
使用多項式回歸的優點:
使用多項式回歸的缺點
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答