支援向量回歸(SVR)是一種回歸算法,它應用支援向量機(SVM)的類似技術進行回歸分析。正如我們所知,回歸資料包含連續的實數。為了拟合這種類型的資料,SVR模型在考慮到模型的複雜性和錯誤率的情況下,用一個叫做ε管(epsilon-tube,ε表示管子的寬度)的給定餘量來接近最佳值。
在本教程中,我們将通過在 Python 中使用 SVR ,簡要了解如何使用 SVR 方法拟合和預測回歸資料。教程涵蓋:
- 準備資料
- 模型拟合和預測
- 準确性檢查
- 源代碼
我們将從在 Python 中加載所需的庫開始。
import numpy as np
準備資料
我們将使用回歸資料作為目标資料進行拟合。我們可以編寫簡單的函數來生成資料。
1.
2. y = make(x)
3. x = np.array
4.
5. plt.scatter
6. plt.show()
模型拟合和預測
我們來定義模型。該模型可以與預設參數一起使用。我們将在 x 和 y 資料上拟合模型。
1. svr
2. print(svr)
在這裡,可以根據回歸資料特征更改核、C 和 epsilon 參數。核識别算法中的核類型。可以使用“rbf”(預設核心)、“linear”、“poly”和“sigmoid”。
接下來,我們将使用 svr 模型預測 x 資料。
predict(x)
為了檢查預測結果,我們将在圖中可視化 y 和 yfit 資料。
1. plt.scatter
2. plt.plot
3. plt.legend
4. plt.show
準确性檢查
最後,我們将使用 R 平方和 MSE 名額檢查模型和預測準确性。
1. score
2. print("R-squared:", score)
3. print("MSE:", measquaederor)