機器學習 單變數線性回歸

2021-10-10 08:13:34 字數 2780 閱讀 3790

之前寫過一篇關於線性回歸的博文,今天就單變數的線性回歸做以歸納總結。

模型表達(model representation)

我們的第乙個學習演算法是線性回歸演算法,讓我們通過乙個例子來開始。這個例子用來**住房**,我們使用乙個資料集,該資料集包含奧勒岡州波特蘭市的住房**。在這裡,我要根據不**屋尺寸所售出的**,畫出我的資料集:

現在我們給出經常使用的一些符號定義,如下:

用 m 來表示訓練樣本的數目,因此,在這個資料集中如果表中有47行,那麼我們就有47組訓練樣本,m就等於47。

用小寫字母 x 來表示輸入變數,往往也被稱為特徵量,就是用 x 表示輸入的特徵,並且我們將用 y 來表示輸出變數或者目標變數,也就是我的**結果,也就是上面**的第二列。

在這裡我們要使用 (x, y) 來表示乙個訓練樣本,因此,在這個**中的單獨的一行對應於乙個訓​​練樣本。

為了表示某個特定的訓練樣本,我們將使用x上標(i)與y上標(i)來表示,並且用這個來表示第 i 個訓練樣本,所以上標為 i ,注意這不是求冪運算,這個(x(i), y(i)) 括號裡的上標 i 只是乙個索引,表示我的訓練集裡的第 i 行。

我們的房屋****就是乙個監督學習演算法的工作方式,如下圖:

我們可以看到這裡有我們的訓練集裡房屋**,我們把它餵給我們的學習演算法,進而學習得到乙個函式,按照慣例,通常表示為小寫 h,h 代表 hypothesis(假設), 在此處,h 表示乙個函式,其輸入是房屋尺寸大小。因此 h 根據輸入的 x 值來得出 y 值,y 值對應房子的**。因此,h 是乙個從 x到 y 的函式對映。

大家經常會有這樣的疑問:為什麼這個函式被稱作假設(hypothesis)?你們中有些人可能知道 hypothesis 的意思,從字典或者其它什麼方式可以查到。其實在機器學習中,這是乙個在早期被用於機器學習的名稱,它有點繞口,對某些函式來說這可能不是乙個很恰當的名字。例如,對表示從房屋的大小到**的函式對映,我認為這個詞 「hypothesis」 就可能不是最好的名稱。但是這是人們在機器學習中使用的標準術語,所以我們不用太糾結人們為什麼這麼叫它。

當我們在設計學習演算法的時候,需要去思考的是怎樣得到這個假設 h。例如,對於我們的房價**問題,我們該如何表達 h ? 一種可能的表達方式為:

因為只含有乙個特徵/輸入變數,因此這樣的問題叫作單變數線性回歸問題。

我們在梯度下降演算法中要做的就是不停地一點點地改變 θ0 和 θ1 ,試圖通過這種改變使得 j(θ0 ,θ1) 變小,直到我們找到 j(θ0 ,θ1) 的最小值。或許是區域性最小值。

讓我們通過一些來看看梯度下降法是如何工作的,我們在試圖讓 j(θ0 ,θ1) 最小,注意座標軸 θ0 和 θ1 在水平軸上,而函式 j(θ0 ,θ1) 在垂直座標軸上,圖形表面高度即是 j(θ0 ,θ1) 的值。我們希望最小化這個函式,因此我們從 θ0 和 θ1 的某個值出發。所以想象一下,對 θ0 和 θ1 賦以某個初值,也就是對應於從這個函式表面上的某個起始點出發,因此不管 θ0 和 θ1 的取值是多少,我將它們初始化為0。但有時你也可把它初始化為其他值。

下圖是梯度下降演算法的定義:

注意,在梯度下降演算法中,我們需要同時更新 θ0 和 θ1。

如果學習速率太小,只能這樣像小寶寶一樣一點點地挪動,去努力接近最低點,這樣就需要很多步才能到達最低點。

如果學習速率太大,那麼梯度下降法可能會越過最低點,甚至可能無法收斂。實際上,會離最低點越來越遠,因此,如果α太大,會導致無法收斂,甚至發散。

如果你的引數已經處於區域性最低點,那麼梯度下降法更新其實什麼都沒做(求導為0),它不會改變引數的值,這也正是你想要的,因為它使你的解始終保持在區域性最優點,這也解釋了為什麼即使學習速率 α 保持不變時,梯度下降也可以收斂到區域性最低點。

梯度下降一步後,新的導數會變小一點點。隨著梯度下降法的執行,你移動的幅度會自動變得越來越小,直到最終移動幅度非常小,你會發現已經收斂到區域性極小值。

在梯度下降法中,當我們接近區域性最低點時,梯度下降法會自動採取更小的幅度。這是因為當我們接近區域性最低點時(很顯然在區域性最低時導數等於零 ),導數值會自動變得越來越小,所以梯度下降將自動採取較小的幅度,這就是梯度下降的做法,所以實際上沒有必要再另外減小α。

實際上,我們剛剛介紹的梯度下降,是「批量梯度下降」,指的是,在梯度下降的每一步中我們都用到了所有的訓​​練樣本。在梯度下降中,在計算微分求導項時,我們需要進行求和運算,所以在每乙個單獨的梯度下降中,我們最終都要計算這樣一項,這項需要對所有m個訓練樣本求和。

而事實上,也有其他型別的梯度下降法不是這種"批量"型的,不考慮整個的訓練集,而是每次只關注訓練集中的一些小的子集。

機器學習 單變數線性回歸

1.模型描述 1 常見的字元的意義 2 乙個監督學習演算法的工作方式 2.代價函式 1 什麼是代價函式 平方誤差函式 目標函式 我在網上找了很長時間代價函式的定義,但是準確定義並沒有,我理解的代價函式就是用於找到最優解的目的函式,這也是代價函式的作用。注意 上面的代價函式是二變數的,事實上代價函式可...

機器學習 單變數線性回歸

你有乙個10000平方英呎的房子,現在要進行轉買,能賣多少錢呢?單變數線性回歸,顧名思義是乙個變數對結果產生的影響,例如上題房屋面積對房屋 的影響 回歸是統計學的乙個重要概念,其本意是根據之前的資料 乙個準確的輸出值,解題思路如下 1 定義乙個模型 h x 0 1x,並初始化 0 1的值就會產生乙個...

機器學習 單變數線性回歸

給定房屋面積和房屋 的資料,然後以房屋面積為橫座標,房屋 為縱座標,繪製資料點。通過繪製曲線,獲得房屋房價的模型,根據房屋面積獲得房屋 這就是乙個regression problem 回歸問題 regression指的是根據之前的資料 出乙個準確的輸出值,即predict real valued o...