This graduate course concentrates on the application of state-of-the-art machine learning (ML) algorithms for solving real-world problems. This course starts with reviewing the Python programming language and its important related packages. The covered topics include data preparation, training, evaluation, various evaluation metrics, supervised learning (regression, classification, neural networks, deep learning, convolutional neural networks, and recurrent neural networks), basics of unsupervised and reinforcement learning, and recommender systems. This course has practical assignments and term project.