https://medium.com/@monocosmo77/new-developments-in-representation-learning-part6-machine-learning-2023-880722de0f5c