0%

機器學習基石(Machine Learning Foundation)第九講筆記

上堂課講到err的衡量方法有兩種,其中一種squared err就是這這堂課Regression就會用到的err衡量方法。

regression會拿來解連續型資料的問題,以前面提過的信用卡案例來說,regression就不是拿來用在判斷要不要發給信用卡,而且會決定發卡的額度上限是多少,依然是一個機器學習問題。

前面的例子也有說到,不同的資料特徵值可能會有不同的重要性,所以會有一個權重w來表示每個x的重要性加權。這有點累似之前的perceptron,但差別是perceptron是用來作二元分類,所以會再取sign判斷正負號,而這裡的regression是不用的。

linear regression的hypothesis主要會找到一條線(或超平面)來盡量滿足所有的資料點,而資料點和線或是平面的距離就稱為residuals(餘數),或是可以稱為誤差,我們會希望這個餘數越小越好,因為越小就代表hypothesis越正確。

一開始有講到,linear regression最常使用的錯誤衡量方法就是sqiared err。

在regression求Ein時,可以把運算過程轉換成向量矩陣運算

在求Ein最小值的過程只有W是未知的,而這個Ein(w)會是一個convex函式,在反覆修正W最終會得到一個最低點,也就可以找到Ein最小值,可以找透過找梯度為0來找到這個最低點。

中間會將梯度函式重新整理,在梯度等於0的情況下,最終會找到最好的W。在求W的過程中會帶出pseudo-inverse的概感,使用pseudo-inverse和y就可以求出最好的W。

這樣看起來直接計算出W好像有一步登天的感覺不像機器學習,但事實上linear regression可以說是機器學習方法,因為確實可以找到Ein,當你認同VC維那麼好的Ein就會有好的Eout,而且在計算過程中,其實背後也有很多的步驟進行並非一步就達成。

要怎麼確定linear regression真的可以學的好呢?可以透過對多的Ein的平均來衡量,而這個Ein的平均大概會等於noise level(資料的雜訊)×(1-d+1/N),所以如果資料量越多得到的結果就會越好。

以幾何上來說來說明,y是一個N維的向量,X是在N維上的一個小空間,而y(hat)會落在這個小空間裡。linear regression的目的就是讓y和y(hat)可以最小,最小的距離就是y到y(hat)的線性投影,所以linear regression的hypothesis的目的就是把任何一個向量投影到x空間中。因為H作了投影,而I-H等同就是在求餘數,即y-y(hat)。這之中會存在一個特性trace(I-H) = N-(d+1)。

y為f(x)加上noise,Ein其實就是把I-H用在noise向量上,最後推導出來Ein平均為noise level×(1-d+1/N),Eout平均推導出來剛好相反,為noise level×(1-d+1/N)。

從Ein和Eout可以畫出leraning curve,當資料量N越大時可以看到Ein和Eout的變化,Eout會越加越少,Ein會越減越少,兩者都會收斂。VC求的是最壞的情形,而我們現在是求平均的情形,但兩者會得到類似的結果,所以可以說linear regression在N夠大時,並在noise不是太多的情況下,確實是可以學習的。

和之前的線性分類相比,分類的y是兩元類別,迴歸是一個連續型實數;分類會取sign轉成二元類別而迴歸不用;在錯誤衡量方法,分類是用0/1 error而迴歸是用squared error。因為迴歸的運算可以很有效的得到解答,那麼是不是可以把linear regression拿來解分類問題嗎?

其實兩者最大的不同就是在錯誤的衡量,可以發現迴歸的平方錯誤會比分類0/1的錯誤還大。

接著把VC放進來分類問題,因為regression的squared錯誤會比0/1錯誤還大,分類會被regression bound住。所以如果可以把regression作的很好,就可以把分類作的很好,甚至可能把Eout也作好。所以確實可以用regression來取代作分類問題,會比較好解,但是效果確不一定比較好,因為其錯誤為分類的上界。

有個好的辦法是,先透過regression來算出一個W初始值,再將這個W拿去PLA進行學習,可能可以增加PLA學習的效率。

總結來說,這一堂課介紹了linear regression,其在求解時而要求出pseudo-inverse,而且可以確保Eout和Ein平均的差距為2(d+1)/N,最後linear regression是可以用在分類問題上的。

參考資料:
Machine Learning Foundation 09