4

I'm seeking guidence here. Can I use Multi Layers Perceptron (MLP), e.g regular flat neural networks, for image classification?

Will they perform better than Fisher Faces?

Is it difficult to do image classification with a MLP network?

It's on basic level like classifying objects and not detailed structures and patterns.

Important to me is that the MLP need to be trained with pictures that can have noise in background and different light shadows.

Hendy Irawan
  • 103
  • 4
euraad
  • 143
  • 1
  • 8
  • Hi @Daniel, welcome to Artificial Intelligence Stack Exchange, Please [see the tour](https://ai.stackexchange.com/tour) and look around to see how this site works. For your questions, could you please ask one question per post? it will give more focus on each post – malioboro Apr 20 '20 at 02:37
  • I highly recommend for any image classification you look into convolutional neural networks. These should preform much much better than a standard MLP for image classification. Yes while you can do it with MLP, you probably shouldn't. The main issue comes from the input layer, feeding in each pixel as a giant 1D vector might give you too many parameters to train and an overall inferior model... – PMaynard Apr 20 '20 at 05:11
  • @PMaynard Thank you. Now I know that MLP is bad practice in image classification. Perhaps I should use Fisherfaces instead? – euraad Apr 21 '20 at 11:12
  • No use a convolutional neural network, Unless this is an assignment or task that requires it you should almost undoubtedly use a convolutional neural network. Generally for image classification I would say, CNN = Great, MLP = poor/okay, Fisher Faces = Bad. – PMaynard Apr 22 '20 at 01:30

3 Answers3

2

Multi Layers Perceptron(MLP) can be used for image classification, but it has a lot of deficiency than Convolutional Neural network(CNN). But if you compare MLP and Fisher Faces , the better one is MLP, because Fisher Faces will be increasingly difficult if adding more individuals or classes. You can make a simple MLP model, because it just has 3 layers which are an input layer, hidden layer and output layer, here a source code that you can try:

if you make a model, it will be based on training data, I think if make data trained composed based on noise in background and different light shadows on your image I think it will have a better performance, but remember if you are using MLP for image classification it can just predict an image on one spot, for example: "if you train a model with the object in the middle of an image, your model can not predict it when the image is moved to the different spot".

here is pdf to see Fisher Faces performance:

bit_scientist
  • 241
  • 1
  • 4
  • 15
1

let me try to answer your question. yes, you can use multilayer perceptron to image classification. Multilayer Perceptron is topology the most common of ANN, where perceptrons are connected to form layers. An MLP has input layer, at least one hidden layer, and output layer. Multilayer perceptron is one method many used. one of them, regards research on classification human skin based on its color, Khan (Khan, Hanbury, Stöttinger, & Bais, 2012) compare the nine methods for classifications include BayesNet, J48, Multilayer Perceptron (MLP), Naive Bayes, Random Forest, and SVM. The results show that the Multilayer Perceptron (MLP) produce the highest performance after Random Forest and J48.

1

Depends, if the faces are centered and have the same background yes. You also need a lot of data.

If they are daily life images, then no. You will have very bad generalization.

FourierFlux
  • 783
  • 1
  • 4
  • 14