Online Convolutional Sparse Coding

Convolutional sparse coding (CSC) improves upon sparse coding to learn shift-invariant dictionaries on whole data. Existing methods in CSC are optimized in batch mode and need to store all data and codes in the memory. As CSC uses a large set of codes to represent a single instance in the dataset, the memory cost is intractable in face of large-scale challenge. In this paper, we propose online CSC (OCSC), which processes each sample only once and updates the dictionaries with the help of low-dimensional history matrices recording statistics about past samples. Hence the memory and computational cost per iteration are significantly reduced. And the dynamic evolving content within data is captured through online learning. We show that convergence to some stationary point of the CSC problem is still guaranteed by our OCSC algorithm. Moreover, we extend the proposed method to an even lower computational and memory cost by approximating a large set of dictionaries by linear combinations of a smaller number of base dictionaries. Extensive experiments results validate OCSC's scalability in terms of memory and time, and the effectiveness of reconstructing better or comparable images.
View on arXiv