8種用Python實(shí)現(xiàn)線性回歸的方法 拋開涉及大量數(shù)統(tǒng)的模型分析和_第1頁
8種用Python實(shí)現(xiàn)線性回歸的方法 拋開涉及大量數(shù)統(tǒng)的模型分析和_第2頁
8種用Python實(shí)現(xiàn)線性回歸的方法 拋開涉及大量數(shù)統(tǒng)的模型分析和_第3頁
8種用Python實(shí)現(xiàn)線性回歸的方法 拋開涉及大量數(shù)統(tǒng)的模型分析和_第4頁
8種用Python實(shí)現(xiàn)線性回歸的方法 拋開涉及大量數(shù)統(tǒng)的模型分析和_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、8種用Python實(shí)現(xiàn)線性回歸的方法拋開涉及大量數(shù)統(tǒng)的模型分析和檢驗(yàn)不說,你真的就能熟練應(yīng)用線性回歸了么?未必!“寶刀不老”的線性回歸時至今日,深度學(xué)習(xí)早已成為數(shù)據(jù)科學(xué)的新寵。即便往前推10年,SVM、boosting等算法也能在準(zhǔn)確率上完爆線性回歸。為什么我們還需要線性回歸呢?一方面,線性回歸所能夠模擬的關(guān)系其實(shí)遠(yuǎn)不止線性關(guān)系。線性回歸中的“線性”指的是系數(shù)的線性,而通過對特征的非線性變換,以及廣義線性模型的推廣,輸出和特征之間的函數(shù)關(guān)系可以是高度非線性的。另一方面,也是更為重要的一點(diǎn),線性模型的易解釋性使得它在物理學(xué)、經(jīng)濟(jì)學(xué)、商學(xué)等領(lǐng)域中占據(jù)了難以取代的地位。那么,如何用Python來實(shí)現(xiàn)

2、線性回歸呢?由于機(jī)器學(xué)習(xí)庫scikit-learn的廣泛流行,常用的方法是從該庫中調(diào)用linear_model來擬合數(shù)據(jù)。雖然這可以提供機(jī)器學(xué)習(xí)的其他流水線特征(例如:數(shù)據(jù)歸一化,模型系數(shù)正則化,將線性模型傳遞到另一個下游模型)的其他優(yōu)點(diǎn),但是當(dāng)一個數(shù)據(jù)分析師需要快速而簡便地確定回歸系數(shù)(和一些基本相關(guān)統(tǒng)計(jì)量)時,這通常不是最快速簡便的方法。下面,我將介紹一些更快更簡潔的方法,但是它們所提供信息量和建模的靈活性不盡相同。8種方法實(shí)現(xiàn)線性回歸方法一:Scipy.polyfit()ornumpy.polyfit()numpy.polyfitParameters:x一arrayjike,shape(

3、M.)x-coordinatesoftheMsamplepoints(xij,yiyarrayjike,shape(MJor(MrK)y-coordinatesofthesamplepoints.Severaldatabypassingina2D-arraythatcontainsonedatasdeg;intDegreeofthefittingpolynomial這是一個最基本的最小二乘多項(xiàng)式擬合函數(shù)(leastsquarespolynomialfitfunction),接受數(shù)據(jù)集和任何維度的多項(xiàng)式函數(shù)(由用戶指定),并返回一組使平方誤差最小的系數(shù)。這里給出函數(shù)的詳細(xì)描述。對于簡單的線性回歸

4、來說,可以選擇1維函數(shù)。但是如果你想擬合更高維的模型,則可以從線性特征數(shù)據(jù)中構(gòu)建多項(xiàng)式特征并擬合模型。LeastsquarespolynomialfitFftapolynomialp(x)=p(exxdeg+.+pdegofdegreedegsquarederrornumpypolyfit(x,y,deg,rcond=NonetfuFalse,w=Noneflt10.Q250.975const-6.50001.9e-16-3-42e+160.000-6*500-6.5G0 xl3,25003.29e-179.89e+160.OCO3.2503.250Omnilcus:8794275.792Du

5、rbin-Watson:0.000Prob(Omnibus):0.000Jarqpe-Bera(JB):598902.461Skew:-0.000Prob(JB):0.00Kurtosis:1.801Cond.No.5.77方法六和七:使用矩陣的逆求解析解對于條件良好的線性回歸問題(其中,至少滿足數(shù)據(jù)點(diǎn)個數(shù)特征數(shù)量),系數(shù)求解等價(jià)于存在一個簡單的閉式矩陣解,使得最小二乘最小化。由下式給出:這里有兩個選擇:使用簡單的乘法求矩陣的逆首先計(jì)算x的Moore-Penrose廣義偽逆矩陣,然后與y取點(diǎn)積。由于第二個過程涉及奇異值分解(SVD),所以它比較慢,但是它可以很好地適用于沒有良好條件的數(shù)據(jù)集。方

6、法八:sklearn.linear_model.LinearRegression()這是大多數(shù)機(jī)器學(xué)習(xí)工程師和數(shù)據(jù)科學(xué)家使用的典型方法。當(dāng)然,對于現(xiàn)實(shí)世界中的問題,它可能被交叉驗(yàn)證和正則化的算法如Lasso回歸和Ridge回歸所取代,而不被過多使用,但是這些高級函數(shù)的核心正是這個模型本身。八種方法效率比拼作為一名數(shù)據(jù)科學(xué)家,應(yīng)該一直尋找準(zhǔn)確且快速的方法或函數(shù)來完成數(shù)據(jù)建模工作。如果模型本來就很慢,那么會對大數(shù)據(jù)集造成執(zhí)行瓶頸。簡單矩陣逆求解的方案更快作為數(shù)據(jù)科學(xué)家,我們必須一直探索多種解決方案來對相同的任務(wù)進(jìn)行分析和建模,并為特定問題選擇最佳方案。在本文中,我們討論了8種簡單線性回歸的方法。大多數(shù)都可以擴(kuò)展到更一般化的多元和多項(xiàng)式回歸建模中。本文的目標(biāo)主要是討論這些方法的相對運(yùn)行速度和計(jì)算復(fù)雜度。我們在一個數(shù)據(jù)量持續(xù)增

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論