在線學習(Online Learning)

轉載地址:http://www.cnblogs.com/jerrylead/archive/2011/04/18/2020173.html

  

    原題目叫做The perception and large margin classifiers,其實探討的是在線學習。這裏將題目換了換。以前討論的都是批量學習(batch learning),就是給了一堆樣例後,在樣例上學習出假設函數h。而在線學習就是要根據新來的樣例,邊學習,邊給出結果。

      假設樣例按照到來的先後順序依次定義爲clip_image002。X爲樣本特徵,y爲類別標籤。我們的任務是到來一個樣例x,給出其類別結果y的預測值,之後我們會看到y的真實值,然後根據真實值來重新調整模型參數,整個過程是重複迭代的過程,直到所有的樣例完成。這麼看來,我們也可以將原來用於批量學習的樣例拿來作爲在線學習的樣例。在在線學習中我們主要關注在整個預測過程中預測錯誤的樣例數。

      拿二值分類來講,我們用y=1表示正例,y=-1表示負例。回想在討論支持向量機中提到的感知算法(perception algorithm)。我們的假設函數爲

      clip_image003

      其中x是n維特徵向量,clip_image005是n+1維參數權重。函數g用來將clip_image007計算結果映射到-1和1上。具體公式如下:

      clip_image008

      這個也是logistic迴歸中g的簡化形式。

      現在我們提出一個在線學習算法如下:

      新來一個樣例clip_image010,我們先用從之前樣例學習到的clip_image012來得到樣例的預測值y,如果clip_image014(即預測正確),那麼不改變clip_image005[1],反之

      clip_image016

      也就是說,如果對於預測錯誤的樣例,clip_image005[2]進行調整時只需加上(實際上爲正例)或者減去(實際負例)樣本特徵x值即可。clip_image005[3]初始值爲向量0。這裏我們關心的是clip_image018的符號,而不是它的具體值。調整方法非常簡單。然而這個簡單的調整方法還是很有效的,它的錯誤率不僅是有上界的,而且這個上界不依賴於樣例數和特徵維度。

下面定理闡述了錯誤率上界:

      定理(Block and Novikoff)

      給定按照順序到來的clip_image002[1]樣例。假設對於所有的樣例clip_image020,也就是說特徵向量長度有界爲D。更進一步,假設存在一個單位長度向量clip_image022clip_image024。也就是說對於y=1的正例,clip_image026,反例clip_image028,u能夠有clip_image030的間隔將正例和反例分開。那麼感知算法的預測的錯誤樣例數不超過clip_image032

      根據前面對SVM的理解,這個定理就可以闡述爲:如果訓練樣本線性可分,並且幾何間距至少是clip_image030[1],樣例樣本特徵向量最長爲D,那麼感知算法錯誤數不會超過clip_image032[1]。這個定理是62年提出的,63年Vapnik提出SVM,可見提出也不是偶然的,感知算法也許是當時的熱門。

下面主要討論這個定理的證明:

      感知算法只在樣例預測錯誤時進行更新,定義clip_image034是第k次預測錯誤時使用的樣本特徵權重,clip_image036 初始化爲0向量。假設第k次預測錯誤發生在樣例clip_image038上,利用clip_image034[1]計算clip_image040值時得到的結果不正確(也就是說clip_image042,調換x和clip_image005[4]順序主要是爲了書寫方便)。也就是說下面的公式成立:

      clip_image043

      根據感知算法的更新方法,我們有clip_image045。這時候,兩邊都乘以u得到

      clip_image046

      兩個向量做內積的時候,放在左邊還是右邊無所謂,轉置符號標註正確即可。

      這個式子是個遞推公式,就像等差數列一樣f(n+1)=f(n)+d。由此我們可得

      clip_image047

      因爲初始clip_image005[5]爲0。

      下面我們利用前面推導出的clip_image049clip_image020[1]得到

clip_image050

      也就是說clip_image052的長度平方不會超過clip_image034[2]與D的平方和。

      又是一個等差不等式,得到:

      clip_image053

      兩邊開根號得:

      clip_image054

      其中第二步可能有點迷惑,我們細想u是單位向量的話,

      clip_image055

      因此上面的不等式成立,最後得到:

      clip_image056

      也就是預測錯誤的數目不會超過樣本特徵向量x的最長長度與幾何間隔的平方。實際上整個調整過程中clip_image005[6]就是x的線性組合。

      整個感知算法應該是在線學習中最簡單的一種了,目前發現online learning挺有用的,以後多多學習。

發佈了15 篇原創文章 · 獲贊 20 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章