專(zhuān)利名稱(chēng):一種支持向量回歸機(jī)的訓(xùn)練方法
技術(shù)領(lǐng)域:
本發(fā)明屬于人工智能、機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘領(lǐng)域,具體涉及一種支持向量回歸機(jī)的訓(xùn)練方法,可廣泛應(yīng)用于非線性回歸、時(shí)間序列分析等領(lǐng)域。
背景技術(shù):
支持向量機(jī)(Support Vector Machines, SVM)理論源于Vapnik提出的用于解決模式識(shí)別問(wèn)題的支持向量方法,之后Vapnik在提出損失函數(shù)的基礎(chǔ)上建立支持向量回歸機(jī)。SVM是基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則構(gòu)建的,具有很強(qiáng)的學(xué)習(xí)能力和泛化性能,能夠較好地解決小樣本、高維數(shù)、非線性、局部極小等問(wèn)題,廣泛應(yīng)用于模式分類(lèi)和非線性回歸。SVM最終歸結(jié)為求解一個(gè)二次規(guī)劃(QP,Quadratic Programming)問(wèn)題。如果直接求解,當(dāng)訓(xùn)練點(diǎn)的數(shù)量比較大時(shí),就會(huì)造成占據(jù)的存儲(chǔ)空間過(guò)大,致使訓(xùn)練的速度降低。因此常用的方法就是將問(wèn)題進(jìn)行分解,如選塊算法、分解算法和序列最小最優(yōu)化算法 (sequentialminimal optimization, SM0)算法等。其中SMO算法將優(yōu)化問(wèn)題分解到最小, 在每次迭代過(guò)程中只需要對(duì)兩個(gè)拉格朗日乘子的最優(yōu)化問(wèn)題進(jìn)行解析求解,沒(méi)有矩陣運(yùn)算,容易實(shí)現(xiàn),是目前應(yīng)用最為廣泛的算法。參考文獻(xiàn)Gary. W. F, Steve. L. Efficient SVM Regression Training with SMO[J]. MachineLearning, 2002 (46) :271-290 中詳細(xì)介紹了 ε -支持向量回歸機(jī)應(yīng)用 SMO 方法求解過(guò)程中子優(yōu)化問(wèn)題的求解,即兩個(gè)拉格朗日乘子的解析求解方法。但SMO方法中兩個(gè)訓(xùn)練點(diǎn)的選取直接影響算法的精度以及收斂速度,目前沒(méi)有統(tǒng)一的原則來(lái)確定如何選取兩個(gè)訓(xùn)練點(diǎn)的方法。通常SMO方法中通過(guò)2步來(lái)實(shí)現(xiàn)訓(xùn)練點(diǎn)的選取首先,從選擇違反KKT條件最嚴(yán)重的點(diǎn)為第一個(gè)訓(xùn)練點(diǎn);其次根據(jù)解的步進(jìn)最大化原則來(lái)選取第二個(gè)訓(xùn)練點(diǎn)。這種選取訓(xùn)練點(diǎn)的方法主要不足有沒(méi)有確定的原則來(lái)判斷違反KKT條件的嚴(yán)重程度, 只能通過(guò)計(jì)算搜索合適的訓(xùn)練點(diǎn);另外該方法在選擇第二個(gè)訓(xùn)練點(diǎn)時(shí)只考慮解的進(jìn)展,但是求解的最終的目的是使得目標(biāo)函數(shù)達(dá)到最小,因此該選擇方法意義不明確,很可能造成在訓(xùn)練過(guò)程中目標(biāo)函數(shù)會(huì)增大。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)中SMO方法求解支持向量機(jī)回歸問(wèn)題時(shí)訓(xùn)練過(guò)程中兩個(gè)訓(xùn)練點(diǎn)的選取的不足,本發(fā)明提出一種支持向量回歸機(jī)的訓(xùn)練方法,該方法從直接逼近目標(biāo)函數(shù)的角度出發(fā),物理意義明確,并充分利用中間變量,計(jì)算簡(jiǎn)單,運(yùn)算效率高。一種支持向量回歸機(jī)的訓(xùn)練方法,其特征在于具體包括以下幾個(gè)步驟步驟一設(shè)定訓(xùn)練樣本集合設(shè)定訓(xùn)練樣本集合為T(mén) = ^5,1)1:,輸入空間的特征屬性、e Rn,鏟為輸入空
間,η為輸入空間的維數(shù),輸出空間的值yp e R,R為輸出空間;(Xp,yp)表示第P個(gè)樣本點(diǎn), 1為訓(xùn)練樣本集合中樣本的總數(shù),設(shè)定不敏感損失因子ε和懲罰因子C;
步驟二 計(jì)算核函數(shù)矩陣K并進(jìn)行初始化計(jì)算核函數(shù)矩陣K,kpq = K (xp, xq),kpq表示第ρ個(gè)樣本點(diǎn)\和第q個(gè)樣本點(diǎn)Xq的核函數(shù)積;初始化拉格朗日乘子向量λ = (λ^ λ2,...,λρ,...,λ) =0,決策函數(shù)偏置 b = 0,決策函數(shù)向量f = (f1; f2,. . .,fp,. . .,= 0 ;其中λ p表示決策函數(shù)中第ρ個(gè)樣本點(diǎn)\對(duì)應(yīng)的拉格朗日乘子,b表示決策函數(shù)的偏置,fp表示第ρ個(gè)樣本點(diǎn)\對(duì)應(yīng)的決策函數(shù)值;步驟三對(duì)目標(biāo)函數(shù)W求偏導(dǎo),取使偏導(dǎo)數(shù)絕對(duì)值最大的分量下標(biāo)作為第一個(gè)訓(xùn)練點(diǎn);
權(quán)利要求
1. 一種支持向量回歸機(jī)的訓(xùn)練方法,其特征在于具體包括以下幾個(gè)步驟 步驟一設(shè)定訓(xùn)練樣本集合設(shè)定訓(xùn)練樣本集合為
2.根據(jù)權(quán)利要求1所述的一種支持向量回歸機(jī)的訓(xùn)練方法,其特征在于所述的步驟三的3.2中判斷目標(biāo)函數(shù)求偏導(dǎo)取絕對(duì)值后降序排列的
全文摘要
本發(fā)明提出一種支持向量回歸機(jī)的訓(xùn)練方法,具體包括步驟一設(shè)定訓(xùn)練樣本集合;步驟二計(jì)算核函數(shù)矩陣并初始化;步驟三計(jì)算第一個(gè)訓(xùn)練點(diǎn);步驟四計(jì)算第二個(gè)訓(xùn)練點(diǎn);步驟五解析拉格朗日乘子;步驟六更新中間變量;步驟七判斷訓(xùn)練樣本集的所有樣本是否滿(mǎn)足最優(yōu)條件步驟八計(jì)算回歸決策函數(shù)。本發(fā)明中中間變量的更新利用了前一次訓(xùn)練的值,減少計(jì)算量;且在求目標(biāo)函數(shù)的偏導(dǎo)以及目標(biāo)函數(shù)下降值中,充分利用中間變量,從而減少了大量的計(jì)算,實(shí)現(xiàn)了快速選取訓(xùn)練點(diǎn),提高訓(xùn)練的收斂速度。
文檔編號(hào)G06K9/66GK102184421SQ201110102550
公開(kāi)日2011年9月14日 申請(qǐng)日期2011年4月22日 優(yōu)先權(quán)日2011年4月22日
發(fā)明者許喆平, 鄧小樂(lè), 郎榮玲 申請(qǐng)人:北京航空航天大學(xué)