33
0

Stream Clipper: Scalable Submodular Maximization on Stream

Abstract

Applying submodular maximization in the streaming setting is nontrivial because the commonly used greedy algorithm exceeds the fixed memory and computational limits typically needed during stream processing. We introduce a new algorithm, called stream clipper, that uses two thresholds to select elements either into a solution set SS or an extra buffer BB. The output is achieved by a greedy algorithm that starts from SS and then, if needed, greedily adds elements from BB. Swapping elements out of SS may also be triggered lazily for further improvements, and elements may also be removed from BB (and corresponding thresholds adjusted) in order to keep memory use bounded by a constant. Although the worst-case approximation factor does not outperform the previous worst-case of 1/21/2, stream clipper can perform better than 1/21/2 depending on the order of the elements in the stream. We develop the idea of an "order complexity" to characterize orders on which an approximation factor of 1α1-\alpha can be achieved. In news and video summarization tasks, stream clipper significantly outperforms other streaming methods. It shows similar performance to the greedy algorithm but with less computation and memory costs.

View on arXiv
Comments on this paper