日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

SVM——支持向量回归(SVR)[通俗易懂]

發布時間:2023/12/19 综合教程 29 生活家
生活随笔 收集整理的這篇文章主要介紹了 SVM——支持向量回归(SVR)[通俗易懂] 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、支持向量回歸的原始問題

先來看看SVM線性支持向量機(軟間隔)的原始問題:

其中ξi是松弛變量,但它實際上是hinge(合頁)損失函數,所以ξi也作為對應的點(xi, yi)的損失,如下圖所示:

當點(xi, yi)位于間隔面上或者間隔面之外(這兩種都是正確分類的情況)則ξi=0,若點(xi, yi)位于分割面上或者位于間隔面與分割面之間(正確分類)或者位于間隔面與分割面之間(錯誤分類),這三種情況都是有損失的,損失為 1 – yi(w·xi + b)。

SVM線性支持向量機(軟間隔)的原始問題等價于如下問題:

好了現在來看SVR的原始問題:
如上圖所示,SVR需要學到一個最大間隔(幾何間隔)的回歸面或回歸線,ε代表精度,在2ε間隔之內的點和間隔面上的點離回歸面最近,所以認為這些點的預測結果比較可靠,是沒有損失的,而2ε間隔之外的點離回歸面較遠,所以認為這些點的預測結果不太可靠,是有損失的。而敏感度損失函數剛好就能用來計算每個點的損失,如下圖所示:

其中w·xi+b代表預測值,yi是實際值,|w·xi+b – yi|表示誤差絕對值,如果點(xi, yi)的預測誤差絕對值小于等于ε,則ξi=0,ξi代表損失;如果點(xi, yi)的預測誤差絕對值大于ε,則ξi= |w·xi+b – yi| – ε。
綜上所述得出SVR的原始約束問題:

其中約束條件的意義就是讓所有的點(xi, yi)都滿足敏感度損失函數,也就是讓 ξi 能足夠代替點(xi, yI)的損失,因為ξi 始終大于等于該點的預測誤差絕對值減去ε。

SVR目標表達式的解釋:
這里附上一點自己的理解,不對的地方歡迎指證。將上述SVR的目標表達式分兩部分來分析,先看后半部分的懲罰項,它的最小化使得訓練集中絕大多數的點都位于精度為|ε|的間隔面內;再來看前半部分的1/2||w||2 ,它的最小化是為了幾何間隔最大化,而幾何間隔最大化保證了間隔面內的絕大部分y為正的點會預測為正的,y為負的點會預測為負的。綜上所述,懲罰項控制預測的精度,幾何間隔控制預測的正負號,所以該目標表達式最小化的解w*和b*將是最優的回歸線。

根據硬間隔SVM和軟間隔SVM的知識,我們知道SVM的原始問題最終都轉換為求其對偶問題,所以SVR也不例外。因為SVR原始問題的不等式約束不是凸函數,所以該不等式約束需要轉換一下,如下:
|w·xi+b – yi| – ε <= ξi 等價于 -ε – ξi <= w·xi+b – yi <= ε + ξi ,其中 -ε – ξi <= w·xi+b – yi 即 yi – w·xi+b <= ε + ξi 代表上圖中回歸面(藍色線)的下方區域,當點(xi, yi)位于回歸面和下間隔面之間時,ξi =0,當點(xi, yi)位于下間隔面下方時ξi>0,這時 ξi 就代表回歸面下方區域中的點的損失,我們可以用ξiv來代替它。同理-ε – ξi <= w·xi+b – yi <= ε + ξi 中的右側部分 w·xi+b – yi <= ε + ξi就可以看作上圖中回歸面(藍色線)的上方區域,當點(xi, yi)位于回歸面和上間隔面之間時,ξi =0,當點(xi, yi)位于上間隔面上方時ξi>0,這時 ξi 就代表回歸面上方區域中的點的損失,我們可以用ξi^ 來代替它。
令f(xi) = w·xi+b,我們最終得到SVR的原始問題如下:

2、支持向量回歸的對偶問題

先求原始問題的拉格朗日函數,再對拉格朗日函數求極大(對拉格朗日乘子)極小(對模型參數)問題就得到對偶問題。過程如下:
拉格朗日函數:

