Submitted by 1kay7 t3_zqpkc0 in deeplearning
I have a big dataset of images of food. I would like to able to train a model that predict if a new (unseen) image is 'food' or 'not food'. Note that the model can only be trained on the available dataset of food images.
What approach would you guys recommend for this task? I would like to use Tensorflow Keras but this is not mandatory. I've heard that an autoencoder might be a good option?
PredictorX1 t1_j0z7qtr wrote
This is known as one-class learning or one-class classification. You could try obtaining "background class" images (images similar to yours in resolution, overall brightness, ...) and training an ordinary classifier on the combination of the two. Obviously, the background class images cannot contain food, but searches for things unrelated to food ("nail", "dancer", "floor", "statue", ...) followed up by quick visual inspection should serve.