What is the main purpose of convolutional neural networks?

The main features of the convolutional network are the sharing of convolution kernel parameters and pooling operations.

The parameters are shared because structured data such as pictures may have the same characteristics in different areas, so the convolution kernel can be used as the detector, and each layer detects different Features, but the kernel of the same layer looks for the same features in different places in the image. Then the feature combination of the bottom layer is passed to the subsequent layer, and the features are integrated in the latter layer (generally deep networks cannot tell what features are obtained by the subsequent network layers).

The main reason for pooling is that in some tasks, downsampling does not affect the results. Therefore, the amount of parameters can be greatly reduced. In addition, after pooling, more information can be contained in an area of ??the same size as before.

In summary, all data with such characteristics can be processed by convolutional networks. There are convolutions for video, and convolutions for text processing (of course, since these two are sequence signals, they are naturally more suitable for lstm processing)

In addition, the convolutional network is just a tool, it depends on how you do it Using it, you can arbitrarily combine the order of pooling and convolution if necessary, and you can change the network structure to achieve your desired purposes without being too bound by the established framework.