Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is this image too complex for a shallow NN classifier?

I am trying to classify a series of images like this one, with each class of comprising images taken from similar cellular structure:

enter image description here

I've built a simple network in Keras to do this, structured as:

1000 - 10

The network unaltered achieves very high (>90%) accuracy on MNIST classification, but almost never higher than 5% on these types of images. Is this because they are too complex? My next approach would be to try stacked deep autoencoders.

like image 842
erythraios Avatar asked Apr 17 '16 01:04

erythraios


People also ask

What is the process of improving the accuracy of a neural network called?

The process of improving the accuracy of a neural network is called microstructure.

What is the best neural network model for temporal data?

1 Answer. The correct answer to the question “What is the best Neural Network model for temporal data” is, option (1). Recurrent Neural Network. And all the other Neural Network suits other use cases.

What is a shallow neural networks?

The above network has an input layer, an output layer and one hidden layer. An ANN with only one hidden layer is known as a Shallow Neural Network. The above network has only one hidden layer and it is, therefore, an example of a shallow neural network.

Why do we need to resize images in CNN?

Since neural networks receive inputs of the same size, all images need to be resized to a fixed size before inputting them to the CNN [14]. The larger the fixed size, the less shrinking required. Less shrinking means less deformation of features and patterns inside the image.


1 Answers

Seriously - I don't expect any nonconvolutional model to work well on this type of data.

  1. A nonconv net for MNIST works well because the data is well preprocessed (it is centered in the middle and resized to certain size). Your images are not.

  2. You may notice (on your pictures) that certain motifs reoccure - like this darker dots - with different positions and sizes - if you don't use convolutional model you will not capture that efficiently (e.g. you will have to recognize a dark dot moved a little bit in the image as a completely different object).

Because of this I think that you should try convolutional MNIST model instead classic one or simply try to design your own.

like image 95
Marcin Możejko Avatar answered Nov 30 '22 23:11

Marcin Możejko