Machine Learning and Pattern Recognition
This course covers the design, analysis, and methodology of algorithms used to recognize patterns in real-world data: images, audio, video, text, speech, financial data, biosensing, and medical data. It is the foundational course in Artificial Intelligence, which has reshaped how the world operates, from online search (ChatGPT) and voice recognition ("Hey Google!") to facial recognition (iPhone screen lock) and medical diagnosis (DeepMind).
Machine Learning has become one of the most interdisciplinary fields in engineering, with applications spanning physics to psychology, medicine to meteorology, and politics to philosophy. Since the field encompasses hundreds of algorithms and mathematical concepts, this course does not attempt an overview of each. Instead, it builds a strong fundamental grounding in core topics including feature clustering, dimensionality reduction, classification, and neural networks, equipping students to undertake real-world projects and build end-to-end applications.
Course Overview
This course introduces the foundations of Machine Learning and Pattern Recognition by equipping students with the concepts and techniques required to analyse real-world datasets and build intelligent systems. Students explore feature extraction, preprocessing, clustering, dimensionality reduction, classification, regression, neural networks, and deep learning before applying these techniques to practical projects involving computer vision, natural language processing, finance, biology, and robotics.
Learning Objectives
By the end of this course, students will be able to:
- Understand the basic concepts of Machine Learning and connect the relationships between core concepts.
- Apply machine learning techniques to solve real-world problems beyond classroom examples.
- Analyse real-world problems to identify opportunities where machine learning can be applied.
- Synthesise knowledge gained through hands-on experience to create working machine learning prototypes.
Learning Outcomes
Upon successful completion of this course, students will be able to:
- Engage in hands-on analysis of real-world data from images, audio, text, and other sources to identify statistical patterns.
- Apply pattern recognition techniques for feature extraction, preprocessing, clustering, and classification.
- Identify real-world problems that can be addressed using machine learning methods.
- Build real-world machine learning applications using statistical techniques.
- Evaluate the effectiveness and robustness of machine learning solutions.
- Develop a prototype that applies machine learning to solve a real-world problem.
- Explain the characteristics and effectiveness of the developed prototype compared to existing solutions.
Recommended Textbooks
- Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow (2nd Edition) – Aurélien Géron
- Machine Learning Course Videos – Andrew Ng
Additional Reading
- Pattern Classification – Richard O. Duda, Peter E. Hart, and David G. Stork
- Pattern Recognition and Machine Learning – Christopher M. Bishop
- Curated online machine learning resources
Assessments and Grading
| Assessment Component | Weightage |
|---|---|
|
Assessment Component Quiz 1 |
Weightage 10% |
|
Assessment Component Midterm Project Evaluation |
Weightage 20% |
|
Assessment Component Quiz 2 |
Weightage 10% |
|
Assessment Component Quiz 3 |
Weightage 10% |
|
Assessment Component Final Project Evaluation |
Weightage 30% |
|
Assessment Component Lab Evaluation |
Weightage 15% |
|
Assessment Component Attendance |
Weightage 5% |
