在线场景感知:图像稀疏表示-ScSPM和LLC总结(lasso族、岭回归)
前言
??????? 場景感知應(yīng)用于三維場景和二維場景,可以使用通用的方法,不同之處在于數(shù)據(jù)的形式,以及導(dǎo)致前期特征提取及后期在線場景分割過程。場景感知即是場景語義分析問題,即分析場景中物體的特征組合與相應(yīng)場景的關(guān)系,可以理解為一個通常的模式識別問題。論文系列對稀疏編碼介紹比較詳細...本文經(jīng)過少量修改和注釋,如有不適,請移步原文。
??????? code下載:http://www.ifp.illinois.edu/~jyang29/ScSPM.htm?? 。 如有評論,請拜訪原文。原文鏈接:http://blog.csdn.net/jwh_bupt/article/details/9837555。
????? ? 參考文章:稀疏編碼及其改進(ScSPM,LLC,SV coding) 。稀疏編碼的Ufldl詳細教程:http://ufldl.stanford.edu/wiki/index.php/稀疏編碼
流程
??????? Sp的好處是尋找超完備基能更有效地找出隱含在輸入數(shù)據(jù)內(nèi)部的結(jié)構(gòu)與模式,指導(dǎo)進一步的圖像處理應(yīng)用。
??????? Training:給定一些訓(xùn)練樣本(或者特征集)[?x1, x2, …, xm(in Rd)],學(xué)習一本字典的基(bases)[Φ1,Φ2……(also in?Rd)]。可是用k-means等無監(jiān)督的方法,也可以用優(yōu)化的方法(這時training完了同時也得到了這些training samples的codes,這是一個LASSO和QP問題的循環(huán)迭代);訓(xùn)練結(jié)果:一般得到一個維數(shù)比特征維數(shù)高的基向量集合。
?????? Coding:用優(yōu)化的方法求解測試樣本的codes(此時字典已經(jīng)學(xué)得)。經(jīng)典的方法是求解LASSO:
??????????????????(1)
????????自我學(xué)習就是在Training的時候采用大量無標注的自然圖像訓(xùn)練字典,然后對帶標注的圖像進行編碼得到特征codes。Coding結(jié)果:得到字典之后,每一個特征可以表示為基空間的一個向量,即特征Code。
??????? 代價函數(shù)及優(yōu)化過程:Sparse Coding_exercise。
?
正文
??????? 稀疏編碼算法是一種無監(jiān)督學(xué)習方法,它用來尋找一組“超完備”基向量來更高效地表示樣本數(shù)據(jù)。稀疏編碼算法的目的就是找到一組基向量 ,使得我們能將輸入向量 表示為這些基向量的線性組合:
?????? 雖然形如主成分分析技術(shù)(PCA)能使我們方便地找到一組“完備”基向量,但是這里我們想要做的是找到一組“超完備”基向量來表示輸入向量 (也就是說,k >n)。超完備基的好處是它們能更有效地找出隱含在輸入數(shù)據(jù)內(nèi)部的結(jié)構(gòu)與模式。然而,對于超完備基來說,系數(shù) ai 不再由輸入向量 唯一確定。因此,在稀疏編碼算法中,我們另加了一個評判標準“稀疏性”來解決因超完備而導(dǎo)致的退化(degeneracy)問題。
?????? 這里,我們把“稀疏性”定義為:只有很少的幾個非零元素或只有很少的幾個遠大于零的元素。要求系數(shù) ai 是稀疏的意思就是說:對于一組輸入向量,我們只想有盡可能少的幾個系數(shù)遠大于零。選擇使用具有稀疏性的分量來表示我們的輸入數(shù)據(jù)是有原因的,因為絕大多數(shù)的感官數(shù)據(jù),比如自然圖像,可以被表示成少量基本元素的疊加,在圖像中這些基本元素可以是面或者線。同時,比如與初級視覺皮層的類比過程也因此得到了提升。
?????? .........................................????
??????? 使用稀疏編碼算法學(xué)習基向量集的方法,是由兩個獨立的優(yōu)化過程組合起來的。第一個是逐個使用訓(xùn)練樣本 來優(yōu)化系數(shù)ai ,第二個是一次性處理多個樣本對基向量 進行優(yōu)化。
??????? 如果使用 L1 范式作為稀疏懲罰函數(shù),對 的學(xué)習過程就簡化為求解 由L1 范式正則化的最小二乘法問題,這個問題函數(shù)在域 內(nèi)為凸,已經(jīng)有很多技術(shù)方法來解決這個問題(諸如CVX之類的凸優(yōu)化軟件可以用來解決L1正則化的最小二乘法問題)。如果S(.) 是可微的,比如是對數(shù)懲罰函數(shù),則可以采用基于梯度算法的方法,如共軛梯度法。
??????? 稀疏編碼學(xué)習基向量需要大量的計算過程,相對于前饋網(wǎng)絡(luò)需要更多的學(xué)習時間,但對于有超級計算能力的顯卡來說,也不是什么大的問題。
Sparse Representatio稀疏編碼
目錄()[-]
稀疏編碼系列:
- (一)----Spatial Pyramid 小結(jié)
- (二)----圖像的稀疏表示——ScSPM和LLC的總結(jié)
- (三)----理解sparse coding
- (四)----稀疏模型與結(jié)構(gòu)性稀疏模型
---------------------------------------------------------------------------
-
前言
???????上一篇提到了SPM(SPM[1]全稱是Spatial Pyramid Matching,出現(xiàn)的背景是bag of visual words模型被大量地用在了Image representation中,但是BOVW模型完全缺失了特征點的位置信息。匹配利用對比比較閾值獲取類別標記,分類使用內(nèi)積獲得類別數(shù)字)。
??????? 這篇博客打算把ScSPM和LLC一起總結(jié)了。ScSPM和LLC其實都是對SPM的改進。這些技術(shù),都是對特征的描述。它們既沒有創(chuàng)造出新的特征(都是提取SIFT,HOG, RGB-histogram et al),也沒有用新的分類器(也都用SVM用于最后的image classification),重點都在于如何由SIFT、HOG形成圖像/場景的特征(見圖1)。從BOW,到BOW+SPM,都是在做這一步。
???????? 說到這,怕會迷糊大家------SIFT、HOG本身不就是提取出的特征么,它們不就已經(jīng)形成了對圖像的描述了嗎,為啥還有我后面提到的各種BOW云云呢。這個問題沒錯,SIFT和HOG它們確實本身已經(jīng)是提取到的特征了,我們姑且把它們記為x。而現(xiàn)在,BOW+SPM是對特征x再進行一層描述,就成了Φ(x)——這相當于是更深一層(deeper)的model。一個十分相似的概念是SVM里面的核函數(shù)kernel,K=Φ(x)Φ(x),x是輸入的特征,Φ(x)則對輸入的特征又做了一層抽象(不過我們用核函數(shù)沒有顯式地對Φ(x)做定義罷了)。根據(jù)百度的余凱老師在CVPR2012的那個Tutorial上做的總結(jié)[5]:Deeper model is preferred,自然做深一層的抽象效果會更好了。而Deep Learning也是同樣的道理變得火了起來。
? ? ? ?再次盜用一些余凱老師在CVPR2012的那個Tutorial上的一些圖:
??????????? 圖 (1)
? ? ? ? SPM,ScSPM,LLC所做的工作也都集中在design feature這一步,而不是在Machine Learning那一步。值得注意的是,我們一直在Design features,而deep learning則是design feature learners。
???? ?? BOW+SPM的整體流程如圖(2)所示:
圖(2)
??????? Feature Extraction的整體過程就是先提取底層的特征(SIFT,HOG等),然后經(jīng)過coding和pooling,得到最后的特征表示。
???????????? ----Coding: nonlinear mapping data into another feature space
???????????? ----Pooling: obtain histogram
??????? 而SIFT、HOG本身就是一個coding+pooling的過程,因此BOW+SPM就是一個兩層的Coding+Pooling的過程。所以可以說,SIFT、SURF等特征的提出,是為了尋找更好的第一層Coding+Pooling的辦法;而SPM、ScSPM、LLC的提出,是為了尋找更好的第二層Coding+Pooling的辦法。而ScSPM和LLC所提出的更好的Coding辦法就是Sparse Coding。
圖(3)
-
再前言
????????在總結(jié)ScSPM之前又要啰嗦些話。為啥會有SPM→ScSPM呢?原因之一是為了尋找better coding + better pooling的方式提高性能,原因之二就是提高速度。如何提高速度?這里的速度,不是Coding+Pooling的速度,而是分類器的速度。
??????? SPM設(shè)計的是一個Linear feature,在文章中作者用于實驗則是用了nonlinear SVM(要用Mercer Kernels)。相比linear SVM,nonlinear SVM在training和testing的時候速度會慢的。至于其原因,我們不妨看看SVM的對偶形式:
(1)
???????? 如果核函數(shù)是一個線性的kernel:K(z, zi)=zTzi,那么SVM的決策函數(shù)就可以改寫為:
??? (2)
????????? 從兩式可以看見,拋開訓(xùn)練和存儲的復(fù)雜度不說,對于測試來說,(1)式對每個測試樣本要單獨計算K(z, zi),因此testing的時間復(fù)雜度為O(n)。而(2)式的wT可以一次性事先算出,所以每次testing的時間復(fù)雜度為O(1)。此外,linear classifier的可擴展性會更好。
????????? 因此,如果能在coding+pooling后設(shè)計得到線性可分的特征描述,那就最好了。因此能否設(shè)計一個nonlinear feature + linear SVM得到與 linear feature + nonlinear SVM等效甚至更好的效果,成為ScSPM和LLC的研究重點。
-
ScSPM
??????? SPM在coding一步采用的是Hard-VQ,也就是說一個descriptor只能投影到dictionary中的一個term上。這樣就造成了明顯的重建誤差(worse reconstruction,large quantization errors)。這樣,原本很相似的descripors經(jīng)過coding之后就會變得非常不相似了(這違背了壓縮投影的近鄰哈希特性)。ScSPM為此取消了這一約束,它認為descripor可以投影到某幾個terms上,而不僅僅是一個。因此,其目標函數(shù)變成了:
???? (3)
?????? ?其中M是descriptor的數(shù)目,Um表示第m個descriptor在字典V上的投影系數(shù)。
??????? 它對投影系數(shù)用L1-norm做約束實現(xiàn)了稀疏。求解問題稱為LASSO (least absolute shrinkage and selection operator,是一種壓縮估計。它通過構(gòu)造一個罰函數(shù)得到一個較為精煉的模型,使得它壓縮一些系數(shù),同時設(shè)定一些系數(shù)為零。因此保留了子集收縮的優(yōu)點,是一種處理具有復(fù)共線性數(shù)據(jù)的有偏估計。Lasso 的基本思想是在回歸系數(shù)的絕對值之和小于一個常數(shù)的約束條件下,使殘差平方和最小化,從而能夠產(chǎn)生某些嚴格等于0 的回歸系數(shù),得到可以解釋的模型 ),在得到稀疏結(jié)果的同時,它無法得到解析解,因此速度肯定是很慢的。關(guān)于L1-norm和LASSO問題,可以參看這里。
??????? 為什么Sparse Coding好,主要有以下幾個原因:
????? 1)已經(jīng)提到過的重建性能好(近鄰哈希性能好);[2]
????? 2)sparse有助于獲取salient patterns of descripors描述子的顯著模式;[2]
????? 3)image statistics方面的研究表明image patches都是sparse signals;[2]
????? 4)biological visual systems的研究表明信號的稀疏特征有助于學(xué)習;[4]
????? 5)稀疏的特征更加線性可分。[2]
???????? 總之,"Sparse coding is a better building block“。
???????? Coding過后,ScSPM采用的Pooling方法是max pooling:Zj=max Uij。相比SPM的average pooling:Zj=1/M *Σ Uij。可以看見average pooling是一個linear feature representation,而max pooling是nonlinear的。我是這么理解再前言中提到的linear和nonlinear feature的。(@13.08.11:今天在寫理解sparse coding的時候發(fā)現(xiàn)這里搞錯了。不光是pooling的函數(shù)是線性的,VQ的coding得到的u關(guān)于x好像也是線性的。)
??????? 作者在實驗中得出max pooling的效果好于average pooling,原因是max pooling對local spatial variations比較魯棒。而Hard-VQ就不好用max pooling了,因為U中各元素非0即1。
??????? 另外實驗的一個有趣結(jié)果是發(fā)現(xiàn)ScSPM對大的codebook size表現(xiàn)出更好的性能,反觀SPM,codebook大小對SPM結(jié)果影響不大。至于為啥,我也不懂。
-
LLC
???????? LLC(Kai?Yu等發(fā)在NIPS09上面的文章《Nonlinear?learning?using?local?coordinate?coding》,作者做實驗發(fā)現(xiàn),稀疏編碼的結(jié)果往往具有局部性,也就是說非零系數(shù)往往屬于與編碼數(shù)據(jù)比較接近的基。作者提出的局部坐標編碼(LCC)鼓勵編碼滿足局部性,同時從理論上指出在一些特定的假設(shè)下,局部性比稀疏性更加必要,對于一些非線性學(xué)習能夠獲得非常成功的結(jié)果)和ScSPM差不多了,也是利用了Sparsity。值得一說的是,其實Hard-VQ也是一種Sparse Coding,只不過它是一種重建誤差比較大的稀疏編碼。LLC對ScSPM的改進,則在于引入了locality。為了便于描述,盜用一下論文的圖:
圖(4)
??????? 這個圖實在是太棒了,太能解釋問題了。VQ不用說,重點在于SC和LLC之間,LLC引入了locality的約束,即不僅僅是sparse要滿足,非零的系數(shù)還應(yīng)該賦值給相近的dictionary terms。作者在[4]中解釋到,locality 很重要是因為:
???? 1)nonlinear function的一階近似要求codes是local的;
???? 2)locality能夠保證codes的稀疏性,而稀疏卻不能保證locality;
??? ?3)稀疏的coding只有再codes有局部性的時候有助于learning。
??????? 總之,"locality is more essential than sparsity"。(近鄰/局部特性要求是特征提取思想LSH的基本原則)
?????? ?LLC的目標函數(shù)是:
???? (4)
?????? 和(3)一樣,(4)可以按照加號的前后分成兩部分:加號前的一項最小化是為了減少量化誤差(學(xué)習字典、確認投影系數(shù));加號后的一項則是做出假設(shè)約束(包括是一些參數(shù)的regularization)。這個求解是可以得到閉合解的,同時也有快速的近似算法解決這個問題,因此速度上比ScSPM快。
?????? di描述的是xi到每個dictionary term的距離。顯然這么做是為了降低距離大的term對應(yīng)的系數(shù)。
???? locality體現(xiàn)出的最大優(yōu)勢就是,相似的descriptors之間可以共享相似的descriptors,因此保留了codes之間的correlation。而SC為了最小化重建誤差,可能引入了不相鄰的terms,所以不能保證smooth。Hard-VQ則更不用說了。
?????? 實驗部分,則采用max pooling + L2-normalization。
?????? 文章的最后,盜竊一個ScSPM第一作者的總結(jié)表格結(jié)束吧(又是以偷竊別人圖標的方式結(jié)束)
?
References:
[1] S. Lazebnik, C. Schmid, and J. Ponce. Beyond bags of features: Spatial pyramid matching for recognizing natural scene categories. CVPR2006
[2] Jianchao Yang, Kai Yu, Yihong Gong, and Thomas Huang.?Linear spatial pyramid matching using sparse coding for image classification.?CVPR2009.
[3] Jinjun Wang, Jianchao Yang, Kai Yu, Fengjun Lv, and Thomas Huang. Locality-constrained linear coding for image classification. CVPR2010
[4] Kai Yu, Tong Zhang, and Yihong Gong.?Nonlinear learning using local coordinate coding.?NIPS2009.
[5] Kai Yu. CVPR12 Tutorial on Deep Learning: Sparse Coding.
?
附錄:lasso族
?????? Lasso回歸在擬合廣義線性模型的同時進行變量篩選(variable selection)和復(fù)雜度調(diào)整(regularization)。偏最小二乘法,范數(shù)使用絕對值,因此LASSO的優(yōu)化目標不是連續(xù)可導(dǎo)的,也就是說,最小二乘法,梯度下降法,牛頓法,擬牛頓法都不能用。正則化問題求解可采用近端梯度下降法(Proximal Gradient Descent,PGD)。
.............................
? ? ?? 在建立模型之初,為了盡量減小因缺少重要自變量而出現(xiàn)的模型偏差,通常會選擇盡可能多的自變量。然而,建模過程需要尋找對因變量最具有強解釋力的自變量集合,也就是通過自變量選擇(指標選擇、字段選擇)來提高模型的解釋性和預(yù)測精度。指標選擇在統(tǒng)計建模過程中是極其重要的問題。Lasso算法則是一種能夠?qū)崿F(xiàn)指標集合精簡的估計方法。
? ? ?? Lasso(Least absolute shrinkage and selection operator, Tibshirani(1996))方法是一種壓縮估計。它通過構(gòu)造一個罰函數(shù)得到一個較為精煉的模型,使得它壓縮一些系數(shù),同時設(shè)定一些系數(shù)為零。因此保留了子集收縮的優(yōu)點,是一種處理具有復(fù)共線性數(shù)據(jù)的有偏估計。
? ???? Lasso 的基本思想是在回歸系數(shù)的絕對值之和小于一個常數(shù)的約束條件下,使殘差平方和最小化,從而能夠產(chǎn)生某些嚴格等于0 的回歸系數(shù),得到可以解釋的模型。R的Lars 算法的軟件包提供了Lasso編程,我們根據(jù)模型改進的需要,可以給出Lasso算法,并利用AIC準則和BIC準則給統(tǒng)計模型的變量做一個截斷,進而達到降維的目的。因此,我們通過研究Lasso可以將其更好的應(yīng)用到變量選擇中去
? ? ?? lasso estimate具有shrinkage和selection兩種功能,shrinkage這個不用多講,本科期間學(xué)過回歸分析的同學(xué)應(yīng)該都知道嶺估計會有shrinkage的功效,lasso也同樣。關(guān)于selection功能,Tibshirani提出,當t值小到一定程度的時候,lasso estimate會使得某些回歸系數(shù)的估值是0,這確實是起到了變量選擇的作用。當t不斷增大時,選入回歸模型的變量會逐漸增多,當t增大到某個值時,所有變量都入選了回歸模型,這個時候得到的回歸模型的系數(shù)是通常意義下的最小二乘估計。從這個角度上來看,lasso也可以看做是一種逐步回歸的過程。
? ??? 模型選擇本質(zhì)上是尋求模型稀疏表達的過程,而這種過程可以通過優(yōu)化一個“損失”十“懲罰”的函數(shù)問題來完成。
2、與普通最小二乘法的區(qū)別
? ? ?? 使用最小二乘法擬合的普通線性回歸是數(shù)據(jù)建模的基本方法。其建模要點在于誤差項一般要求獨立同分布(常假定為正態(tài))零均值。t檢驗用來檢驗擬合的模型系數(shù)的顯著性,F檢驗用來檢驗?zāi)P偷娘@著性(方差分析)。如果正態(tài)性不成立,t檢驗和F檢驗就沒有意義。
? ???? 對較復(fù)雜的數(shù)據(jù)建模(比如文本分類,圖像去噪或者基因組研究)的時候,普通線性回歸會有一些問題:
? ? (1)預(yù)測精度的問題 如果響應(yīng)變量和預(yù)測變量之間有比較明顯的線性關(guān)系,最小二乘回歸會有很小的偏倚,特別是如果觀測數(shù)量n遠大于預(yù)測變量p時,最小二乘回歸也會有較小的方差。但是如果n和p比較接近,則容易產(chǎn)生過擬合;如果n
? ? (2)模型解釋能力的問題 包括在一個多元線性回歸模型里的很多變量可能是和響應(yīng)變量無關(guān)的;也有可能產(chǎn)生多重共線性的現(xiàn)象:即多個預(yù)測變量之間明顯相關(guān)。這些情況都會增加模型的復(fù)雜程度,削弱模型的解釋能力。這時候需要進行變量選擇(特征選擇)。
? ? ?? 針對OLS的問題,在變量選擇方面有三種擴展的方法: (1)子集選擇 這是傳統(tǒng)的方法,包括逐步回歸和最優(yōu)子集法等,對可能的部分子集擬合線性模型,利用判別準則 (如AIC,BIC,Cp,調(diào)整R2 等)決定最優(yōu)的模型。 (2)收縮方法(shrinkage method) 收縮方法又稱為正則化(regularization)。主要是嶺回歸(ridge regression)和lasso回歸。通過對最小二乘估計加入罰約束,使某些系數(shù)的估計為0。 (3)維數(shù)縮減 主成分回歸(PCR)和偏最小二乘回歸(PLS)的方法。把p個預(yù)測變量投影到m維空間。
3、嶺回歸、lasso回歸和elastic net三種正則化方法
(1)嶺回歸[]
? ? ? 最小二乘估計是最小化殘差平方和(RSS):
? ? ? 嶺回歸在最小化RSS的計算里加入了一個收縮懲罰項(正則化的l2范數(shù))
? ??? 這個懲罰項中l(wèi)ambda大于等于0,是個調(diào)整參數(shù)。各個待估系數(shù)越小則懲罰項越小,因此懲罰項的加入有利于縮減待估參數(shù)接近于0。重點在于lambda的確定,可以使用交叉驗證或者Cp準則。
?? ? 嶺回歸優(yōu)于最小二乘回歸的原因在于方差-偏倚選擇。隨著lambda的增大,模型方差減小而偏倚(輕微的)增加。
? ?? 嶺回歸的一個缺點:在建模時,同時引入p個預(yù)測變量,罰約束項可以收縮這些預(yù)測變量的待估系數(shù)接近0,但并非恰好是0(除非lambda為無窮大)。這個缺點對于模型精度影響不大,但給模型的解釋造成了困難。這個缺點可以由lasso來克服。(所以嶺回歸雖然減少了模型的復(fù)雜度,并沒有真正解決變量選擇的問題)
(2)lasso
? ? ? lasso是在RSS最小化的計算中加入一個l1范數(shù)作為罰約束:
? ? ? l1范數(shù)的好處是當lambda充分大時可以把某些待估系數(shù)精確地收縮到0。
? ??? 關(guān)于嶺回歸和lasso,在[3]里有一張圖可以直觀的比較([3]的第三章是個關(guān)于本文主題特別好的參考):[]
? ? ? 關(guān)于嶺回歸和lasso當然也可以把它們看做一個以RSS為目標函數(shù),以懲罰項為約束的優(yōu)化問題。
(3)調(diào)整參數(shù)lambda的確定
? ???? 交叉驗證法。對lambda的格點值,進行交叉驗證,選取交叉驗證誤差最小的lambda值。最后,按照得到的lambda值,用全部數(shù)據(jù)重新擬合模型即可。
(4)elastic net
? ?? ? elastic net融合了l1范數(shù)和l2范數(shù)兩種正則化的方法,上面的嶺回歸和lasso回歸都可以看做它的特例:
? ? ?? elastic net對于p遠大于n,或者嚴重的多重共線性情況有明顯的效果。 對于elastic net,當alpha接近1時,elastic net表現(xiàn)很? ? 接近lasso,但去掉了由極端相關(guān)引起的退化化或者奇怪的表現(xiàn)。一般來說,elastic net是嶺回歸和lasso的很好的折中,當alpha從0變化到1,目標函數(shù)的稀疏解(系數(shù)為0的情況)也從0單調(diào)增加到lasso的稀疏解。
? ??? LASSO的進一步擴展是和嶺回歸相結(jié)合,形成Elastic Net方法。[]
(5)嶺回歸與lasso算法[]
? ? ? 這兩種方法的共同點在于,將解釋變量的系數(shù)加入到Cost Function中,并對其進行最小化,本質(zhì)上是對過多的參數(shù)實施了懲罰。而兩種方法的區(qū)別在于懲罰函數(shù)不同。但這種微小的區(qū)別卻使LASSO有很多優(yōu)良的特質(zhì)(可以同時選擇和縮減參數(shù))。下面的公式就是在線性模型中兩種方法所對應(yīng)的目標函數(shù):
????????????????????????????? 公式?都懶得打上去嗎???
? ? ? 公式中的lambda是重要的設(shè)置參數(shù),它控制了懲罰的嚴厲程度,如果設(shè)置得過大,那么最后的模型參數(shù)均將趨于0,形成擬合不足。如果設(shè)置得過小,又會形成擬合過度。所以lambda的取值一般需要通過交叉檢驗來確定。
?? ?? ? 嶺回歸的一個缺點:在建模時,同時引入p個預(yù)測變量,罰約束項可以收縮這些預(yù)測變量的待估系數(shù)接近0,但并非恰好是0(除非lambda為無窮大)。這個缺點對于模型精度影響不大,但給模型的解釋造成了困難。這個缺點可以由lasso來克服。(所以嶺回歸雖然減少了模型的復(fù)雜度,并沒有真正解決變量選擇的問題)
? 4、LARS算法對lasso的貢獻[]
? ???? LAR把Lasso (L1-norm regularization)和Boosting真正的聯(lián)系起來,如同打通了任督二脈。LAR結(jié)束了一個晦澀的時代:在LAR之前,有關(guān)Sparsity的模型幾乎都是一個黑箱,它們的數(shù)學(xué)性質(zhì)(更不要談古典的幾何性質(zhì)了)幾乎都是缺失。
?????? 近年來興起的Compressed sensing(Candes & Tao, Donoho)也與LAR一脈相承,只是更加強調(diào)L1-norm regularization其他方面的數(shù)學(xué)性質(zhì),比如Exact Recovery。我覺得這是一個問題的多個方面,Lasso關(guān)注的是構(gòu)建模型的準確性,Compressed sensing關(guān)注的是變量選擇的準確性。
?5、變量選擇
? ?? ? 當我們使用數(shù)據(jù)訓(xùn)練分類器的時候,很重要的一點就是要在過度擬合與擬合不足之間達成一個平衡。防止過度擬合的一種方法就是對模型的復(fù)雜度進行約束。模型中用到解釋變量的個數(shù)是模型復(fù)雜度的一種體現(xiàn)。控制解釋變量個數(shù)有很多方法,例如變量選擇(feature selection),即用filter或wrapper方法提取解釋變量的最佳子集。或是進行變量構(gòu)造(feature construction),即將原始變量進行某種映射或轉(zhuǎn)換,如主成分方法和因子分析。變量選擇的方法是比較“硬”的方法,變量要么進入模型,要么不進入模型,只有0-1兩種選擇。但也有“軟”的方法,也就是Regularization類方法,例如嶺回歸(Ridge Regression)和套索方法(LASSO:least absolute shrinkage and selection operator)
?6、其他
? ? ?? 將Lasso應(yīng)用于時間序列。將Lasso思想應(yīng)用于AR(p)、ARMA(p)等模型,利用Lasso方法對AR(p)、ARMA(p)等模型中的變量選擇,并給出具體的算法。將Lasso方法應(yīng)用到高維圖形的判別與選擇以及應(yīng)用于線性模型的變量選擇中,以提高模型選擇的準確性。
總結(jié)
以上是生活随笔為你收集整理的在线场景感知:图像稀疏表示-ScSPM和LLC总结(lasso族、岭回归)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小米智能全家桶半年使用评测-小米智能全家
- 下一篇: 使用Eric构建Caffe应用程序-Ba