TMachine learning (ML) is a branch of artificial intelligence (AI) and computer sciences which use data to develop algorithms and models to imitate human learning and improve the accuracy. This course provides an overview to key concepts and main algorithms of ML, including data pre-processing, feature engineering, unsupervised and supervised learning. Emerging topics of explainable AI and ethical AI will also be introduced. The course is suitable for second- or third-year students who are interested in developing data analytics and machine learning skills. It will equip students with essential machine learning skills and allow them exploring a new career or research area in the future. Practical examples will be used to demonstrate the concept, algorithms, and real-world applications. Students are required to have some experience with python programming.