https://rukshanpramoditha.medium.com/why-do-we-set-a-random-state-in-machine-learning-models-bb2dc68d8431