摘 要:本文通過(guò)對(duì)L2正則化邏輯回歸進(jìn)行分析,使用隨機(jī)梯度下降(SGD)和限制內(nèi)存擬牛頓法(L-BFGS)來(lái)求解回歸參數(shù)使得條件對(duì)數(shù)似然函數(shù)最大。在手寫數(shù)字圖像數(shù)據(jù)集USPS-N和HTML網(wǎng)頁(yè)數(shù)據(jù)集上的兩分類結(jié)果表明,隨機(jī)梯度下降求解方法在兩數(shù)據(jù)集上有較高的測(cè)試錯(cuò)誤率。因此,在設(shè)計(jì)L2正則化邏輯回歸求解方法時(shí),可使用限制內(nèi)存擬牛頓法作為缺省求解方法。
關(guān)鍵詞:邏輯回歸;隨機(jī)梯度下降法;限制內(nèi)存擬牛頓法
中圖分類號(hào):TP302.2 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2018)03-0016-02
Design of Logical Regression Solving Based on L2 Regularization
HUANG Xiongpeng
(School of International Education,Guizhou Normal University,Guiyang 550001,China)
Abstract:By analyzing the L2 regularized logistic regression,this paper uses random gradient descent (SGD) and limited memory quasi Newton method (L-BFGS) to solve the regression parameter to make the maximum of the conditional log likelihood function. The two classification results on the handwritten digital image data set USPS-N and the HTML web data set show that the random gradient descent method has a higher test error rate on the two data set. Therefore,when designing L2 regularized logistic regression method,the restricted memory quasi Newton method can be used as the default solution.
Keywords:logical regression;stochastic gradient descent method;restricted memory quasi Newton method
0 引 言
機(jī)器學(xué)習(xí)(Machine Learning,ML)是人工智能(Artificial Intelligence,AI)的分支,它是以數(shù)據(jù)為學(xué)習(xí)對(duì)象,通過(guò)對(duì)數(shù)據(jù)的分析開(kāi)發(fā)出數(shù)據(jù)的模型,從而發(fā)現(xiàn)數(shù)據(jù)中的知識(shí)以協(xié)助分析、理解以及預(yù)測(cè)未知的新數(shù)據(jù)。ML方法已經(jīng)被成功應(yīng)用于解決各種現(xiàn)實(shí)問(wèn)題,如對(duì)微軟Kinect傳感器進(jìn)行對(duì)象檢測(cè)[1]、光伏電力輸出預(yù)測(cè)[2]等。
邏輯回歸是一種實(shí)數(shù)值輸入、二值(伯努利)輸出的機(jī)器學(xué)習(xí)算法。例如,在棒球運(yùn)動(dòng)中,可以通過(guò)(擊球率、高度、重量)統(tǒng)計(jì)量集合來(lái)判斷棒球員是否擊中。顯然,(擊球率、高度、重量)統(tǒng)計(jì)量集合構(gòu)成了實(shí)數(shù)輸入,棒球運(yùn)動(dòng)員某一次是否擊中是二值輸出(1表示擊中,0表示未擊中),棒球運(yùn)動(dòng)員是否擊中的概率可使用邏輯回歸來(lái)刻畫。
本文通過(guò)比較隨機(jī)梯度下降(Stochastic Gradient Descent,SGD)和限制內(nèi)存擬牛頓(Limited-memory Broyden-Fletcher-Goldfarb-Shannon,L-BFGS)兩種基于梯度的優(yōu)化方法分析邏輯回歸的分類性能。
1 算法設(shè)計(jì)和分析
本研究給出SGD和L-BFGS兩種方法對(duì)條件對(duì)數(shù)似然函數(shù)最大化進(jìn)行求解的算法設(shè)計(jì)和分析。簡(jiǎn)而言之,SGD方法通過(guò)引入固定學(xué)習(xí)率λ控制在對(duì)數(shù)似然函數(shù)上的變化。為了進(jìn)一步控制過(guò)擬合,可通過(guò)使用邏輯回歸函數(shù)獲得隨機(jī)子集大小為γ的目標(biāo)函數(shù)值變化。此外,當(dāng)目標(biāo)函數(shù)值變化小于ω時(shí)收斂。在L-BFGS方法設(shè)計(jì)中,本研究直接使用minFunc軟件包在目標(biāo)函數(shù)Eq.5和梯度函數(shù)Eq.4上進(jìn)行求解。
對(duì)于每一個(gè)算法,本研究使用n個(gè)樣本數(shù)據(jù)集 表示輸入訓(xùn)練數(shù)據(jù),其中每一個(gè)樣本xi為d維實(shí)值向量。每一個(gè)樣本xi通過(guò)一個(gè)長(zhǎng)度為d+1的參數(shù)向量β與二值結(jié)果變量yi建立關(guān)系,假設(shè)所建立的關(guān)系由下面模型確定:
(1)
其中,xij=0,i=1,2,…,n。
1.1 SGD方法
在對(duì)SGD方法進(jìn)行實(shí)現(xiàn)時(shí),本研究首先對(duì)輸入樣本進(jìn)行隨機(jī)排序以避免多次隨機(jī)數(shù)的重復(fù)計(jì)算,此外,選擇部分訓(xùn)練樣本 來(lái)檢查目標(biāo)函數(shù)的收斂情況。其次,從訓(xùn)練樣本中依次取出大小為k((2)
其中,常數(shù)μ用于平衡最大似然函數(shù)和最小L2正則化參數(shù)值。
參數(shù)向量β每次更新后,可以通過(guò)式(3)計(jì)算目標(biāo)函數(shù)在樣本子集上的絕對(duì)改變 :
(3)
其中,‖β‖2是參數(shù)向量范數(shù)。
一旦目標(biāo)函數(shù)值的改變量小于給定的ω,則SGD方法將收斂??梢钥闯?,SGD方法每次迭代的時(shí)間復(fù)雜度是O(kd+γd),因此,當(dāng)參數(shù)k和d被選定時(shí),SGD方法時(shí)間復(fù)雜度能充分小于O(nd),這特別適用于大規(guī)模數(shù)據(jù)。如果訓(xùn)練樣本足夠小至每次迭代都能進(jìn)行,本研究可以設(shè)定k=γ=n得到SGD的運(yùn)行時(shí)間為O(nd)。
1.2 L-BFGS方法
L-BFGS是一種求解局部極值的擬牛頓優(yōu)化方法,該方法使用一階導(dǎo)數(shù)秩一更新二階導(dǎo)數(shù)的Hessian矩陣,并使用上述梯度數(shù)據(jù)以保證在一階0值梯度超參數(shù)集上收斂。與文獻(xiàn)[3]類似,本文進(jìn)行L-BFGS實(shí)驗(yàn)時(shí)使用了L-BFGS經(jīng)典的Matlab實(shí)現(xiàn)minFunc,其中目標(biāo)函數(shù)和梯度函數(shù)如下:
(4)
(5)
參數(shù)向量β初始化為0向量。同SGD方法一樣,一旦目標(biāo)函數(shù)值的改變量小于給定的ω,L-BFGS方法將收斂。
2 實(shí)驗(yàn)設(shè)計(jì)
參照文獻(xiàn)[3],本研究使用Web和USPS-N數(shù)據(jù)集來(lái)驗(yàn)證所設(shè)計(jì)的邏輯回歸方法SGD和L-BFGS。對(duì)于USPS-N數(shù)據(jù)集,本研究使用數(shù)字9對(duì)其它數(shù)字構(gòu)造了兩分類數(shù)據(jù)集,將所有特征標(biāo)準(zhǔn)化到集合[0,1],所有類標(biāo)記轉(zhuǎn)化為0或1。對(duì)于兩實(shí)驗(yàn)數(shù)據(jù)集,隨機(jī)選取30%作為驗(yàn)證集,剩余70%用于10重交叉驗(yàn)證,SGD方法中參數(shù)λ,k,γ,μ和L-BFGS方法中參數(shù)μ通過(guò)在參數(shù)空間{10-4,10-3,10-2,10-1,100,101,102,103}中使用網(wǎng)格搜索方法進(jìn)行選取。由于實(shí)驗(yàn)所用數(shù)據(jù)集樣本數(shù)小,因此本研究設(shè)置參數(shù)k=γ=n以保證SGD方法收斂,但為了限制SGD方法重復(fù)進(jìn)行10重交叉驗(yàn)證所需時(shí)間,實(shí)驗(yàn)中我們將n取為103。與文獻(xiàn)[3]一致,我們將收斂標(biāo)準(zhǔn)ω取為10-4。由于L-BFGS方法使用目標(biāo)函數(shù)梯度自動(dòng)更新參數(shù)λ,因此本研究使用minFunc函數(shù)中的缺省初始化參數(shù)λ0=1。兩種方法在兩實(shí)驗(yàn)數(shù)據(jù)集上的參數(shù)設(shè)置情況見(jiàn)表1。
3 實(shí)驗(yàn)結(jié)果
為了更好地比較本文實(shí)驗(yàn)結(jié)果,本文所有實(shí)驗(yàn)是在Intel Core I5-4200M 2.5GHz,8G內(nèi)存,Windows7,64位,PyCharm4.0.6環(huán)境下完成。圖1和表2給出了使用SGD方法和L-BFGS方法在兩數(shù)據(jù)集上10次求解L2正則化邏輯回歸所得測(cè)試錯(cuò)誤百分比平均值和方差。從圖1和表2的實(shí)驗(yàn)結(jié)果可以看出,SGD方法較L-BFGS方法有更高的測(cè)試錯(cuò)誤百分比。事實(shí)上,由于SGD方法每次僅僅在一個(gè)隨機(jī)樣本子集上更新參數(shù),即使SGD方法安裝收斂條件收斂,但其目標(biāo)函數(shù)或許未達(dá)到局部最小解。然而,L-BFGS方法是在整個(gè)訓(xùn)練數(shù)據(jù)上更新參數(shù),因此,該方法更能比SGD方法獲得局部最小解。
4 結(jié) 論
本文通過(guò)使用SGD和L-BFGS方法對(duì)L2正則化邏輯回歸進(jìn)行算法設(shè)計(jì),使用Python集成開(kāi)發(fā)環(huán)境PyCharm 4.0.6對(duì)所設(shè)計(jì)的算法進(jìn)行實(shí)驗(yàn),在手寫數(shù)字圖像數(shù)據(jù)集USPS-N和HTML網(wǎng)頁(yè)數(shù)據(jù)集上的兩分類結(jié)果表明,隨機(jī)梯度下降求解方法在兩數(shù)據(jù)集上有較高的測(cè)試錯(cuò)誤率。
參考文獻(xiàn):
[1] JANOCH A,KARAYEV S,Yangqing Jia,et al.A category-level 3-d object dataset: putting the kinect to work [C],2011-06-15,S.l.:s.n.,2011:1168-1174.
[2] PEDRO HTC,COIMBRA CFM. Assessment of forecasting techniques for solar power production with no exogenous inputs [J].Solar Energy,2012,86(7):2017-2028.
[3] Ding N,Vishwanathan SVN.t-Logistic regression [C].Advances in Neural Information Processing Systems,2010: 514-522.
[4] Schmidt M. minFunc:unconstrained differentiable multivariate optimization in Matlab [J]. Software available at http://www.cs.ubc.ca/~schmidtm/Software/minFunc.html,2005.
作者簡(jiǎn)介:黃雄鵬(1994-),男,侗族,貴州余慶人。研究方向:計(jì)算機(jī)科學(xué)與技術(shù)。