日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

sparse coding

發(fā)布時(shí)間:2024/1/8 编程问答 56 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sparse coding 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

稀疏編碼系列:

  • (一)----Spatial Pyramid 小結(jié)
  • (二)----圖像的稀疏表示——ScSPM和LLC的總結(jié)
  • (三)----理解sparse coding
  • (四)----稀疏模型與結(jié)構(gòu)性稀疏模型

---------------------------------------------------------------------------

???????

??????? 本文的內(nèi)容主要來(lái)自余凱老師在CVPR2012上給的Tutorial。前面在總結(jié)ScSPM和LLC的時(shí)候,引用了很多Tutorial上的圖片。其實(shí)這個(gè)Tutorial感覺(jué)寫的挺好的,所以這次把它大致用自己的語(yǔ)言描述一下。不過(guò)稀疏編碼是前兩年比較火的東西,現(xiàn)在火的是deep learning了。

1、What is sparse coding?

?????? 1988年,神經(jīng)稀疏編碼的概念由Mitchison提出,由牛津大學(xué)的Rolls等正式引用。靈長(zhǎng)目動(dòng)物顎葉視覺(jué)皮層和貓視覺(jué)皮層的電生理實(shí)驗(yàn)報(bào)告和一些相關(guān)模型的研究結(jié)果都說(shuō)明了視覺(jué)皮層復(fù)雜刺激的表達(dá)是采用稀疏編碼原則的。研究表明:初級(jí)視覺(jué)皮層V1區(qū)第四層有5000萬(wàn)個(gè)(相當(dāng)于基函數(shù)),而負(fù)責(zé)視覺(jué)感知的視網(wǎng)膜和外側(cè)膝狀體的神經(jīng)細(xì)胞只有100萬(wàn)個(gè)左右(理解為輸出神經(jīng)元)。說(shuō)明稀疏編碼是神經(jīng)信息群體分布式表達(dá)的一種有效策略。1996年,加州大學(xué)伯克利分校的Olshausen等在Nature雜志發(fā)表論文指出:自然圖像經(jīng)過(guò)稀疏編碼后得到的基函數(shù)類似V1區(qū)簡(jiǎn)單細(xì)胞感受野的反應(yīng)特性(空間局部性、空間方向性、信息選擇性)。

?????? 典型的sparse coding的過(guò)程分為訓(xùn)練和測(cè)試。

?????? Training:給定一些訓(xùn)練樣本(training samples)[?x1, x2, …, xm(in Rd)],學(xué)習(xí)一本字典的基(bases)[Φ1,Φ2……(also in?Rd)]。可是用k-means等無(wú)監(jiān)督的方法,也可以用優(yōu)化的方法(這時(shí)training完了同時(shí)也得到了這些training samples的codes,這是一個(gè)LASSO和QP問(wèn)題的循環(huán)迭代);

?????? Coding:用優(yōu)化的方法求解測(cè)試樣本的codes(此時(shí)字典已經(jīng)學(xué)得)。經(jīng)典的方法是求解LASSO:

??????????????????(1)

????????自我學(xué)習(xí)就是在Training的時(shí)候采用大量無(wú)標(biāo)注的自然圖像訓(xùn)練字典,然后對(duì)帶標(biāo)注的圖像進(jìn)行編碼得到特征codes。

?

2、Connections to RBMs, autoencoders

????? (1)式(經(jīng)典的稀疏編碼)有幾個(gè)特點(diǎn):

??????????? ——系數(shù)a是稀疏的;

??????????? ——a的維數(shù)一般比x的維數(shù)大;

??????????? ——編碼過(guò)程a=f(x)是一個(gè)非線性的關(guān)于x的隱函數(shù)(即我們沒(méi)有f(x)的顯示表達(dá),因?yàn)榍蠼釲ASSO沒(méi)有解析解);

??????????? ——重建過(guò)程x'=g(a)是一個(gè)線性的顯示的關(guān)于a的函數(shù)(X’=ΣaiΦi)。

???????? 而RBM和自編碼的特點(diǎn)則是:

?????????? ——有顯示的f(x);

