1 如何更新權值向量?
2 最小均方法(LMS)與感知機:低效的民主
3 最小二乘法:完美的民主
4 支持向量機:現實的民主
5 總結
6 參考資料html
在關於線性模型你可能還不知道的二三事(1、樣本)中我已提到如何由線性模型產生樣本,在此前提下,使用不一樣機器學習算法來解決迴歸問題的本質都是求解該線性模型的權值向量W。同時,咱們常使用線性的方式來解決分類問題:求解分隔不一樣類別個體的超平面的法向量W。不論迴歸仍是分類,都是求解向量W,而求解的核心思想也英雄所見略同:向量W傾向於指向某些「重要」的個體。然而哪些個體是重要的呢?不一樣的機器學習算法有不一樣的定義。算法
最小均方法(LMS)使用的隨機梯度降低法與感知機的訓練法則相似,二者都是迭代更新的方式。假設本次迭代中的權值爲W,那麼更新後的權值W'爲(eta爲更新率):機器學習
隨機梯度降低法:學習
感知機:.net
經過觀察可知,權值更新是一個迭代的過程,不管是迴歸(最小均方法)仍是分類(感知機),權值更新時視當前輪次中偏差大的個體爲「重要」的個體。這種權值更新辦法比較直觀,可是同時也比較低效:人人都有發言的權利,每次只考慮部分人,容易顧此失彼。htm
二乘便是平方,最小二乘法旨在於求解權值向量W使得偏差平方和最小:blog
經過對權值向量的每一個份量進行求導可得:ci
至此,咱們能夠發現最小二乘法可解的條件爲特徵矩陣X是可逆的。假設特徵矩陣X的樣本容量n=m,那麼上式進一步化簡得:get
使用求解出來的權值向量W'對未知個體x'進行預測,本質就是計算:it
在《關於線性模型你可能還不知道的二三事(1、樣本)》中咱們已經揭開了特徵矩陣X的逆矩陣的意義,所以以上的計算過程能夠歸納爲:首先使用X的逆矩陣乘以未知個體x',獲得能夠準確描述未知個體x'與特徵矩陣X中已知個體類似度的列向量,而後以此爲基礎,使用加權求和的方法來計算未知個體x'的目標值。
到此,最小二乘法所詮釋的完美民主已顯見:在每一個人都不能由其餘人表明的前提下,看未知的個體與誰更類似,那麼目標值也與之更類似。
沒錯,以前咱們假設了特徵矩陣X的樣本容量n=m,可是大多數狀況下n是大於m的。這種狀況下權值向量計算公式沒法進一步化簡。一樣在《關於線性模型你可能還不知道的二三事(1、樣本)》中咱們提到,能夠轉化原問題爲:
這時,咱們能夠設新的特徵矩陣X'和新的目標值向量Y'爲:
到此,新的特徵矩陣X'是m×m的方陣,能夠求其逆矩陣了(固然,這仍是在原特徵矩陣的秩等於m的前提下)。所以有:
不難看到,上式一樣也是詮釋了完美的民主,只是特徵矩陣X變成了X',目標值向量Y變成了Y'而已。
完美的民主可遇而不可求,若是特徵矩陣X的秩小於m呢?此時最小二乘法便不奏效了。咱們指望不管特徵矩陣X的秩是否小於m,仍然能夠高效地求解權值向量W。
咱們能夠利用支持向量機解決該問題。不妨直接看到權值向量的最終結果(具體推導可參考《支持向量機通俗導論(理解SVM的三層境界)》):
使用上式計算出來的權值向量W對未知個體x'進行預測的原理是顯見的:首先將未知個體與特徵矩陣X中的個體相乘獲得對應的類似度,而後以此類似度乘以alpha的份量,最後在此基礎上以加權求和的方法來計算未知個體x'的目標值。然而,alpha究竟是什麼呢?
對支持向量機有必定了解的同窗確定會有一個基本的認識:支持向量爲alpha份量不爲0的點,該點位於間隔邊界上。也就是說,最終的權值只會考慮做爲支持向量的樣本!然而,進一步,不多有人會去思考:間隔邊界上的點都是支持向量嗎?支持向量所對應的alpha的份量值大小服從什麼規律嗎?支持向量爲何叫支持向量呢?這些問題暫且不表,在支持講支持向量機時進行進一步分析。
此時,咱們能夠引出結論:支持向量機表明的是一種現實的民主,我國的人民表明大會制也是如此。
此次,咱們探討了3種常見的線性模型權值向量求解思路。從LMS和隨機梯度降低到最小二乘,再到支持向量機,人們求解天然科學問題的思路與求解社會科學問題的思路走到了一塊兒。最近的一件小事帶給我啓發:居住的小區須要對某一些問題進行決策,一開始由熱心居民每家每戶聽取意見,結果遲遲拿不定主意,越聽越糊塗。到最後,只好選出業主委員會,由業主委員會表明各個特點羣體,問題才得以解決。
以前對線性模型的權值求解過程和結果都「記得」很是熟悉,可是其真正意義(特別是最小二乘)沒有去深究。而此次可以受到啓發,而且聯繫到現實生活中,也算是對線性模型有了更進一步的認識吧。