支持向量回歸機在風電系統槳距角預測中的應用
2 槳距角預測與Matlab仿真
2.1 樣本的獲取與預處理
要使風速改變時,槳距角隨之改變的值為最佳槳距角,就要選擇合適的學習樣本,用來訓練和檢驗。由于自然界風速處于不斷變化中,較短時間3~4 s內的風速上升或下降總是不斷發生,因此變槳距機構也在不斷動作,在轉子電流控制器的作用下,將槳距角的實際變化情況選做樣本。共選取128組樣本數據,其中學習樣本80個,用來檢驗的預測樣本48個。選擇的訓練樣本和測試樣本形式如下表1所示。本文引用地址:http://www.104case.com/article/187585.htm
并將此樣本存為.txt格式,以便于在Matlab仿真時的數據輸入。
2.2 SVR函數的參數選擇
2.2.1 SVR函數
該函數根據訓練樣本設計出最優回歸函數,并找出支持向量。該函數有6個參數,分別是訓練樣本的輸入、訓練樣本的輸出、核函數、懲罰因子、損失函數和不敏感系數。輸出參數為支持向量個數、拉格朗日乘子及偏置量。即
[nsv,beta,bias]=svr(X,Y,ker,C,loss,ε);
X——訓練樣本的輸入,在本文中就是樣本中用于學習和檢驗的風速值。
Y——訓練樣本的輸出。就是樣本中對應的槳距角。
ker——核函數,要使誤差小需選擇適當的核函數,這里選擇的是rbf核函數。
C——懲罰因子,C取的過小,訓練誤差變大,系統的泛化能力變差,C取的過大,也會導致系統的泛化能力變差。
loss——損失函數。
ε——不敏感系數,ε取的小,回歸估計精度高,但支持向量數增多,ε取的大,回歸估計精度降低,但支持向量數少。
nsv——支持向量的個數。
beta——拉格朗日乘子。
Bias——偏置量。
2.2.2 輸出函數svroutput
該函數利用svr函數得到的最優回歸函數來計算測試樣本的輸出,并返回。
2.2.3 svrplot
該函數用來繪制出最優回歸函數曲線,并標識出支持向量。
2.2.4 svrerror
該函數用來顯示根據最優回歸函數計算的測試樣本的擬合誤差。
2.2.5 核函數的選擇
常用的核函數有4種:線性核函數(linear)、多項式核函數(polynomial)、徑向基核函數(RBF)和Sigmoid核函數。在一般情況下,首先考慮的是RBF,主要基于以下原因:1)RBF可以將樣本映射到一個更高維的空間,可以處理類別標簽和特征之間的關系是非線性時的樣本。2)與多項式核函數相比,RBF需要確定的參數要少,核函數參數的多少直接影響模型的復雜度。3)對某些參數,RBF與sigmoid核函數具有相似的
性能。
衡量SVR的最小誤差和泛化能力準則,并優化該準則,本文選擇了RBF核函數。
評論