對拉格朗日函數求極大極小問題:
(1)先對拉格朗日函數求極小(對模型參數)
分別令L(w, b, αv, α^ , ξv , ξ^ , μv, μ^ ) 對w, b, ξv , ξ^的倒數等于0得:

其中Φ(xi)指的是xi向量。
將上面式子帶入拉格朗日函數中消去w, b, ξv , ξ^得:

(2)再對(1)中得到的式子求極大(對拉格朗日乘子)

約束條件是:


其中αiv >=0,μiv >=0,αi^ >=0,μi^ >=0,由αiv= C – μiv 得 0 <= αiv <= C,同理得 0 <= αi^ <= C。
所以支持向量回歸的原始問題對應的對偶問題如下:

再將對偶問題的目標表達式轉換成求極小,就得到最終的對偶問題如下:

對偶問題的求解即求出αiv 和 αi^ 可以用SMO算法,這里不再講了。

3、支持向量

支持向量可以說是代表了SVM模型的稀疏性,對于SVR同樣有支持向量。
硬間隔線性可分支持向量機的支持向量是間隔面上的點;
軟間隔線性支持向量機的支持向量是間隔面上的點、間隔面內被正確分類的點、分割面上的點以及所有被分錯的點的集合;
支持向量回歸的支持向量則是間隔面之外的點也就是(αiv – αi^) != 0的點。
(不想看分析過程的可以這么理解,因為支持向量回歸必然要使得訓練數據集中大部分的點都位于回歸線附近,即位于間隔面之內(包括間隔面上),所以只允許小部分的點(預測誤差較大)位于間隔面之外,支持向量本來就是數據集中的一小部分點,所以位于間隔面之外的點就是支持向量)
分析過程如下:
要使得(w* , b* , ξv*, ξ^* , αiv* , αi^* , μiv* , μi^ *)這一組解滿足(w* , b* , ξv*, ξ^*)是原始問題的最優解且(αiv* , αi^* , μiv* , μi^ *)是對偶問題的最優解,則必須滿足以下KKT條件:

由(3)(4)(9)(10)可得:

因為位于間隔面之內的點(包括間隔面)滿足 ξv* = ξ^* = 0,位于下間隔面下方的點滿足ξ^* = 0, ξv* != 0 ;位于上間隔面上方的點滿足 ξv* =0,ξ^* != 0,;綜上所述ξv* , ξ^* 至少有一個為0,所以ξv* ξ^*=0
當ξv* = ξ^* = 0時:
假設αiv* 和 αi^* 都不為0,由(5)和(6)可得,f(xi) – yi – ε = 0, yi – f(xi) – ε = 0,兩式相加,所以ε=0。由題設可知ε是精度(>0),不可能為0,故矛盾,所以假設錯誤,則可得αiv* 和 αi^* 中至少有一個為0。
當ξv* =0, ξ^* != 0時:
假設αiv* 和 αi^* 都不為0,由(5)和(6)可得,f(xi) – yi – ε = 0, yi – f(xi) – ε – ξ^* = 0,兩式相加,所以 ξ^* = -2ε。由題設可知ξ^* 是大于等于0的,而這里ξ^*小于0,故矛盾,所以假設錯誤,則可得αiv* 和 αi^* 中至少有一個為0。
當ξv* !=0, ξ^* = 0時:
同理可得,αiv* 和 αi^* 中至少有一個為0。
綜上所述,αiv* 和 αi^* 中至少有一個為0,所以αiv* αi^* = 0。
整理上述過程推導的一些條件,可得如下部分KKT條件:

因為αiv* 和 αi^* 中至少有一個為0,如果αiv* = αi^*,則必有αiv* = αi^* = 0,由(d)可知必有ξv* = ξ^* = 0,所以αiv* = αi^*對應的點位于間隔面之內(包括間隔面上)。
那么αiv* != αi^*,即(αiv* – αi^*) !=0對應的點位于間隔面之外,所以(αiv* – αi^*) !=0對應的點就是我們支持向量。

總結

以上是生活随笔為你收集整理的SVM——支持向量回归(SVR)[通俗易懂]的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。