日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

如何在python中實(shí)現(xiàn)線性回歸

瀏覽:33日期:2022-07-14 14:23:40

線性回歸是基本的統(tǒng)計(jì)和機(jī)器學(xué)習(xí)技術(shù)之一。經(jīng)濟(jì),計(jì)算機(jī)科學(xué),社會(huì)科學(xué)等等學(xué)科中,無論是統(tǒng)計(jì)分析,或者是機(jī)器學(xué)習(xí),還是科學(xué)計(jì)算,都有很大的機(jī)會(huì)需要用到線性模型。建議先學(xué)習(xí)它,然后再嘗試更復(fù)雜的方法。

本文主要介紹如何逐步在Python中實(shí)現(xiàn)線性回歸。而至于線性回歸的數(shù)學(xué)推導(dǎo)、線性回歸具體怎樣工作,參數(shù)選擇如何改進(jìn)回歸模型將在以后說明。

回歸

回歸分析是統(tǒng)計(jì)和機(jī)器學(xué)習(xí)中最重要的領(lǐng)域之一。有許多可用的回歸方法。線性回歸就是其中之一。而線性回歸可能是最重要且使用最廣泛的回歸技術(shù)之一。這是最簡單的回歸方法之一。它的主要優(yōu)點(diǎn)之一是線性回歸得到的結(jié)果十分容易解釋。那么回歸主要有:

簡單線性回歸 多元線性回歸 多項(xiàng)式回歸

如何在python中實(shí)現(xiàn)線性回歸

用到的packages

NumPy

NumPy是Python的基礎(chǔ)科學(xué)軟件包,它允許在單維和多維數(shù)組上執(zhí)行許多高性能操作。

scikit-learn

scikit-learn是在NumPy和其他一些軟件包的基礎(chǔ)上廣泛使用的Python機(jī)器學(xué)習(xí)庫。它提供了預(yù)處理數(shù)據(jù),減少維數(shù),實(shí)現(xiàn)回歸,分類,聚類等的方法。

statsmodels

如果要實(shí)現(xiàn)線性回歸并且需要功能超出scikit-learn的范圍,則應(yīng)考慮使用statsmodels可以用于估算統(tǒng)計(jì)模型,執(zhí)行測試等。

scikit-learn的簡單線性回歸

1.導(dǎo)入用到的packages和類

import numpy as npfrom sklearn.linear_model import LinearRegression

2.創(chuàng)建數(shù)據(jù)

x = np.array([5, 15, 25, 35, 45, 55]).reshape((-1, 1))y = np.array([5, 20, 14, 32, 22, 38])

現(xiàn)在就生成了兩個(gè)數(shù)組:輸入x(回歸變量)和輸出y(預(yù)測變量),來看看

>>> print(x)[[ 5] [15] [25] [35] [45] [55]]>>> print(y)[ 5 20 14 32 22 38]

可以看到x是二維的而y是一維的,因?yàn)樵趶?fù)雜一點(diǎn)的模型中,系數(shù)不只一個(gè)。這里就用到了.reshape()來進(jìn)行轉(zhuǎn)換。

3.建立模型

創(chuàng)建一個(gè)類的實(shí)例LinearRegression,它將代表回歸模型:

model = LinearRegression()

現(xiàn)在開始擬合模型,首先可以調(diào)用.fit()函數(shù)來得到優(yōu)的?₀和?₁,具體有下面兩種等價(jià)方法

model.fit(x, y)model = LinearRegression().fit(x, y)

4.查看結(jié)果

擬合模型之后就是查看與模型相關(guān)的各項(xiàng)參數(shù)

>>> r_sq = model.score(x, y)>>> print(’coefficient of determination:’, r_sq)coefficient of determination: 0.715875613747954

.score()函數(shù)可以獲得模型的?²,再看看系數(shù)

>>> print(’intercept:’, model.intercept_)intercept: 5.633333333333329>>> print(’slope:’, model.coef_)slope: [0.54]

可以看到系數(shù)和截距分別為[0.54]和5.6333,注意系數(shù)是一個(gè)二維數(shù)組哦。

5.預(yù)測效果

一般而言,線性模型最后就是用來預(yù)測,我們來看下預(yù)測效果

>>> y_pred = model.predict(x)>>> print(’predicted response:’, y_pred, sep=’n’)predicted response:[ 8.33333333 13.73333333 19.13333333 24.53333333 29.93333333 35.33333333]

當(dāng)然也可以使用下面的方法

>>> y_pred = model.intercept_ + model.coef_ * x>>> print(’predicted response:’, y_pred, sep=’n’)predicted response:[[ 8.33333333] [13.73333333] [19.13333333] [24.53333333] [29.93333333] [35.33333333]]

除了可以利用樣本內(nèi)的數(shù)據(jù)進(jìn)行預(yù)測,也可以用樣本外的數(shù)據(jù)進(jìn)行預(yù)測。

