python 回归去掉共线性_以IPL数据集为例的线性回归技术概述
本文介紹機器學習中的線性回歸算法,從https://www.iplt20.com/stats/2018收集了一個IPL數據集示例。
什么是回歸呢?
回歸是確定因變量/響應變量(我們正在預測的變量(特征),即Y)和自變量(我們用來預測y的變量(特征),即我們的x)之間關系強度的一種度量。
什么是線性回歸?
因此,當我們說線性回歸這個術語時,我們的x和y之間的關系是線性的,即當x增加時,y也會增加,當x減小時,y也會減小。例如,薪資與支出。
描述兩個變量之間線性關系的模擬數據
那么我們如何衡量兩個變量之間的線性呢?
答案是相關性,它是兩個變量之間線性度的統計量度,其值范圍從-1到1,其中-1和1表示變量之間強線性關系,0表示變量之間沒有線性關系,所以最終你只需要通過相關性的值來建立你的直覺。其數學公式為:
這里的scores表示樣本中觀察的次數
一些隨機數據的散點圖,建立在我們如何估計關系的直覺上。
用一些散點圖來估計r
第一個圖是正相關的,因為它的相關性大于0,然后隨著X的增加,Y增加,兩個變量被認為是正相關的,第二個圖是負相關的,因為它的相關性小于0,所以這里X增加并且Y減小,并且兩個變量被認為是負相關的,第三個圖沒有相關性,因為它的相關性為0,因此在X和Y之間沒有線性關系。這兩個變量被認為是不相關的。
現在在機器學習方面,線性回歸算法估計最佳擬合線(回歸線),這樣我們的數學模型就可以預測出任意給定x值下y的最佳值。雖然我們可以擬合多條直線,但我們的全部重點是應用線性回歸算法來估計最佳擬合直線。
從上面的圖中,我們可以看到多條直線擬合數據,但是沒有一條直線能夠更好地表示這些數據。對于這類直線,預測誤差(Y的實際值與Y的預測值的差值)是顯著的。
最佳擬合線
該特定線很好地表示數據并且給出盡可能低的預測誤差。預測誤差也稱為成本函數(在線性回歸算法中)。現在讓我們看看線性回歸算法背后的數學。注意:最佳擬合線也稱為回歸線
回歸線方程表示為:
Y(預測)=β0+β1
其中,
- Y(預測)表示給定觀察的預測響應值。
- β0和β1是回歸系數,分別代表回歸線的y軸截距和斜率。對于任何給定的值這個數學模型預測Y。
- 假設我想預測給定x=30下的Y,假設已知Y軸截距=20,斜率=10,所以方程是Y =20+10*30,因此預測Y值是320。
現在假設有多個X值用于預測我們的y,這樣的回歸線方程表示如下,并稱為多線性回歸:
多元線性回歸方程
- b0 - y-intercept
- b1 - 斜率x1
- b2 - 斜率x2
例如,假設我想預測給定x1=30和x2=40的Y值。已知y軸截距=20,斜率X1=10,斜率X2=15,所以方程是y=20+10*30 +15*40。因此,y的預測值是920。
問題是預測IPL 2018的前3名orange cap holder和前3名purple cap holder。首先,我收集了機器學習數據集,它沒有被清理,該機器學習數據集如下:
IPL數據集2018年
我在python中做了一些數據預處理步驟,看起來像這樣
預處理數據
之后,由于我們需要前3名run 得分手,我已經繪制了關于run 的相關矩陣。
因變量(響應變量)y是runs
如果我們仔細觀察這個熱圖(相關矩陣)可視化,我們可以看到多重共線性的問題 。在應用線性回歸算法時我們需要考慮的另一個因素。
什么是多重共線性以及如何克服這個問題?
機器學習數據集中的多重共線性意味著兩個或兩個以上的預測因子/自變量(即x)具有高度的相關性,在我們的例子中,BF(Ball Faced)和4s特征的相關性高度相關(0.97,0.93)。這就產生了以下情況:
如b0,b1…bn(我在上面的多元線性回歸方程中提到過)的值可能不正確。這就產生了錯誤的預測值。
刪除或添加一個預測變量/自變量會導致我們的數學模型預測的預測值發生巨大變化。例如,對于任何點X1,我們的模型預測值為400,但如果作為特征X2,則我們的模型預測值變為40。
解決方案:1)因此我們可以通過采用單個變量并刪除另一個多相關變量來建立不同的模型.2)在相關變量之間選擇導致另一個變量的變量,然后把其他的都丟棄了。這就是我所做的我已選擇BF,因為4s的數量將取決于BF特征。
下面的散點圖描述了BF和Runs的線性關系,因為Runs將是前3個orange cap holder的決定因素。
see how the relationship is linear
同樣,下面我繪制了我用來擬合模型的其他特征的散點圖。
see how the relationship is linear with some outli
see how the relationship is linear with some outli
在線性回歸算法中,擬合模型的python代碼很少,因為我們使用兩個或多個特征,所以我必須得到最終的方程式,即多線性回歸方程。
總結
以上是生活随笔為你收集整理的python 回归去掉共线性_以IPL数据集为例的线性回归技术概述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 想投基金需要了解什么 掌握这几点就可以
- 下一篇: 网申的信用卡不去银行可以激活吗