https://medium.com/@monocosmo77/how-direct-preference-optimization-works-part8-machine-learning-2024-0aa58da6cdc7