機器學習之1 線性回歸

2021-07-07 01:46:36 字數 1050 閱讀 1852

在最近一段時間,對機器學習進行了學習,但感覺效果不是很好。一日與朋友聊起此事,他建議建個部落格,一來梳理一下所學內容,二來和大家一起學習交流。因此,建立了此部落格,如果您發現博文中有不當之處,歡迎您來郵指明,我的郵箱為[email protected]

在機器學習中,基本分為兩大問題——監督學習(supervised learning)和非監督學習(unsupervised learning),監督學習又分為分類(classification)問題和回歸(regression)問題。在監督學習中,雖然每一類問題中都有很多方法,但是基本的思路都是沿著建模——確立cost function——引數最優化——新資料的**

接下來梳理一下線性回歸演算法。在建立模型之前,我們先來定義幾個參量。

xi——第i個樣本特徵向量,i=1,2....,m

yi——第i個輸出結果向量,i=1,2....,m

θ——引數向量,維數與x一致,j=1,2....,n

m——樣本總數

n——特徵個數

那麼假設函式應該可以表示為

其中xj

i是第i個樣本的第j個特徵。在構造假設函式時,個人認為應當謹慎,要做到不能過擬合也不能欠擬合,應當根據特徵的個數來進行選擇。

在該問題中,我們使用最小二乘法來構造cost function,我們定義j(θ)為hθ(x)的cost function,則其公式如下:

我們將將對j(θ)進行優化,在優化過程中,我們採用最小均方演算法(least mean square,lms),lms演算法的中心思想為通過迭代將凸函式j(θ)逐漸逼近到最優點。

在更新的過程中,我們使用梯度下降法,梯度下降法能夠很容易地得到區域性最優解。梯度下降法分為批量梯度下降法和隨機梯度下降法。引數θ的更新公式如下:

在使用批量梯度下降法時,使用全部的樣本來進行更新每乙個引數,而使用隨機梯度下降法時,我們僅僅使用乙個樣本來更新引數。所以,批量梯度下降法的計算量十分大,當資料量比較大時,執行速度緩慢,但是能夠得到較為最優的結果,而隨機梯度下降法僅僅使用乙個樣本的資料,因此,執行速度比較快,但是一般在最優點附近徘徊,不能得到較為精確的最優解。

[1] andrew ng.coursea,

機器學習(1) 線性回歸

無正則的線性回歸模型 l1正則的lasso模型 l2正則的ridge regression 嶺回歸 模型 開方均方誤差 rooted mean squared error,rmse 平均絕對誤差 mean absolute error,mae 1.生成學習器例項 lr linearregressio...

機器學習 1 線性回歸

2 linear regression with multiple variables multivariate linear regression 多變數線性回歸 3 gradient descent in practice 3.2 learning rate 3.3 features and p...

機器學習之線性回歸

訓練樣例 x y 輸入變數 特徵 x ps n 1行,1 列 輸出變數 目標變數 y訓練樣例總數 m 特徵維度 n第 i 個訓練樣例 x i y i 所有訓練樣例的輸入變數組成的矩陣 x ps m行,n 1 列,每行是 x i t 所有訓練樣例的輸出變數組成的矩陣 y ps m行,1 列 下表是某地...