Solved – the difference between Zero Shot Learning and clustering

clusteringmachine learningneural networks

I recently found out about ZSL and to me, it is very similar to a clustering algorithm with one difference: a clustering algorithm such as DBSCAN doesn't need to have a pre-defined group of feature vectors and we just give it the data but in ZSL we need to feed the data to a ZSL and then map and cluster the output feature vector with other feature vectors that we have from before.

Maybe I am wrong but what is the difference between ZSL and clustering and what are its advantages and disadvantages?

Best Answer

Clustering is unsupervised and as such does not use any labels.

Zero-shot learning is a form of learning which does not conform to standard supervised framework: the classes are not assumed to be known beforehand (you evaluate on unseen classes), but it does assume some relationships between classes (for example some methods assume encodings for classes, then you can think that's something like embeddings for classes, for example you use word embeddings for some words instead of one-hot encoded matrix).

The main advantage of this approach lies in the fact that it is able to leverage structure that exists on classes - this enables these methods to work where standard supervised learning methods fail - handling unseen/very small classes is a typical example.