>>> x_new = np.arange(5).reshape((-1, 1))>>> print(x_new)[[0] [1] [2] [3] [4]]>>> y_new = model.predict(x_new)>>> print(y_new)[5.63333333 6.17333333 6.71333333 7.25333333 7.79333333]

至此,一個(gè)簡單的線性回歸模型就建立起來了。

scikit-learn的多元線性回歸

直接開始吧

1.導(dǎo)入包和類,并創(chuàng)建數(shù)據(jù)

import numpy as npfrom sklearn.linear_model import LinearRegressionx = [[0, 1], [5, 1], [15, 2], [25, 5], [35, 11], [45, 15], [55, 34], [60, 35]]y = [4, 5, 20, 14, 32, 22, 38, 43]x, y = np.array(x), np.array(y)

看看數(shù)據(jù)

>>> print(x)[[ 0 1] [ 5 1] [15 2] [25 5] [35 11] [45 15] [55 34] [60 35]]>>> print(y)[ 4 5 20 14 32 22 38 43]

2.建立多元回歸模型

model = LinearRegression().fit(x, y)

3.查看結(jié)果

>>> r_sq = model.score(x, y)>>> print(’coefficient of determination:’, r_sq)coefficient of determination: 0.8615939258756776>>> print(’intercept:’, model.intercept_)intercept: 5.52257927519819>>> print(’slope:’, model.coef_)slope: [0.44706965 0.25502548]

4.預(yù)測

#樣本內(nèi)>>> y_pred = model.predict(x)>>> print(’predicted response:’, y_pred, sep=’n’)predicted response:[ 5.77760476 8.012953 12.73867497 17.9744479 23.97529728 29.4660957 38.78227633 41.27265006]#樣本外>>> x_new = np.arange(10).reshape((-1, 2))>>> print(x_new)[[0 1] [2 3] [4 5] [6 7] [8 9]]>>> y_new = model.predict(x_new)>>> print(y_new)[ 5.77760476 7.18179502 8.58598528 9.99017554 11.3943658 ]

所有的結(jié)果都在結(jié)果里,就不再過多解釋。再看看多項(xiàng)式回歸如何實(shí)現(xiàn)。

多項(xiàng)式回歸

導(dǎo)入包和創(chuàng)建數(shù)據(jù)

import numpy as npfrom sklearn.linear_model import LinearRegressionfrom sklearn.preprocessing import PolynomialFeaturesx = np.array([5, 15, 25, 35, 45, 55]).reshape((-1, 1))y = np.array([15, 11, 2, 8, 25, 32])

多項(xiàng)式回歸和之前不一樣的是需要對數(shù)據(jù)轉(zhuǎn)換,因?yàn)槟P屠锇?#63;²等變量,所以在創(chuàng)建數(shù)據(jù)之后要將x轉(zhuǎn)換為?²。

transformer = PolynomialFeatures(degree=2, include_bias=False)

再看看數(shù)據(jù)

>>> print(x_)[[ 5. 25.] [ 15. 225.] [ 25. 625.] [ 35. 1225.] [ 45. 2025.] [ 55. 3025.]]

建模

接下來的步驟就和之前的類似了。其實(shí)多項(xiàng)式回歸只是多了個(gè)數(shù)據(jù)轉(zhuǎn)換的步驟,因此從某種意義上,多項(xiàng)式回歸也算是線性回歸。

model = LinearRegression().fit(x_, y)

查看結(jié)果

>>> r_sq = model.score(x_, y)>>> print(’coefficient of determination:’, r_sq)coefficient of determination: 0.8908516262498564>>> print(’intercept:’, model.intercept_)intercept: 21.372321428571425>>> print(’coefficients:’, model.coef_)coefficients: [-1.32357143 0.02839286]

預(yù)測

>>> y_pred = model.predict(x_)>>> print(’predicted response:’, y_pred, sep=’n’)predicted response:[15.46428571 7.90714286 6.02857143 9.82857143 19.30714286 34.46428571]

那么本次多項(xiàng)式回歸的所有結(jié)果都在上面了,一目了然。

