Julien Mairal, Francis Bach, Jean Ponce, Guillermo Sapiro
ICML' 09
====================================================
sparse coding 就是用basis 的 linear combination 找出distance最小的
這篇paper主要是在探討怎樣去取那個basis set
然後用新的optimization方法(stochastic approximation)去作dictionary learning
之前的paper有提到2nd-order iterative batch
可以比1st order gradient descent來得快,但缺點是不能用在非常大的training set上
而且也不能動態地更新training data
這篇提到的online approach 就是要能夠解決這個問題,就是可以動態更新
另外這篇也提到這裡用的方法用的memory比較少且compute 也較少
contribution:
1. optimization: smooth nonconvex objective function over a convex set
2. iterative online algorithm
3. faster then previous approach
sparse coding 最基本的條件就是要滿足兩個部分:
這個部分跟Vector Quantization(VQ) 一樣
就是要找出一種basis 讓它們的distance 最小
但sparse coding 跟 VQ最大的差別就是在
這個式子就是把原來只能用dictionary 某個basis當作vector的限制拿掉
也就是可以用basis set 的linear combination 來當成vector
但又不想要這組linear的element 太多
所以後面就加了L1-distance 來當作regularization
然後這篇就証明說用了stochastic gradient descent (SGD) 的方法
來作optimization 的效果很好而且比較快,然後會收斂
後面就用了很多的篇幅在講收斂的效果
實驗的部分就跟之前Batch的方式來比較
這篇提出的方法收斂的速度較快,且最後結果也都差不多(甚至更好)
另外也利用這個方法應用在impainting上,表示在很多image processing
都可以利用這樣的方法來解決問題
=================================================
優點:
1. 証明很嚴謹,除了証明可以work,還証明了時間跟收斂程度
2. 利用很多solved problem 來推導証明 (least square, LARS-Lasso, Cholesky ...)
3. 提出這種想法(or solve method)可以應用在很多類似的問題上
4. improve state-of-art
缺點:
1. 相當難唸且難懂(可能是牽涉到太多專有名詞及optimization tool)
2. 應用的部分(impainting) 沒有作仔細的比較