林軒田
Maching Learning
機器學習基石
本文討論內容請參考:
機器學習基石第一講 : The Learning Problem
機器學習基石第二講 : Learning to Answer Yes/No本篇所有圖片部分由筆者製作,其它均為機器學習基石課程內容講義
Learning : 從觀察開始,經由腦內轉化,形成有用的技能。
Machine Learning : 利用電腦模擬上述的過程,稱之。
Machine Learning 本質 :
存在潛藏模式可以被學習,但我們無法明確給訂規則及定義,因此利用過往資料讓機器自行學習判斷。
Perceptron Hypothesis Set
Perceptron指的是一種簡單的二元分類器
在此處可以清楚看見,決定
Geometric Meaning of
在林軒田的課程中,講義的符號的一些細節常常會讓人忽略,然而讀到後面就會開始腦袋打結,例如 : 資料點
在Step2中,以數學的觀點來看,第
經過這樣一系列的迭代過程,PLA最終真的會停止(halt)嗎?
是的,只要我們手中的Dataset是線性可分(Linear Separable),最後PLA必然會收斂,這就是所謂的 " Perceptron Convergence Theorem"
PLA其實是一個極為理想的狀態,是否真正存在一個理想的
如果我們真的找不到完美的分類器,那麼可以退而求其次,找出誤差最小的總可以了吧!
這是一種PLA的變形演算法,過程與PLA大致都相同,一樣要經過迭代程序,但不同的地方在於 : 「PLA目的在找出一個絕對好的分類器,但Pocket則是找出相對好的即可。」
每一次的迭代過程,都把新的
[Remark] Pocket演算法不見得最終會 halt (因為現實資料並不見得線性可分),那麼停止的條件便只能用人為來判斷迭代次數,只要我們認為迭代次數夠多了就可以停止Pocket Algorithm
這樣的演算法,便能克服在現實狀況中會遇到的問題。
但是這也不是非常完美的方式,這樣的演算法的計算時間相對PLA要來的久 ( 因為要不斷儲存
可以表達為小於等於a的最大整數,但在此為