# Convolutional Neural networks

Hi all: I have a very fundamental question on how CNN works.

I understand fully the training process as to take a bunch of images, start with random filters, convolve, activate, calculate loss, back propagate and learn weights. Fully understood.

But once the training is done, the last convolution layer has the most complex and complete features like faces, ears, wheels and such filters that can get activated by full features.

If that is so, during testing, do we need to pass our images through all the layers again? Why don't we convolve our images against the last convolution layer and see how many of these complex feature filters get activated? And pass that on to the fully connected layer for classification?

I understand there might me inconsistencies in the layers and the inputs but except that anything more important?

Each layer is a function of the previous layer. Ignoring the details of convolution, a neural network is essentially a composition of multiple functions (let's call them $f, g, h, i, j$ for example) so that:
$$y = j(i(h(g(f(x))))$$
You are essentially asking here, can you just do $y = j(x)$ instead of running all those functions in sequence. And the answer is no.