1 推導感知機模型
基本思想是,把特征的線性加權值作為一個分數,根據這個分數與一個門限值的關系來進行分類:
我們加一個特征x0等于1,門限值就可以放到w里面去,得到更簡單的形式:
這就是感知機模型,對應一個分離超平面。
?
2 如何來學習感知機
“知錯能改”原則:找到一個誤分類點,就嘗試去修正它。具體的修正過程如下:
當找到一個誤分類點時,如果y本來是+1,則說明現在的w與x的內積為負,w與x的夾角太大,應該這樣更新:
如果y本來是-1,則說明現在的w與x的內積為正,w與x的夾角太小,應該這樣更新:
總結起來,就是對于誤分類點:
因此,標準的感知機學習算法可以總結如下:
直到不包含誤分類點,算法停止。
?
3 證明PLA算法在線性可分的數據集D上一定能收斂
(證明過程暫時沒看懂)
4 pocket 算法
上面的PLA算法往往不能用于實際的數據集,因為實際數據集是包含噪聲,往往不滿足線性可分,那么上面的算法就不會停止。因此我們應該允許PLA犯一些錯,但是應該把犯錯最小化,問題表述為:
不幸的是,上面的問題是一個NP-Hard問題,因此我們用一個簡單的貪心算法來求解它的近似解:
?即每次只有當wt+1犯錯更少時才用它來代替wt。
?5 pocket與PLA的對比
pocket更慢,因為每次都要對整個數據集來檢查是不是犯錯更少:
?