開始學習機器學習有一段時間了,一開始認爲做應用的只知道簡單的理論就夠了,因此更加傾向於學習《機器學習實戰》、《集體智慧編程》這類書籍,在學習了一段時間後,尤其是看了一段時間斯坦福大學的公開課以後,有一種強烈的慾望想要去學習機器學習中的數學,但是迫於自身數學能力不是很強,啃起《統計學習方法》這本書來,還是有一定難度的。只作爲一個筆記,以後可以溫故而知新。
在真正開始學習之前,其實統計學習方法中還是有一些基本概念需要理解的,在書中第一章。
基本概念
基本模型:
其中:
這是一種線性分類模型,屬於判別模型。
定義:假設輸入空間(特徵空間)是
學習策略
目的:找出一個線性可分的超平面,定義一個損失函數,求
損失函數的選取:
- 自然選擇是誤分類點的個數,但是這個函數並不是參數的連續可導函數,不易於優化;
可以選擇誤分類點到超平面的距離,即:
1∥ω∥|ω⋅x+b|,∥ω∥爲ω的L2範數 推導過程:
對於任何誤分類點來說:−yi(ω⋅xi+b)>0, 1∥ω∥|ω⋅x+b|=−1∥ω∥yi(ω⋅xi+b),
因此,所有誤分類點到超平面的距離之和爲:L(ω,b)=−1∥ω∥∑xi∈Myi(ω⋅xi+b),M爲所有的誤分類點。
L(ω,b) 即爲感知機模型的損失函數。
學習算法
現在的問題變成了求解
原始形式
描述:給定數據集
隨機梯度下降法:建議查閱相關資料。
求解(求梯度):
對於
對於
隨機選取誤分類點
綜上所述,感知機學習算法的原始形式表述如下:
輸入:訓練數據集
輸出:
步驟:
- 選取初值
ω0,b0 ; - 在訓練集中選取數據
(xi,yi) ; - 如果
yi(ω⋅xi+b)≤0: ω←ω+ηyixi, b←b+ηyi - 轉至step2,直到訓練集中沒有誤分類點。
對偶形式
不想寫了。。。。。。。