1、感知機(jī)算法簡(jiǎn)述
感知機(jī)算法其實(shí)已經(jīng)很熟悉了,這次看《統(tǒng)計(jì)學(xué)習(xí)方法》權(quán)當(dāng)復(fù)習(xí)一遍,然后有一個(gè)point對(duì)我來(lái)說(shuō)是新的——感知機(jī)算法實(shí)際上采用了隨機(jī)梯度下降。這其實(shí)是一個(gè)很顯然的點(diǎn),但我之前看到的資料都是直接說(shuō)明了超平面參數(shù)的更新方式,并從幾何直觀上解釋了這樣做是為了讓超平面向誤分樣本點(diǎn)的方向旋轉(zhuǎn),而未從梯度的角度來(lái)解釋?zhuān)@里補(bǔ)充一下這個(gè)角度。
感知機(jī)(perceptron)是二分類(lèi)線性分類(lèi)模型,其輸入空間(特征空間)是,輸出空間是
,由輸入空間到輸出空間的如下函數(shù):
稱(chēng)為感知機(jī)。和
分別是感知機(jī)的權(quán)值和偏置。
感知機(jī)的損失函數(shù)定義為所有誤分類(lèi)點(diǎn)到超平面的距離之和,即:
其中表示誤分類(lèi)點(diǎn)的集合,若
固定,則損失函數(shù)梯度為:
采用隨機(jī)梯度下降法,每次隨機(jī)選取一個(gè)誤分類(lèi)點(diǎn),對(duì)
進(jìn)行更新:
其中稱(chēng)為學(xué)習(xí)率。
感知機(jī)算法流程如下:
(1)選取初值。
(2)在訓(xùn)練集中選取數(shù)據(jù)。
(3)如果,則更新參數(shù):
(4)轉(zhuǎn)至(2)直至訓(xùn)練集中無(wú)誤分點(diǎn)。
2、感知機(jī)算法收斂性證明
所謂感知機(jī)算法的收斂性,就是說(shuō)只要給定而分類(lèi)問(wèn)題是線性可分的,那么按上述感知機(jī)算法進(jìn)行操作,在有限次迭代后一定可以找到一個(gè)可將樣本完全分類(lèi)正確的超平面。
首先,為了方便推導(dǎo),我們將偏置并入權(quán)重向量
,記作
,同樣將輸入向量加以擴(kuò)充,記作
,顯然,
。
既然樣本是線性可分的,我們可以假設(shè)有一個(gè)滿足條件的超平面
將樣本點(diǎn)完全正確分開(kāi),且存在
,對(duì)所有
,有:
令,則感知機(jī)算法在訓(xùn)練集上誤分類(lèi)次數(shù)
滿足:
證明:
結(jié)合上述兩個(gè)結(jié)論,可以得到:
從而感知機(jī)算法的收斂性得證。