The drawbacks of the supervised learning algorithms as mentioned above has led researchers to devise techniques which enable algorithms to learn meaningful representations of the data from small datasets. Transfer learning, semi-supervised learning, weakly-supervised learning, domain adaptations are all examples of such techniques which do not require a large volume of annotated data for training [1]}, [2]}, [3]}, [4]}. Recently, advances have been made to develop techniques which can learn meaningful representations of the underlying data without human annotations. These techniques fall under the paradigm of unsupervised learning and are termed as self-supervised learning. These techniques consist of two stages- pretext and downstream.
