感知器算法(Perceptron Algorithm)
- 隨機(jī)選擇
和
- 取一個(gè)訓(xùn)練樣本
- 若
且
則
- 若
且
則
- 若
- 再取另一個(gè)
回到(2)
- 終止條件: 直到所有輸入輸出對(duì)都不滿(mǎn)足(2)中(i)和(ii)之一,退出循環(huán)
SVM 與神經(jīng)網(wǎng)
SVM 適合處理小樣本讶迁,而感知機(jī)特別是后來(lái)神經(jīng)網(wǎng)絡(luò)需要的大數(shù)據(jù)雏婶。神經(jīng)網(wǎng)模型沒(méi)有 SVM 那么美,也沒(méi)有 SVM 那么嚴(yán)謹(jǐn)。
SVM 首先將 X 和 y 全部輸入到模型折欠,然后所有樣本來(lái)建立一個(gè)很大優(yōu)化問(wèn)題叠萍,然后再去解這個(gè)優(yōu)化的問(wèn)題。以全局眼光來(lái)看所有樣本來(lái)做這件事渡讼。感知器與 SVM 最大不同就是感知器一批一批接收樣本然后不斷地優(yōu)化參數(shù)來(lái)實(shí)現(xiàn)模型訓(xùn)練骂束。
而感知機(jī),每次只看一部分模型成箫,然后進(jìn)行學(xué)習(xí)更新參數(shù)展箱,最后看看結(jié)果怎么樣,如果結(jié)果不算好蹬昌,繼續(xù)投入樣本進(jìn)行學(xué)習(xí)更新參數(shù)混驰。這樣學(xué)習(xí)過(guò)程更加符合我們?nèi)祟?lèi)實(shí)際情況。
-
的情況下會(huì)將 y 分類(lèi)到 +1 所以也就是說(shuō)明目前的
不能對(duì) X 正確分類(lèi)皂贩,所以接下來(lái)做了
來(lái)更新參數(shù)
那么我們想一下栖榨,現(xiàn)在我們希望將 向負(fù)方向移動(dòng),那么移動(dòng)距離就是
-
的情況下會(huì)將 y 分類(lèi)到 -1 所以也就是說(shuō)明目前的
不能對(duì) X 正確分類(lèi)明刷,所以接下來(lái)做了
來(lái)更新參數(shù)
這里存在一個(gè)問(wèn)題婴栽,經(jīng)過(guò)反復(fù)調(diào)整也不會(huì)停止情況,如果數(shù)據(jù)是線(xiàn)性可分辈末,經(jīng)過(guò)調(diào)整最終調(diào)整會(huì)停止下來(lái)愚争。但是感知機(jī)分開(kāi)效果沒(méi)有 SVM 那么好。
定義一個(gè)增廣向量 ,若
則
挤聘,若
則
轰枝,所謂增廣就是給 X 增加一個(gè)維度。這樣寫(xiě)方便组去,增廣的 W 如下
我們可以用增廣的
和
來(lái)打入上式
- 輸入
- 隨機(jī)選擇 W
- 取一個(gè)訓(xùn)練樣本
- 若
則
- 若
- 再取另一個(gè)
回到(2)
- 終止條件: 直到所有輸入輸出對(duì)都不滿(mǎn)足(2)中(i)和(ii)之一狸膏,退出循環(huán)。現(xiàn)在我們用
替換掉上面兩個(gè)不等式√碚現(xiàn)在找
使?jié)M足
感知器算法收斂算法定理
輸入增廣向量 若線(xiàn)性可分湾戳,即存在
使
則利用上述感知器算法贤旷,經(jīng)過(guò)有限步得到一個(gè)
,使
證明: 不失一般性砾脑,設(shè), 這樣做的原因是
也
是同一個(gè)平面幼驶,所以可以用 a 參數(shù)對(duì)其進(jìn)行調(diào)整,假設(shè)第 k 步的
是
, 且有一個(gè)
使
,根據(jù)感知機(jī)算法:
既然存在 存在韧衣,而根據(jù)上面假設(shè)則有
一定可以取很大 a 使得
然后經(jīng)過(guò)不斷迭代都會(huì)使
到
距離變小盅藻。
定義一個(gè) 定義一個(gè)
如果取
則