We want to build an image classifier that should classify an image into one of the ~15 classes. We do have a large labelled training corpus. So, we can go in for training a deep neural network using Caffe or some other deep learning library.
Another option we’re exploring is to see if there is any openly available pre-existing feature extraction model to extract features from a general image (such as a Autoencoder trained against a large corpus of images). By doing so, we would be able to do dimensionality reduction and this would enable us to use simpler classification models with lesser training data for training, due to the lower number of features (curse of dimensionality).
The only drawback that we see is that if the probability distribution of the data varies significantly between the dataset used for training the autoencoder/feature extractors vs the dataset that we would use for our supervised learning problem, the overall performance may not be so good. On the other hand, the advantage we get is that we won't have to train a complex deep neural network. With feature extraction, we can do our remaining job with an ordinary classification algorithm such as random forest/etc.
So, my question essentially is: has someone already trained (and made available for reuse) a model that extracts features for a given image?