# CNNs: Why do the filters identify more complex features as the model goes on?

I have a feeling that it's related to how different output layers are stacked up against one another? However, there's a missing link in that argument that I can't completely get to.

In a convolution neural network, every neuron in layer $$i+1$$ depends on few neurons in layer $$i$$. It thus aggregated local information for layer $$i$$. As you go through the layers, the subset of input that the neuron sees grows, and so the features depend on a larger part of the input. Eventually, neurons depend, in directly, on all inputs.