支援向量迴歸 是什麼?

SVR:支援向量迴歸 的完整解釋

基於支援向量機原理的迴歸模型,利用間隔帶容忍小誤差,對雜訊具有一定抵抗力。

支援向量迴歸(Support Vector Regression,SVR)是機器學習中用於預測連續數值的一種監督式學習演算法,源自支援向量機(Support Vector Machine,SVM)的理論框架。SVM 最初設計用於二元分類,而 SVR 則將其延伸至迴歸問題,核心概念是找到一條能夠最佳擬合資料的函數,同時使模型的複雜度(generalization risk)維持在最低水準。

SVR 的關鍵創新在於引入了 ε-不敏感損失函數(ε-insensitive loss function)。傳統迴歸方法(如線性迴歸)會對每一個預測誤差加以懲罰;SVR 則設定一個容差帶 ε,在這個帶狀區間內的預測誤差不計入損失,只有超出 ε 範圍的樣本點才會被納入損失計算並影響最終模型。這樣的設計讓 SVR 對小幅雜訊具有天然的抵抗力,尤其適合訓練資料中存在輕微量測誤差的場景。

從幾何角度來看,SVR 的目標是尋找一個「ε 管道(ε-tube)」,使得盡可能多的訓練樣本落在管道之內。落在管道外的樣本稱為支援向量(support vectors),它們決定了模型的邊界。與 SVM 類似,SVR 只依賴少數關鍵的支援向量而非全部訓練資料,因此在高維空間中也能保持計算效率。

當資料並非線性可分時,SVR 透過核函數(kernel function)將輸入空間映射到高維特徵空間,在高維空間中執行線性迴歸,從而實現對原始空間中非線性關係的擬合。常用的核函數包括:線性核(linear kernel)、多項式核(polynomial kernel)、徑向基函數(Radial Basis Function,RBF)、以及 sigmoid 核。其中 RBF 核在實務上應用最廣,因為它能夠處理多數非線性資料且超參數較少。

SVR 的重要超參數有三個。第一是 C(正則化參數),控制對超出 ε 帶的樣本給予多大的懲罰;C 越大,模型越傾向於擬合每個訓練點,容易過擬合;C 越小,則模型傾向於更平滑的函數。第二是 ε(容差帶寬度),決定能容許多大的預測偏差而不計入損失;ε 越大,支援向量越少,模型越簡單。第三是核函數本身的參數,例如 RBF 核的 γ 值,控制單一訓練樣本的影響範圍;γ 越大,決策邊界越複雜,越容易過擬合。

在訓練過程中,SVR 求解的是一個凸二次規劃(Convex Quadratic Programming)問題,確保能找到全域最優解,不像深度神經網路可能陷入局部最優。透過引入鬆弛變數(slack variables)ξ 和 ξ*,SVR 允許少數樣本超出 ε 管道,代價是在目標函數中加入相應的懲罰項,C 參數控制這個懲罰的強度。

在 iPAS AI 應用規劃師中級考試中,SVR 常與其他迴歸方法(如線性迴歸、隨機森林迴歸)一起比較,考題會要求考生識別 SVR 的特性:尤其是 ε 容差帶的概念、對小型雜訊的穩健性、以及核技巧的使用。考生應能區分 SVR 與分類用 SVM 的異同,並了解 C、ε、γ 三個超參數各自的作用方向。

SVR 的優點包括:在高維資料上仍能有效訓練、對過擬合有較好的控制、求解的是凸優化問題確保全域最優、以及不受資料規模影響(因為只依賴支援向量)。主要限制則在於當訓練資料量很大時,訓練時間會顯著增加(核矩陣的計算為 O(n²) 空間複雜度),且核函數與超參數的選擇需要透過交叉驗證進行調整,不如決策樹或隨機森林直觀易用。

實務應用場景涵蓋股票價格預測、能源需求預測、生物資訊學中的蛋白質結構預測、以及各類工程訊號回歸分析。在資料量中等(數千到數萬筆)且特徵維度相對較高的情境下,SVR 通常能展現出優於線性迴歸的準確率,同時比深度神經網路所需的計算資源更少。對於小型資料集的高精度迴歸任務,SVR 至今仍是值得優先評估的基準方法之一。

常見問題