溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

使用Python怎么實(shí)現(xiàn)多項(xiàng)式回歸

發(fā)布時(shí)間:2021-04-20 17:06:27 來(lái)源:億速云 閱讀:453 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

今天就跟大家聊聊有關(guān)使用Python怎么實(shí)現(xiàn)多項(xiàng)式回歸,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

python可以做什么

Python是一種編程語(yǔ)言,內(nèi)置了許多有效的工具,Python幾乎無(wú)所不能,該語(yǔ)言通俗易懂、容易入門(mén)、功能強(qiáng)大,在許多領(lǐng)域中都有廣泛的應(yīng)用,例如最熱門(mén)的大數(shù)據(jù)分析,人工智能,Web開(kāi)發(fā)等。

為什么多項(xiàng)式回歸:

  • 研究人員假設(shè)的某些關(guān)系是曲線(xiàn)的。顯然,這種類(lèi)型的案例將包括多項(xiàng)式項(xiàng)。

  • 檢查殘差。如果我們嘗試將線(xiàn)性模型擬合到曲線(xiàn)數(shù)據(jù),則預(yù)測(cè)變量(X軸)上的殘差(Y軸)的散點(diǎn)圖將在中間具有許多正殘差的斑塊。因此,在這種情況下,這是不合適的。

  • 通常的多元線(xiàn)性回歸分析的假設(shè)是所有自變量都是獨(dú)立的。在多項(xiàng)式回歸模型中,不滿(mǎn)足該假設(shè)。

多項(xiàng)式回歸的使用:

這些基本上用于定義或描述非線(xiàn)性現(xiàn)象,例如:

  • 組織生長(zhǎng)速度。

  • 疾病流行病的進(jìn)展

  • 湖泊沉積物中碳同位素的分布

回歸分析的基本目標(biāo)是根據(jù)自變量x的值來(lái)模擬因變量y的期望值。在簡(jiǎn)單回歸中,我們使用以下等式 y = a + bx + e

這里y是因變量,a是y截距,b是斜率,e是誤差率。

在許多情況下,這種線(xiàn)性模型將無(wú)法解決。例如,如果我們?cè)谶@種情況下根據(jù)合成溫度分析化學(xué)合成的產(chǎn)生,我們使用二次模型y = a + b1x + b2 ^ 2 + e

這里y是x的因變量,a是y截距,e是誤差率。

通常,我們可以將其建模為第n個(gè)值。y = a + b1x + b2x ^ 2 + .... + bnx ^ n

由于回歸函數(shù)在未知變量方面是線(xiàn)性的,因此這些模型從估計(jì)的角度來(lái)看是線(xiàn)性的。

因此,通過(guò)最小二乘技術(shù),讓我們計(jì)算y的響應(yīng)值。

Python中的多項(xiàng)式回歸:

要獲得用于分析多項(xiàng)式回歸的數(shù)據(jù)集,請(qǐng)單擊此處。

步驟1:導(dǎo)入庫(kù)和數(shù)據(jù)集

導(dǎo)入重要的庫(kù)和我們用于執(zhí)行多項(xiàng)式回歸的數(shù)據(jù)集。

# 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

使用Python怎么實(shí)現(xiàn)多項(xiàng)式回歸

第2步:將數(shù)據(jù)集分為2個(gè)組件

將數(shù)據(jù)集劃分為兩個(gè)組件,即X和yX將包含1到2之間的列.y將包含2列。

X = datas.iloc[:, 1:2].values 
y = datas.iloc[:, 2].values

第3步:將線(xiàn)性回歸擬合到數(shù)據(jù)集

擬合線(xiàn)性回歸模型在兩個(gè)組件上。

# Fitting Linear Regression to the dataset 
from sklearn.linear_model import LinearRegression 
lin = LinearRegression() 

lin.fit(X, y)

第4步:將多項(xiàng)式回歸擬合到數(shù)據(jù)集

將多項(xiàng)式回歸模型擬合到兩個(gè)分量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:在此步驟中,我們使用散點(diǎn)圖可視化線(xiàn)性回歸結(jié)果。

# 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()

使用Python怎么實(shí)現(xiàn)多項(xiàng)式回歸

步驟6:使用散點(diǎn)圖可視化多項(xiàng)式回歸結(jié)果。

# 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()

使用Python怎么實(shí)現(xiàn)多項(xiàng)式回歸

步驟7:使用線(xiàn)性和多項(xiàng)式回歸預(yù)測(cè)新結(jié)果。

# Predicting a new result with Linear Regression 
lin.predict(110.0)

使用Python怎么實(shí)現(xiàn)多項(xiàng)式回歸

# Predicting a new result with Polynomial Regression 
lin2.predict(poly.fit_transform(110.0))

使用Python怎么實(shí)現(xiàn)多項(xiàng)式回歸

使用多項(xiàng)式回歸的優(yōu)點(diǎn):

  • 廣泛的功能可以適應(yīng)它。

  • 多項(xiàng)式基本上適合寬范圍的曲率。

  • 多項(xiàng)式提供了依賴(lài)變量和自變量之間關(guān)系的最佳近似。

使用多項(xiàng)式回歸的缺點(diǎn)

  • 這些對(duì)異常值過(guò)于敏感。

  • 數(shù)據(jù)中存在一個(gè)或兩個(gè)異常值會(huì)嚴(yán)重影響非線(xiàn)性分析的結(jié)果。

  • 此外,遺憾的是,用于檢測(cè)非線(xiàn)性回歸中的異常值的模型驗(yàn)證工具少于線(xiàn)性回歸。

看完上述內(nèi)容,你們對(duì)使用Python怎么實(shí)現(xiàn)多項(xiàng)式回歸有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI