Efficient Sparse Coding Algorithm
生活随笔
收集整理的這篇文章主要介紹了
Efficient Sparse Coding Algorithm
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ http://www.stanford.edu/~hllee/nips06-sparsecoding.pdf NIPS2006講sparse coding的文章,這篇文章講的算法是如何對(duì)目標(biāo)函數(shù) argmin_{A,x} f(A, x) = || y - Ax ||^2 +? lambda || x ||_1 s.t. ||A_i||^2< c 進(jìn)行優(yōu)化, 找到參數(shù)A和x,使得f(x)最小;其中l(wèi)ambda,c是超參。 這個(gè)算法的intuitive idea是這樣的,算法想模擬人腦處理信息的模式,人腦中可以處理各種各樣的信息,比如文本,圖形,聲音,氣味,視覺,味覺,觸覺等等。但是這些信息最根本的是通過什么來表達(dá)呢?哪就是neuron,和 activation. 人腦中neuron的個(gè)數(shù)我不知道確切的有多少,但是我想是billion 甚至是更多的數(shù)量級(jí)上的。但是,顯然不是每個(gè)信息的表示都需要所有neuron參與,參與表示的neuron其實(shí)是被激活的,這就是activation的概念。這個(gè)算法中neuron對(duì)應(yīng)著A,activation對(duì)應(yīng)x (可能說反了,不過無所謂,以后看這個(gè)的時(shí)候能明白怎么回事)。Sparse coding的意思就包含在x里面,也就是說x是一個(gè)sparse的向量,因?yàn)樵贏中,只有一部分的basis 需要激活。 具體的算法,需要參看文章了。這里說一下他的大概思想,因?yàn)閒(A,x)是convex的,相對(duì)于每一個(gè)參數(shù)單獨(dú)來看的話。所以f(A,x)有g(shù)lobal minimum?(不太懂2個(gè)參數(shù)的凸函數(shù),這個(gè)是不確定的) 可以把兩個(gè)參數(shù)分開看。當(dāng)把G(x)=f(A,x)來看的話,G(x)是一個(gè)L-1 regularized least square problem; 當(dāng)把 H(A)=f(A,x)來看的話,H(A)是一個(gè)L-2 constrained least square problem. H(A)通過解dual problem可以得到解。 G(x)通過他的feature sign search算法可以得到,search算法,先是initialize 一個(gè)x 通過在H(x)值下降的方向上去搜索合適的x和xi的符號(hào),最后得到全局最優(yōu)解。算法比較的時(shí)候,比LARS算法和其他算法快。 讀完這個(gè)文章有一些問題: 1.這個(gè)文章是ICML07 self taught learning算法最重要的參考文獻(xiàn),還可以有別的應(yīng)用么? 算法實(shí)際上會(huì)不會(huì)很慢呢? 2.Sparse coding和ICA算法有什么區(qū)別和聯(lián)系呢? 3.Sparse coding, PCA, SVD, topic model都是把original feature space 投影到 new feature space當(dāng)中來,什么時(shí)候適合用那一種投影方式?不知道那個(gè)paper有講過。 |
轉(zhuǎn)自:http://johnsonnjucs.spaces.live.com/blog/cns!258E5B93443F4F10!405.entry
總結(jié)
以上是生活随笔為你收集整理的Efficient Sparse Coding Algorithm的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。