迴歸

本文主要記錄一下相關的概念…..

Regression

之前研究過的一些通過監督學習解決的分類問題,都具有一個共同的特徵,就是其輸出的類別都是離散型變量。

當我們需要去預測的對象類型是連續類型的時候,該怎麼去解決它呢?

迴歸分析作爲其解決的方法之一,它也屬於監督學習算法,但是是一種特定類型的監督學習,不同於分類。

最簡單的例子就是線性迴歸(Linear Regression),正如我們在高中課本中學到的那樣,對於在二維座標軸中一些散點數據集,我們可以進行迴歸分析得到一條直線(稱作迴歸方程 - Regression equation),用於預測縱座標的值。而其中使用的方法爲最小二乘法。

評估線性迴歸方程的擬合程度
1、SSE (Sum of Squared Error),誤差平方和。越小說明直線的擬合程度越好。
2、R2 ,取值介於0 - 1 ,越接近1,說明擬合效果越好!

上述值具體的計算方法:詳細的線性迴歸的解釋

邏輯迴歸(Logistic Regression):
邏輯迴歸的模型 是一個非線性模型,sigmoid函數,又稱邏輯迴歸函數。但是它本質上又是一個線性迴歸模型,因爲除去sigmoid映射函數關係,其他的步驟,算法都是線性迴歸的。可以說,邏輯迴歸,都是以線性迴歸爲理論支持的。只不過,線性模型,無法做到sigmoid的非線性形式,sigmoid可以輕鬆處理0/1分類問題。

Code

from sklearn import linear_model
reg = linear_model.LinearRegression()
reg.fit (x_train, y_train)
y_pre = reg.predict(x_test)
# reg.coef_ 表示得到的斜率
# reg.intercept_ 表示得到的截距

其他的迴歸模型

其他一些迴歸模型如:多項式迴歸,逐步迴歸,嶺迴歸(Ridge Regression),套索迴歸(Lasso Regression),ElasticNet迴歸;

在迴歸分析中,經常會出現多重共線性問題,那是因爲我們在研究數據的過程中,總是會出現一些多維度的數據,這個時候,這些高緯度的數據就會出現多重共線性以及變量選擇的問題;

如何消除多重共線性確定最佳模型,是迴歸分析的一個重點,套索迴歸模型和的作用和嶺迴歸有些類似,都是爲了減少自變量的多重共線性的影響的一種建模方法;

Min:SSE+λ|coefi|

這個方法和嶺迴歸不同的是,它在參數估計的同時能夠實現自變量精簡的估計方法,其實質就是加一定的約束條件,就是用模型的迴歸係數的絕對值之和函數作爲懲罰(正則化項)來壓縮模型係數,使得一些迴歸係數變小。

將絕對值較小或者影響因子較小的自變量的迴歸係數置爲零,這樣做的後果和嶺迴歸有些類似,就是犧牲了一定的估計偏差,但是能降低預測的方差從而提高預測的精準性;

這樣也就達到了 特徵選擇 的目,在保證一定預測正確率的情況下簡化了迴歸模型!(消除了某些特徵)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章