什麼樣的機器學(xué)習(xí)演算法可以做是非題导匣?
流程回顧:
模型:
上圖公式中 w 是這個維度的重要性卤档。h 表示的是所有可能的公式。sign 指的是取正負號 。
把要思考的資料 x 想成一個多維度的向量甸私,每一個維度都有一個評分,這個評分影響著我們最終輸出結(jié)果 y 飞傀。給所有的維度值一個綜合的分?jǐn)?shù)皇型,這個分?jǐn)?shù)如果超過某一個標(biāo)準(zhǔn),y 為正向砸烦,如果沒有超過標(biāo)準(zhǔn)弃鸦,y 為負 。
進一步簡化:
圖形化表示 h (綫性分類器) :
- 圖片中所有點的位置表示 input 資料 x 外冀。
- 在位置資料上標(biāo)記 X 和 O寡键,表示得到的 output y。
- 圖中的分割綫就是今天我們找到的 h 。不同的 h 會在這個範(fàn)例中畫出不同的區(qū)塊西轩。
問題1:
2 的單詞中會被當(dāng)成是垃圾郵件的 weight 比較高员舵。
如何得到最好的 g 。
我們希望得到最好的結(jié)果就是 g 無限接近 f 藕畔。
那麼马僻,我們通過 g 找到的 y 就應(yīng)該盡可能的與已知資料的結(jié)果是接近,最好是相同的注服。
遇到的困難是 H 是無限大的韭邓。
思路:我們可以先得到一條綫,不斷的修復(fù)它溶弟。
PLA演算法:
PLA 演算法的觀念是找到一個結(jié)果女淑,讓這個結(jié)果跟已知的結(jié)果進行比較,之後不斷的修正辜御,直到所有已知的結(jié)果都沒有錯誤爲(wèi)止鸭你。
如圖片中所描述的,我們先得到 h 算出的結(jié)果擒权,可能為 + 可能為 - 袱巨。
如果今天我的結(jié)果是 + ,然後已知的結(jié)果是 - 碳抄,那麼説明我得到的結(jié)果跟已知結(jié)果的角度過大了愉老,就需要把已知的結(jié)果加上現(xiàn)有的 h。
如果今天我的結(jié)果是 +剖效,然後已知的結(jié)果是 - 嫉入,那麼説明我得到的結(jié)果跟已知結(jié)果的角度過小了,就需要把已知的結(jié)果減去現(xiàn)有的 h贱鄙。
A fault confessed is half redressed.(知錯就改)
如何來判斷是否還存在有錯誤:
Cyclic PLA : 從第一個點到最后一個點進行循環(huán)糾錯劝贸,如果全部都沒有問題,那就表示修正成功逗宁。
但是如果一直存在錯誤映九,這個演算法可能不會停下來。
儅我們需要知道PLA演算法會不會正常停下來的時候瞎颗,其中必要條件就是有一個可以分割的資料件甥,我們稱這些可以通過一條綫分割的資料爲(wèi)綫性可分(linear separable)。
假設(shè)今天我們的資料是 linear separable哼拔,那麼我們使用 PLA 能不能找到這一條綫呢引有?
假定我們處理的資料是 linear separable ,分割綫為 Wt倦逐,我們定義一個 Wf 譬正,認(rèn)爲(wèi) Wf 就是我們找到的目標(biāo)。
Wf 的特性一定是滿足我們的需求。它完美的分開了 data 曾我。
既然有了 Wf 粉怕,那麼接下來需要考慮的就是我們定義的這個 Wf 跟真實的 Wt 會不會是接近的關(guān)係。
判斷兩個向量是否接近的方法抒巢,這裏使用的是看向量內(nèi)積贫贝。
有上圖可知,兩個向量的內(nèi)積會越來越大蛉谜,但是并不能完全證明 Wf 跟 Wt 越來越接近(因爲(wèi)兩個向量的內(nèi)積的決定因素是角度以及兩個向量的長度)稚晚。
如果能確定 Wf 跟 Wt 內(nèi)積增大的原因是因爲(wèi)角度的話,就可以表明他們之間越來越接近型诚。因此我們需要討論 Wf 每次修正后跟 Wt 長度之間的變化情況客燕。
論證 2 中的 T ,表示的是 PAL 執(zhí)行的次數(shù)的上限俺驶。
練習(xí):
由之前的推論可以得到一個結(jié)果就是幸逆,Wf 跟 Wt 完全一致的時候,我們可以得到最大的 cosθ 的值為 1 暮现。
所以也就有了上面那個答案的結(jié)論。
總結(jié)PLA:
Pocket Algorithm:
儅今天我們沒辦法預(yù)測說能不能準(zhǔn)確的通過 PLA 演算法找到我們要的 Wt楚昭,因而我們可以選用一些改變的演算法栖袋,例如說 Pocket Algorithm 。它跟 PLA 類似抚太,但是多一條規(guī)則塘幅,就是先存下來第一次找到的綫,之後的綫都跟存下來的綫進行比較尿贫,比較說哪一個更好,最終留下更好的。
學(xué)習(xí)視頻:機器學(xué)習(xí)基石(6~9)