以上就是如何在python中實(shí)現(xiàn)線性回歸的詳細(xì)內(nèi)容,更多關(guān)于Python實(shí)現(xiàn)線性回歸的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产欧美日本| 亚洲精品护士| 国产日韩高清一区二区三区在线 | 亚洲精品在线观看91| 成人午夜精品| 91精品一区二区三区综合在线爱 | 四虎成人av| 日韩在线中文| 999在线观看精品免费不卡网站| 亚洲一区欧美二区| 日韩三级精品| 麻豆国产91在线播放| 国产精品伦一区二区| 国产美女高潮在线| 在线成人动漫av| 亚洲一区二区日韩| 欧美黄色一区| 欧美日韩在线二区| 日韩专区一卡二卡| 国产剧情一区二区在线观看| 久久久久伊人| 亚洲电影在线一区二区三区| 中文字幕日韩高清在线| 欧美日韩亚洲一区| 91av亚洲| 国产精品乱战久久久| 久久婷婷丁香| 亚洲免费福利一区| 国产成人精品免费视| 伊人精品在线| 国产精品久一| 亚洲欧美日韩专区| 国语对白精品一区二区| 国产亚洲综合精品| 久久精品国产一区二区| 乱人伦精品视频在线观看| 国产精品探花在线观看| 欧美搞黄网站| 精品久久美女| 在线看片日韩| 欧美日韩在线观看首页| 蜜臀av在线播放一区二区三区| 亚洲精品乱码久久久久久蜜桃麻豆| 久久亚洲精精品中文字幕| 亚洲综合婷婷| 亚洲一二av| 美女国产一区| 亚洲激情婷婷| 不卡一区2区| 欧美不卡高清一区二区三区| 欧美1区二区| 国产精品视区| 国产免费久久| 日韩在线黄色| 免费视频最近日韩| 亚洲在线免费| 亚洲一区网站| 欧美手机在线| 久久精品主播| 91高清一区| 亚洲欧美日韩高清在线| 蜜桃国内精品久久久久软件9| 神马午夜在线视频| 高清日韩中文字幕| 香蕉视频亚洲一级| 午夜欧美巨大性欧美巨大| 蜜臀久久精品| 一区二区小说| 日韩影院精彩在线| 日韩精品久久久久久| 久久国内精品视频| 国产一区二区视频在线看| 美女国产精品久久久| 久久精品国产免费| 免费福利视频一区二区三区| 偷拍精品精品一区二区三区| 91高清一区| 日韩av电影一区| 麻豆精品国产91久久久久久| 国产精品精品国产一区二区| 日韩精品不卡一区二区| 婷婷成人基地| 日本强好片久久久久久aaa| 国产精品sm| 日韩国产欧美视频| 青青草视频一区| 国产a亚洲精品| 久久免费国产| 亚洲日产国产精品| 欧美精品影院| 国产主播一区| 欧美不卡高清一区二区三区| 伊人影院久久| 国产一区二区三区国产精品| 免费久久久久久久久| 国产精品久久| 免费看黄色91| 久久黄色影院| 久久精品国产成人一区二区三区| 99国产精品视频免费观看一公开 | 国产婷婷精品| 精品免费视频| 日本亚洲欧洲无免费码在线| 婷婷成人在线| 国产videos久久| 国产精品亲子伦av一区二区三区| 欧美成人国产| 久久九九精品| 免费在线小视频| 美女性感视频久久| 日本久久一区| 自拍日韩欧美| 影视先锋久久| 精品捆绑调教一区二区三区| 久久天堂影院| 狂野欧美性猛交xxxx| 91成人在线网站| 欧美日韩 国产精品| 日本成人中文字幕在线视频| 国产美女精品| 99在线|亚洲一区二区| 99视频精品全部免费在线视频| 国产理论在线| 成人免费网站www网站高清| 国产福利片在线观看| 久久99国产精品视频| 久久国产欧美日韩精品| 日韩和欧美的一区| 国产日韩一区| 久久免费视频66| 高清精品久久| 日韩免费小视频| 亚洲国产日韩欧美在线| 久久成人亚洲| 亚洲三级视频| 久久影视三级福利片| 日本在线高清| 亚洲一区二区三区四区五区午夜| 中文字幕中文字幕精品| 日韩精品欧美大片| 国产精品1区| 蜜桃av在线播放| 亚洲一区二区三区四区五区午夜| 麻豆久久精品| 国产精品v亚洲精品v日韩精品| 日韩欧美另类一区二区| 亚洲深夜av| 精品一区二区三区亚洲| 激情五月综合| 91欧美极品| 亚洲二区视频| 国产精品高潮呻吟久久久久| 99tv成人| 欧美日韩精品一区二区三区视频 | 日韩和欧美一区二区三区| 里番精品3d一二三区| 国产韩日影视精品| 91九色综合| 精品一区在线| 国产精品久久久久久模特 | 日本免费久久| 亚洲欧美日本国产 | 国产欧美在线| 婷婷综合在线| 精品高清久久| 日韩高清不卡一区二区| 欧美特黄视频| 国产66精品| 欧美三级第一页| 亚洲香蕉久久| 日韩网站在线| 人人香蕉久久| 丰满少妇一区| 国产精品啊啊啊| 美女久久久久久| 亚洲一区激情| 在线日韩电影| 日韩免费久久| 97精品在线| 精品久久美女| 精品欧美视频| 欧美1区二区| 精品三区视频| 久久精品国产999大香线蕉| 国产乱码精品一区二区三区亚洲人 | 成人午夜毛片| 麻豆精品99| 国产不卡精品| 97精品视频在线看| 国产激情在线播放| 97精品97| 日韩精品一卡| 国产字幕视频一区二区| 一区二区三区四区在线看| 国产中文一区| 噜噜噜久久亚洲精品国产品小说| 夜夜嗨网站十八久久| 欧美专区一区二区三区| 日本亚洲欧洲无免费码在线| 国产亚洲人成a在线v网站|