支援向量機SVM
邏輯迴歸的代價函式
每個單獨的訓練樣本 一起為邏輯迴歸總體目標做貢獻
兩條線段
在數學上的定義:
對於邏輯迴歸來說(》:遠大於)
每個單獨的訓練樣本 一起為邏輯迴歸總體目標做貢獻(下面考慮單個樣本的情況):?
y=1 就是標籤為1,代價函式就是左邊的圖形,想要代價函式值越小的話,Z就得很大(Z足夠大的時候,代價函式值近似0)
這裡的log是以e為底
構建支援向量機,從這個代價函式開始,進行少量修改,變成兩個線段組成的‘曲線’(洋紅色),形狀與原來邏輯迴歸的代價函式類似
其效果也類似,但是這樣會使支援向量機擁有計算上的優勢,並且使優化問題變得簡單,更容易解決。
這樣就得到兩個新函式(洋紅色):cost_1(z),cost_2(z)。然後帶入原來的邏輯迴歸函式
λ和C都是為了控制權衡:更多的適應訓練集還是更多的去保持正則化引數足夠小
邏輯迴歸使用上面的,SVM使用下面的
最小化最終得到的函式,就得到了SVM學習得到的引數θ。
與邏輯迴歸不同的是,SVM並不會輸出概率,而是通過優化這個代價函式得到的一個引數θ,然後進行直接的預測(0,1)
‘間距’初體驗(比一般的邏輯迴歸有更大的‘間距’)
當把C值設定很大的時候,最小化整個代價函式,會使第一項值近似0(側重於擬合引數),有異常點時候會得到下圖的洋紅界限
當C值設定不是很大的時候,有異常點時候會得到下圖的黑色界限(更合理,間隔更大)
向量內積的性質
p就是向量V在向量U上投影的長度(是一個實數,有符號【正或者負】)
丨丨u丨丨也是一個實數
之前的優化目標函式(把C設定的很大的情況下)
引數向量θ與決策邊界垂直。
希望正樣本和負樣本投影到θ的值足夠大(決策邊界距離周圍得是大間距)
通過讓p1 p2 p3 變大(最大化p的範數【訓練樣本到決策邊界的距離】),SVM最終就會得到一個較小的θ的範數丨丨)
θ_0=0,決策邊界通過原點
此模型對應著C值很大