In-depth study of Machine Learning Algorithms