This course will serve as a comprehensive introduction to various topics in machine learning. At the end of the course the students should be able to design and implement machine learning solutions to classification, regression, and clustering problems; and be able to evaluate and interpret the results of the algorithms.