黃 牛,付光輝,李珍珍,寇 穎
(昆明理工大學(xué)理學(xué)院,云南 昆明 650500)
在不平衡回歸問題中,預(yù)測(cè)稀有值特別困難,主要有以下三個(gè)方面的問題。第一,樣本點(diǎn)分布不均衡。第二,用戶的目標(biāo)是對(duì)稀有值進(jìn)行預(yù)測(cè)。如果使用傳統(tǒng)的方法(如最小二乘回歸)對(duì)稀有值預(yù)測(cè),預(yù)測(cè)模型誤差大,從而預(yù)測(cè)結(jié)果極不準(zhǔn)確。第三,標(biāo)準(zhǔn)的預(yù)測(cè)誤差指標(biāo)(如MAE)不足以衡量模型的性能。Torgo[7]提出用連續(xù)的相關(guān)函數(shù)將目標(biāo)變量的原始域映射為連續(xù)的關(guān)聯(lián)尺度,并根據(jù)相關(guān)性函數(shù)確定樣本采樣的數(shù)目,結(jié)合傳統(tǒng)的經(jīng)典算法,提出了SMOTE.R算法,增加了稀有樣本數(shù)目,解決了樣本點(diǎn)分布不均衡的問題。Torgo和Ribeiro[8]提出了一種評(píng)價(jià)模型性能優(yōu)劣的方法,該方法更關(guān)注預(yù)測(cè)罕見情況的性能,解決了模型性能評(píng)價(jià)問題。Ribeiro[9]通過改進(jìn)的箱線圖來(lái)自動(dòng)獲取控制點(diǎn),采用Hermite插值方法對(duì)控制點(diǎn)分三段插值,以此獲得稀有值的相關(guān)函數(shù)。該方法避免稀有值真實(shí)情況的丟失,從而對(duì)稀有值的預(yù)測(cè)更加準(zhǔn)確。然而,以上方法沒有考慮到以下兩個(gè)問題:第一,在不平衡回歸學(xué)習(xí)很多領(lǐng)域內(nèi),不同的稀有值其相關(guān)性應(yīng)該有所區(qū)別,而不應(yīng)該將所有稀有值的相關(guān)性都取為“1”。第二,Torgo、Ribeiro等人沒有考慮稀有值的域偏好,在某些領(lǐng)域內(nèi),可能極低稀有值會(huì)比極高稀有值顯得更重要,或極高稀有值會(huì)比極低稀有值顯得更重要。應(yīng)該根據(jù)域偏好來(lái)確定預(yù)測(cè)問題是更偏向于極高稀有值預(yù)測(cè)還是極低稀有值預(yù)測(cè),故相關(guān)函數(shù)圖像可能會(huì)有左偏或者右偏的情況,而Torgo考慮的是更特殊的情形。
針對(duì)Torgo等人在不平衡回歸任務(wù)中存在的一些問題。本文提出一種結(jié)合領(lǐng)域知識(shí)的自適應(yīng)加權(quán)采樣方法,該方法主要有兩個(gè)優(yōu)勢(shì):第一,本文提出的相關(guān)函數(shù)不僅反映目標(biāo)變量的稀缺性程度,還由此確定了稀有值采樣的權(quán)重,從而確定了稀有樣本生成的個(gè)數(shù),解決數(shù)據(jù)不平衡的問題。第二,解決了領(lǐng)域內(nèi)稀有值的域偏好問題,是偏好極低稀有值預(yù)測(cè)還是偏好極高稀有值預(yù)測(cè)。自適應(yīng)加權(quán)采樣方法不僅提高了稀有值的預(yù)測(cè)精度,還更加符合現(xiàn)實(shí)領(lǐng)域的實(shí)際情況。
Chawla[10]提出了SMOTE算法,SMOTE是一種用于解決類不平衡分類問題的重采樣方法。在使用幾種分類算法的幾個(gè)現(xiàn)實(shí)世界問題上表明了這種方法與其它重采樣技術(shù)相比的優(yōu)勢(shì)。為了使算法適應(yīng)目標(biāo)不平衡回歸任務(wù),需要處理它的三個(gè)關(guān)鍵組成部分:①怎樣定義“異?!焙汀罢!睒颖?②如何創(chuàng)建新的合成樣本(即過采樣);③怎樣確定新合成樣本的目標(biāo)變量值。對(duì)于第一個(gè)問題,使用相關(guān)函數(shù)獲取數(shù)據(jù)集相關(guān)性,根據(jù)用戶域偏好確定閾值,目標(biāo)變量相關(guān)性大于閾值被確定為稀有值,小于閾值的被確定為普通值。關(guān)于第二個(gè)問題,本文認(rèn)為越是稀有的點(diǎn)將越重要,相關(guān)性也將越高,即過采樣生成的樣本也越多。最后,第三個(gè)問題是確定生成的觀測(cè)值的目標(biāo)變量值。本文使用單個(gè)隨機(jī)樣本與它的一個(gè)k近鄰樣本二者的目標(biāo)變量值的加權(quán)平均,其權(quán)值是由被采樣點(diǎn)和它的一個(gè)k近鄰點(diǎn)與生成樣本之間的距離的反函數(shù)計(jì)算得到的。
Smola等[11-14]在支持向量機(jī)回歸上做了很多的研究,傳統(tǒng)的回歸模型通常基于輸出模型f(x)與真實(shí)輸出y之間的差別來(lái)計(jì)算損失,當(dāng)且僅當(dāng)二者完全相同時(shí),損失才為0。支持向量回歸能假設(shè)容忍f(x)與y之間最多有誤差ε,當(dāng)二者之間的誤差大于ε時(shí),才計(jì)算損失。
正如圖1所示,以f(x)為中心,建立一個(gè)寬度為2ε的間隔,如果訓(xùn)練樣本落入到間隔內(nèi),則被認(rèn)為是預(yù)測(cè)正確的。
圖1 SVR
于是SVR問題就可形式化為
(1)
其中,C是正則化常數(shù)。lε是所示的ε-不敏感損失函數(shù)
(2)
回歸問題的本質(zhì)是找到一個(gè)模型,能夠最佳程度擬合數(shù)據(jù)點(diǎn)。用線性回歸作為對(duì)比,線性回歸的擬合方式是:讓數(shù)據(jù)點(diǎn)到預(yù)測(cè)的直線相應(yīng)的MSE值最小。但是對(duì)于SVM來(lái)說(shuō),回歸思路不同。需要找一個(gè)間隔值,在這個(gè)間隔內(nèi),能包含樣本數(shù)據(jù)點(diǎn)越多越好。在間隔范圍內(nèi)的數(shù)據(jù)點(diǎn)越多,就代表預(yù)測(cè)效果越好。選擇間隔中間的直線作為回歸結(jié)果,用它來(lái)預(yù)測(cè)未知點(diǎn)對(duì)應(yīng)的y值。用SVM解決分類和回歸問題時(shí),方法上截然不同。解決分類問題要求間隔內(nèi)的樣本點(diǎn)越少越好,特別是硬間隔的時(shí)候,一個(gè)樣本點(diǎn)都不允許存在,而接近回歸問題時(shí),希望間隔范圍內(nèi)的數(shù)據(jù)樣本有越多越好。
Torgo在類似的背景下提出相關(guān)性的概念。它們將目標(biāo)值轉(zhuǎn)換為相關(guān)性的尺度,以此獲得稀有值的重要性。為了在這樣的條件下獲得相關(guān)函數(shù),需要一種自動(dòng)方法來(lái)確定哪些目標(biāo)變量值具有最小和最大的相關(guān)性(重要性)。鑒于分布中稀有值被認(rèn)為是最重要的,為準(zhǔn)確預(yù)測(cè),這些值應(yīng)該具有最大的相關(guān)性。相反,最常見的值應(yīng)該具有最小的相關(guān)性。相關(guān)性是通過“目標(biāo)變量”來(lái)確定,建議使用相關(guān)函數(shù)φ(Y),它將目標(biāo)變量的原始域映射為連續(xù)的關(guān)聯(lián)尺度。在回歸中,考慮到目標(biāo)變量的定義域是無(wú)限的,用“0”表示完全不相關(guān)的值,用“1”表示最大相關(guān)值。對(duì)用戶來(lái)說(shuō),以分析的方式指定這樣的函數(shù)并不總是那么容易。不過,對(duì)于某些應(yīng)用程序,可以提出一個(gè)合理的自動(dòng)生成的相關(guān)函數(shù)。實(shí)際上,在這些領(lǐng)域中,相關(guān)性與目標(biāo)變量的稀缺性和極端性有關(guān)。箱形圖提供了有關(guān)極端值的關(guān)鍵信息。所有高于第三四分位數(shù)或者低于第一四分位數(shù)的值,標(biāo)記為稀有值。這些值對(duì)應(yīng)高(低)稀有值。對(duì)于目標(biāo)變量,可能有兩種類型的稀有值,同時(shí)存在極低和極高稀有值,或者只有高(低)稀有值。那么在定義相關(guān)函數(shù)要考慮以下兩個(gè)問題:①應(yīng)該正確識(shí)別稀有值,給極低稀有值和極高稀有值賦予更高的相關(guān)性。②要符合現(xiàn)實(shí)領(lǐng)域的不平衡回歸問題的實(shí)際情況。在此背景下,提出了如下函數(shù)
(3)
(4)
式中Y為目標(biāo)變量,y為用戶在該領(lǐng)域的領(lǐng)域偏好,a1和a2均為參數(shù)。
以美國(guó)波士頓房?jī)r(jià)為例,從圖2中可以看出低房?jī)r(jià)和高房?jī)r(jià)都有著較大的相關(guān)性,并且相關(guān)性函數(shù)左偏,意味著高房?jī)r(jià)比低房?jī)r(jià)更為“異?!?對(duì)國(guó)家經(jīng)濟(jì)和社會(huì)影響更大。從圖中顯示a1比a2稍大,函數(shù)左偏,故低房?jī)r(jià)獲得更低的相關(guān)性。如果參數(shù)a1比a2偏小,那將忽視了低房?jī)r(jià)的“異常”而可能導(dǎo)致決策者做出經(jīng)濟(jì)誤判,因此需要提高a1的大小來(lái)正確識(shí)別“異常值”。同理,如果相關(guān)函數(shù)右偏,則需提高a2的大小。a1與a2通常與域偏好有關(guān)。
圖2 波士頓房?jī)r(jià)相關(guān)函數(shù)
圖3 新數(shù)據(jù)集生成框架
本文的算法是對(duì)普通值進(jìn)行欠采樣,對(duì)用戶感興趣的值(稀有值)進(jìn)行過采樣,從而得到一個(gè)新的訓(xùn)練集,其訓(xùn)練數(shù)據(jù)值的分布更加均衡。
1)算法1:獲取稀有值
輸入:數(shù)據(jù)集D,相關(guān)性程度w,中位數(shù)median(y),相關(guān)性程度的閾值tE
輸出:極低稀有值rareL,極高稀有值rareH,普通值comvalue
步驟1:將數(shù)據(jù)集D中的每個(gè)數(shù)據(jù)〈x,y〉通過相關(guān)函數(shù)得到其相關(guān)性程度w。
步驟2:對(duì)于數(shù)據(jù)集D中的每個(gè)數(shù)據(jù)〈x,y〉,如果其w大于閾值tE并且目標(biāo)變量Y大于median(y),則為極高稀有值rareH。
步驟3:對(duì)于數(shù)據(jù)集D中的每個(gè)數(shù)據(jù)〈x,y〉,如果其w大于閾值tE并且目標(biāo)變量Y小于median(y),則為極低稀有值rareL。
步驟4:普通值comvalue=D areH∪rareL
2)算法2:過采樣、欠采樣、混合采樣
輸入:rareH,rareL,comvalue,w,m(與不平衡比有關(guān)的參數(shù)),ε(參數(shù))
輸出:欠采樣個(gè)數(shù)n1
步驟1:依據(jù)相關(guān)性程度,將rareH和rareL中的每一個(gè)數(shù)據(jù)集分到三個(gè)區(qū)間,相關(guān)性在[tE,tE+ε)上,生成樣本個(gè)數(shù)為m,相關(guān)性在[tE+ε,tE+2ε)上,生成樣本個(gè)數(shù)為2m,相關(guān)性在[tE+2ε,1]上,生成樣本個(gè)數(shù)為3m。
步驟2:(欠采樣過程)comvalue中的每一個(gè)數(shù)據(jù)集獲取其單個(gè)數(shù)據(jù)相關(guān)性w(k),comvalue數(shù)據(jù)集中的相關(guān)性w(k)越大,越應(yīng)被保留,得到欠采樣個(gè)數(shù)n1。
步驟3:對(duì)步驟1和步驟2操作可得到過采樣的樣本個(gè)數(shù)和混合采樣的樣本個(gè)數(shù)。
3)算法2:樣本合成
輸入:rareH、rareL
輸出:NewrareH,NewrareL
步驟1:從rareH中隨機(jī)選取一個(gè)樣本點(diǎn)xHi,然后選取xHi的k近鄰xHik,通過SMOTE合成新的樣本xHX=xHi+random(0,1)|xHik-xHi|,計(jì)算xHi與xHX的歐式距離dH1=dist(xHi,xHX),計(jì)算xHik與xHX的歐式距離dH2=dist(xHik,xHX),目標(biāo)變量HYi=(dH2yHi+dH1yHik)/(dH1+dH2)。
步驟2:從rareL中隨機(jī)選取一個(gè)樣本xLj,并且選取xLj的k近鄰xLjk,通過SMOTE合成新的樣本xLX=xLj+random(0,1)|xLjk-xLj|,計(jì)算xLj與xLX的歐式距離dL1=dist(xLj,xLX),計(jì)算xLjk與xLX的歐式距離dL2=dist(xLjk,xLX),目標(biāo)變量LYi=(dL2yLj+dL1yLjk)/(dL1+dL2)。
步驟3:根據(jù)每個(gè)樣本合成的數(shù)目,重復(fù)步驟1和步驟2,最終得到NewrareH、NewrareL。
(5)
(6)
本文的實(shí)驗(yàn)?zāi)康氖菧y(cè)試提出的采樣方法在預(yù)測(cè)連續(xù)目標(biāo)變量的罕見方面的有效性。為此選擇了8個(gè)回歸數(shù)據(jù)集,這些數(shù)據(jù)集可以在UCI上獲得。表1顯示了這些數(shù)據(jù)集的主要特征。從表1中的數(shù)據(jù)可以看出,平均14.75%的可用樣例是稀有值。
表1 數(shù)據(jù)集特征
通過構(gòu)建SVR模型比較過采樣、欠采樣、混合采樣三種方法預(yù)測(cè)連續(xù)目標(biāo)變量稀有值回歸的性能。實(shí)驗(yàn)基于R平臺(tái),實(shí)驗(yàn)結(jié)果經(jīng)100次重復(fù)試驗(yàn)獲得。表2、表3分別列出三種采樣方法在8個(gè)數(shù)據(jù)集上的recall和precision,圖4展現(xiàn)了三種采樣方法在8個(gè)數(shù)據(jù)集上的F值。試驗(yàn)結(jié)果表明:過采樣、欠采樣、混合采樣在所有數(shù)據(jù)集上其F值分別提高7.3%、1.8%、8.4%??梢钥闯銮凡蓸犹嵘幻黠@,而且在某些數(shù)據(jù)集上,其F值甚至有下降的趨勢(shì),這就說(shuō)明單純地刪除普通值樣本達(dá)不到準(zhǔn)確預(yù)測(cè)稀有值的目的。而在過采樣和混合采樣中,過采樣的precision提升效果更佳,混合采樣的recall提升更加明顯。因此,在處理不平衡回歸問題時(shí),無(wú)法判斷何種采樣方法處理不平衡問題更優(yōu),應(yīng)根據(jù)具體的數(shù)據(jù)特性和需求選取合適的方法。此外,考慮到參數(shù)a1和a2會(huì)影響回歸的性能。本文選取Boston房?jī)r(jià)為例,圖5是在a2=6.1的條件下探究a1對(duì)F值的影響。從圖中可以看出,a1在某一范圍內(nèi)其F值會(huì)趨于穩(wěn)定。圖6是在a1=8.1的條件下探究a2對(duì)F值的影響。從圖中可以看出,隨著a2的變化,F值波動(dòng)較大,F值是先增大而后減小。但從提升回歸效果上看,在過采樣、混合采樣中,不同參數(shù)的選取其性能提升的幅度趨于穩(wěn)定,由此說(shuō)明了自適應(yīng)加權(quán)采樣對(duì)稀有值準(zhǔn)確預(yù)測(cè)提升效果明顯。
表3 不同采樣的pre
圖4 過采樣、欠采樣、混合采樣的F值
圖5 參數(shù)a2=6.1 圖6參數(shù)a1=8.1
本文的主要貢獻(xiàn)是:將抽樣方法成功地應(yīng)用于這類回歸任務(wù)。并且考慮了每個(gè)稀有值樣本的重要性,從而為稀有值數(shù)據(jù)點(diǎn)訓(xùn)練出更好的模型,體現(xiàn)了自適應(yīng)加權(quán)采樣在不平衡回歸任務(wù)中的優(yōu)越性。本文針對(duì)一系列不同的問題進(jìn)行了大量的實(shí)驗(yàn),突出了其優(yōu)勢(shì)。但是也存在一些問題需要討論和進(jìn)一步研究。第一,自適應(yīng)加權(quán)方法在處理不平衡回歸問題時(shí)表現(xiàn)出良好的優(yōu)勢(shì),然而現(xiàn)實(shí)中數(shù)據(jù)的表現(xiàn)形式多種多樣,在面臨不同類型不平衡數(shù)據(jù)時(shí),如何利用該技術(shù)來(lái)提升學(xué)習(xí)算法性能仍需深入研究。第二,能否把一些經(jīng)典的采樣方法應(yīng)用于不平衡回歸領(lǐng)域。因此,后續(xù)工作任務(wù)需要在此基礎(chǔ)上進(jìn)行更深層次的研究。