機器學習入門---簡單線性回歸

機器學習

機器學習就是模擬人類的學習能力,以獲取新的知識或技能,來提升已有的知識結構的性能。

機器學習的步驟如下:

機器學習演算法就是通過學習訓練數據的特徵和標籤,產生對應的演算法模型,預測數據特徵對應的標籤。其中特徵是指屬性,標籤是指類別。

簡單線性回歸

線性回歸在假設特證標籤滿足線性關係,根據給定的訓練數據訓練一個模型,並用此模型進行預測。

1.相關性

線性回歸其實就是研究線性相關性,線性相關包括兩種,正線性相關(兩個變數同方向變化),負線性相關(兩個變數反方向變化)。相關係數用來度量線性相關性, 相關係數r=frac{X和Y的協方差}{X的標準差*Y的標準差}=frac{cov(X,Y)}{sigma_{X}sigma_{Y}}

cov(X,Y)=E[(X-E[X])(Y-E[Y])]

相關係數的範圍為, -1ll r ll 1 ,其中0表示不相關,負值表示負線性相關,正值表示正線性相關。

Python中用corr()計算相關係數,將返回一個相關係數矩陣,對角線為1,因為數據本身相關係數為1,矩陣關於對角線對稱,所以只需要看對角線一側的數據。

2.最佳擬合線

在訓練數據的散點圖上,我們可以畫一條線,這條線可以最準確的表示散點的方向位置,我們叫這條線為最佳擬合線。回歸方程為 y=a+bx ,其中a為截距,b為回歸係數。

Python中用sklearn包中的LinearRegression()創建模型。

3.評估模型精確度

我們使用訓練數據創建模型,用測試數據評估模型精確度。

決定係數R平方用來評估模型精確度,R平淡過越大,回歸模型越精確。

決定係數R平方=1-frac{誤差平方和}{總波動}

其中,

誤差平方和=sum_{}^{}({y實際值-y預測值})^{2}

總波動=sum_{}^{}({y實際值-y平均值})^{2}

Python中用score()評估模型:


推薦閱讀:
相关文章