Convolutional Neural Networks Analyzed via Convolutional Sparse Coding