2
$\begingroup$

Can you think of any domain of application, other than 2D images, where it could make sense to use max pooling or convolution?

Because the ONNX format allows for non 2D inputs. On the operators page (https://github.com/onnx/onnx/blob/master/docs/Operators.md#MaxPool) they say

dimensions for image case are (N x C x H x W), where N is the batch size, C is the number of channels, and H and W are the height and the width of the data. For non image case, the dimensions are in the form of (N x C x D1 x D2 ... Dn)

And I did a search, and couldn't find an application where non images.

$\endgroup$
  • 2
    $\begingroup$ You can use a conv2D on text/tabular data as well! $\endgroup$ – Aditya Aug 26 '19 at 13:41
2
$\begingroup$

As @Aditya mentioned, we can use 1D Convolutions and Max Pooling for text classification as well. It has been used in sentiment analysis and gives quite good performance too. See here and here.

Another useful application is in signal processing. Classifying data from sensors of all kinds is a task for CNNs.

You can develop a Human Activity Recognizer using 1D Convolutions. See here.

But, why not use an RNN instead of a CNN?

RNNs require a higher level of data preprocessing and have low inference speed if you are running them on a smartphone ( or any other IoT device ). CNNs are pretty fast in this case.

Audio classification using MFCC is performed using 1D Convolutional NN. See here.

2D Convolutions are mainly used in image concerned ML tasks. They could extract spatial features from the 2D arrays ( an image ). In some cases, you can use them on 2D data which is not an image.

|improve this answer|||||
$\endgroup$
1
$\begingroup$

Can you think of any domain of application, other than 2D images, where it could make sense to use max pooling or convolution?

Convolutions and max pooling are both used in other areas. Here you can see both being used for text: Text Classification using CNN

And they do not even have to be 2-dimensional. Here is another example with 1-dimensional audio data: Keras Sequential Conv1D Model Classification

Convolutions and max pooling are used to build models with the assumption that features close to each other will have a stronger relation to each other. This is independent of the domain, so it does not matter if they are pixels in an image or words in a text.

|improve this answer|||||
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.