1. 程式人生 > >支援向量迴歸-SVR

支援向量迴歸-SVR

對於一般的迴歸問題,給定訓練樣本D={(x1,y1),(x2,y2),...,(xn,yn)},yi€R,我們希望學習到一個f(x)使得其與y儘可能的接近,w,b是待確定的引數。在這個模型中,只有當f(x)與y完全相同時,損失才為零,而支援向量迴歸假設我們能容忍的f(x)與y之間最多有ε的偏差,當且僅當f(x)與y的差別絕對值大於ε時,才計算損失,此時相當於以f(x)為中心,構建一個寬度為2ε的間隔帶,若訓練樣本落入此間隔帶,則認為是被預測正確的。(間隔帶兩側的鬆弛程度可有所不同)

因此SVR問題可轉化為(下式左部是正則化項):

l為損失函式

因此引入了鬆弛因子,重寫第一個式子為:

最後引入拉格朗日乘子,可得拉格朗日函式:

對四個遍歷求偏導,令偏導數為零,可得

把上邊的式子帶入,即可求得SVR的對偶問題

上邊的過程需要滿足KKT條件,即

最後,可得SVR的解為

其中b為