8種用Python實現線性回歸的方法 拋開涉及大量數統的模型分析和_第1頁
8種用Python實現線性回歸的方法 拋開涉及大量數統的模型分析和_第2頁
8種用Python實現線性回歸的方法 拋開涉及大量數統的模型分析和_第3頁
8種用Python實現線性回歸的方法 拋開涉及大量數統的模型分析和_第4頁
8種用Python實現線性回歸的方法 拋開涉及大量數統的模型分析和_第5頁
已閱讀5頁,還剩1頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

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

4、來說,可以選擇1維函數。但是如果你想擬合更高維的模型,則可以從線性特征數據中構建多項式特征并擬合模型。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方法六和七:使用矩陣的逆求解析解對于條件良好的線性回歸問題(其中,至少滿足數據點個數特征數量),系數求解等價于存在一個簡單的閉式矩陣解,使得最小二乘最小化。由下式給出:這里有兩個選擇:使用簡單的乘法求矩陣的逆首先計算x的Moore-Penrose廣義偽逆矩陣,然后與y取點積。由于第二個過程涉及奇異值分解(SVD),所以它比較慢,但是它可以很好地適用于沒有良好條件的數據集。方

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

溫馨提示

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

評論

0/150

提交評論