# How to use a deep learning algorithm to cluster image *styles* in an unlabeled data set?

I have a hard problem, and I'd be interested in hearing people's thoughts. I have a set of images depicting a large variety of phenomena, but only a few styles. The images are already labeled by phenomenon, but not by style. The distinction between image styles is largely based on what technology was used to produce the images. We want to use a clustering algorithm to separate the different styles.

For an analogous problem, imagine that you had a very large dataset of paintings, but with many kinds of different subjects and only a few styles. Further imagine that you don't care what the subject of the painting is, only about its stylistic features (e.g. watercolor vs oil vs acrylic, realistic vs photorealistic vs impressionist vs expressionist). How could you try to go about "telling" a deep learning algorithm to emphasize these stylistic features over what the subject of the painting is, without using any labels?

You can use a pretrained model, extract features, and try to cluster images based on these features. The success will be contingent on the "style" you want to distinguish (and if the derived features represent the different styles). I had a similar problem and used Kerans and VGG16 features to cluster images using KNN. Find my Python code on Github.