?????????? ——不會(huì)必然得到稀疏的a,但是如果我們?cè)黾酉∈璧募s束(如稀疏自編碼,稀疏RBM),通常能得到更好的效果(進(jìn)一步說(shuō)明sparse helps learning)。

???????? 從廣義上說(shuō),滿足這么幾個(gè)條件的編碼方式a=f(x)都可以叫稀疏編碼:

?????????? 1) a是稀疏的,且通常具有比x更高的維數(shù);

???????????2) f(x)是一個(gè)非線性的映射;(jiang1st2010注:該條要求存疑,見(jiàn)下面解釋。

?????????? 3) 重建的過(guò)程x'=g(a),使得重建后的x'與x相似。

????????? 因此,sparse RBM,sparse auto-encoder,甚至VQ都可以算是一種sparse coding。(jiang1st2010注:第二條要求稱f(x)是一個(gè)非線性映射,然而SPM中用到的VQ是一個(gè)線性映射,原因可以參見(jiàn)這里這里。余凱老師也是LLC論文的作者,似乎存在矛盾?不過(guò)這是個(gè)小問(wèn)題了,沒(méi)必要深究

?

3、Sparse activations vs. sparse models

???????? 現(xiàn)在可以用a=f(x)表示稀疏編碼的問(wèn)題了。它可以分解成兩種情況:

???????? 1)sparse model:f(x)的參數(shù)是稀疏的

????????????????? --例如:LASSO f(x)=<w,x>,其中w要求是稀疏的。(jiang1st2010注:這個(gè)例子中f(x)也是線性的!)

????????????????? --這是一個(gè)特征選擇的問(wèn)題:所有的x都挑選相同的特征子集。

??????????????????--hot topic.

?????????2)sparse activation:f(x)的輸出是稀疏的

????????????????? --就是說(shuō)a是稀疏的。

????????????????? --這是特征學(xué)習(xí)的問(wèn)題:不同的x會(huì)激活不懂的特征子集。

???????????????????????????????????????????

?

4、Sparsity vs. locality

?????? 其實(shí)這個(gè)問(wèn)題在這里已經(jīng)談過(guò)了。簡(jiǎn)單的說(shuō)就是sparsity不一定導(dǎo)致locality,而locality肯定是sparse的。sparse不比locality好,因?yàn)閘ocality具有smooth的特性(即相鄰的x編碼后的f(x)也是相鄰的),而僅僅sparse不能保證smooth。smooth的特性對(duì)classification會(huì)具有更好的效果,并且設(shè)計(jì)f(x)時(shí),應(yīng)盡量保證相似的x在它們的codes中有相似的非0的維度。

?

???????? Tutorial上展示了(1)中取不同的λ,字典中各項(xiàng)呈現(xiàn)的效果:

??????

???

??????? 作者想說(shuō)明的問(wèn)題是分類效果越好的情況下,basis會(huì)更清晰地表現(xiàn)出屬于某幾個(gè)特定的類。但是我沒(méi)太看明白。

?

5、Hierarchical sparse coding

????????這里圖3曾說(shuō)明了SIFT本身就是一個(gè)Coding+Pooling的過(guò)程,所以SPM是一個(gè)兩層的Coding+Pooling。而Hierarchical sparse coding就是兩層的coding都是sparse coding,如下圖:

???????? 整個(gè)HSC的第一層就從pixel層級(jí)開始(不需要手動(dòng)設(shè)計(jì)SIFT特征了),經(jīng)過(guò)兩層SC后,形成codes。這個(gè)過(guò)程可以從無(wú)標(biāo)注的數(shù)據(jù)中學(xué)習(xí),就是self-taught learning。從pixel層級(jí)開始,這點(diǎn)和DNN啥的很像了。

????????? 從結(jié)果來(lái)看,HSC的性能會(huì)比SIFT+SC稍微好些。

????????

?????????? Tutorial的最后列舉了關(guān)于SC的其他主題,我也不懂,這里就不廢話了。


-----------------

轉(zhuǎn)載出處:http://blog.csdn.net/jwh_bupt/article/details/9902949

總結(jié)

以上是生活随笔為你收集整理的sparse coding的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。