I'm a beginner in the world of machine learning, and my goal is to produce a mobile app that can recognize, label and group your gallery picture to make it more organized. I started by digging into CNN, since this seems to be the more efficient approach to image recognition and labelling. Since my goal is to be able to classify 'any' picture that the user has in its gallery, I've decided that a good starting point would be to use the Keras pre-trained CNN's, e.g. VGG16 or ResNet50.
The problem is that this models don't classify the whole picture, it just returns labels for single objects that are contained in the picture, e.g. if I upload a picture of a birthday party the CNN top 3 labels are:
How can I merge this specific labels into a more general one, such as 'Birthday party'? Since all the labels from ImageNet are known, can I use some NLP technique to produce this?
Thanks for the help!