https://medium.com/@monocosmo77/state-of-supervised-contrastive-learning-part1-artificial-intelligence-f6b540e99ee6