https://medium.com/@monocosmo77/how-probabilistic-contrastive-learning-works-part1-statistical-machine-learning-202-a55abceb65e0