https://medium.com/@monocosmo77/merging-mutual-information-theory-into-machine-learning-research-part1-eec9f269d0c1