Machine Learning: A Comprehensive Overview