2014年6月22日 星期日

Online dictionary learning for sparse coding

Mairal, Julien, et al. "Online dictionary learning for sparse coding." 

Proceedings of the 26th Annual International Conference on Machine Learning. ACM, 2009.


所謂的sparse coding 指的就是如何將一堆的數據向量表達成一些basis的稀疏線性組合。

而這篇paper說明了一種利用stochastic approximation去學習basis set(也就是我們所說的dictionary),的方法,同時的,這個方法也達到不錯的效果在較大規模的數據上。


問題定義:

對於一個有限大小的training set X = [x1,x2,x3.....xn]
我們可以將cost function定義如下





其中l(xi,D)指的是D這個dictionary可以多好的表達xi這筆數據,我們選擇以下的式子




其中α指的是sparse decomposition的係數
λ regularization的參數

統合一下,我們就可以把optimization problem轉換成如下形式







Algoritm:



























實際上為了加速收斂的時間,我們會一次處理多筆數據
也就是將algorithm1的5、6行部分換成如下:


沒有留言:

張貼留言