通俗講解平方損失函數平方形式的數學解釋?

還是郭江師兄在第一次機器學習會上,給我們講解的相關線性模型知識,這裡進行總結平方損失函數平方的推導記錄一下,歡迎大家交流指錯~

一、由線性模型引出平方損失函數

假設有一個房屋銷售的數據如下:

我們將上面數據可視化如下(大致說明數據分布特點):

那麼,我們來了一個新的面積,需要預測它對應的房屋價格應該怎麼辦呢?

我們可以用一條曲線盡量準的擬合這些數據,如果有新的輸入數據過來,我們就可以將曲線上該面積對應的價格返回。如果用一條直線擬合,可能是下面這個圖像:

恩,上圖的紅線就是我們想要得到的直線(線性模型)。

線性回歸假設特徵和結果滿足線性關係。 其實線性關係的表達能力非常強大,每個特徵對結果的影響強弱可以有前面的參數體現,一般化線性模型,我們是有多個變數的線性模型。我們用向量形式來表達線性模型,如下:

那麼我們可以求出不同的theta ,來得到不同的模型。

這樣的話,問題來了,我們如何知道每一個模型的好壞,也就是說,我們需要一個機制來判斷我們的theta 是好是壞!

這就引出了我們的損失函數,如下:

我們通過最小化損失函數得到的theta ,就是我們覺得最優的theta ,也就是我們認為此時的模型(知道了參數theta 也就確定了我們的模型)最優(這裡也很好理解,這個公式儘可能使得我們預測出來的值與真實的值無限逼近!!

那麼損失函數為什麼是平方形式呢?如果只是表達模型預測出來的值與真實值無限逼近,三次方,四次方,哪怕絕對值形式也是可以的,如下這些:

J(theta )=1/2sum_{i=1}^{m}{(h_{theta }(x^{(i)}-y^{(i)}  ) )^{3} }n

J(theta )=1/2sum_{i=1}^{m}{(h_{theta }(x^{(i)}-y^{(i)}  ) )^{4} }n

為什麼是平方形式呢?不要急,這也是下面要解釋的內容。

二、損失函數採取平方形式的數學解釋

假設根據特徵的預測結果與實際結果有誤差varepsilon ^{(i)} ,那麼預測結果theta ^{T}x^{(i)}  真實結果y^{(i)} 滿足下

式:

一般在實際應用中,我們的訓練數據都是海量的,根據中心極限定理,我們可以假定誤差滿足平均值u為0的正態分布。

那麼x,y的條件概率滿足如下:

上式相當於估計了一條樣本的結果概率,根據極大似然估計(後面會寫一篇文章詳細介紹)我們希望在給定的訓練數據中,這些數據出現的概率最大,也就是概率積最大!累積形式如下:

取對數如下:

這時我們想 logL(mu  ,sigma ^{2} )函數值最大,這些訓練數據的誤差方差我們假設是一個定值(數據趨於無窮大的時候,均值與方差都是可以看成定值),也就是對求似然估計沒有影響。

那麼我們此時想要使得logL(mu  ,sigma ^{2} )最大,只需要將1/2sum_{i=1}^{m}{(h_{theta }(x^{(i)}-y^{(i)}  ) )^{2} }n 最小化即可!(因為除了該項其它各項都是定值!)

這也就是我們損失函數採取平方形式的數學解釋!歡迎大家指錯交流~

參考:JerryLead機器學習筆記

線性回歸損失函數為什麼要用平方形式 - saltriver的專欄 - 博客頻道 - CSDN.NET(博主採取用求偏導,假定方差越小越好,這也是一種思路)

致謝:郭江師兄


推薦閱讀:

智能時代的怪獸四:語言的運算(上)
cs.CL weekly 2016.08.29-2016.09.02
Word2Vec如何解決多義詞的問題?
《Improving Document Clustering by Eliminating Unnatural Language》閱讀筆記
為什麼word2vec出來以後,大家還在用distributional hypothesis找近義詞?

TAG:机器学习 | 深度学习DeepLearning | 自然语言处理 |