https://medium.com/@monocosmo77/how-noise-contrastive-estimation-works-part5-machine-learning-future-38c3f0116bc2