CMT316: Applications of Machine Learning: Natural Language Processing/Computer Vision
School | Cardiff School of Computer Science and Informatics |
Department Code | COMSC |
Module Code | CMT316 |
External Subject Code | 100992 |
Number of Credits | 20 |
Level | L7 |
Language of Delivery | English |
Module Leader | Professor Yukun Lai |
Semester | Spring Semester |
Academic Year | 2025/6 |
Outline Description of Module
The field of machine learning is concerned with the study of methods for developing computer programs that are able to learn from examples or from prior experience. Machine learning lies at the basis of many of the recent successes in artificial intelligence, with applications ranging from self-driving cars to digital assistants and search engines. This module will serve as a general introduction to machine learning, covering both traditional methods such as decision trees and support vector machines and more recent neural network based techniques. Although the module will also cover the core principles behind these methods, the main focus will be on application oriented aspects of machine learning, such as how to implement key machine learning techniques, how to choose which technique to use in a given situation, how to pre-process data, and how to evaluate the performance of a machine learning system. In addition to these technical topics, the module will also cover some important ethical considerations, including how the choice of training data can introduce unwanted biases in real-world applications. Finally, the module will include in-depth content on two emerging AI topics: Natural Language Processing (NLP) and Computer Vision (CV). Students will have the option to choose between one of these two topics as specialisation.
On completion of the module a student should be able to
- Implement and evaluate machine learning methods to solve a given task
- Explain the fundamental principles underlying common machine learning methods
- Choose an appropriate machine learning method and data pre-processing strategy to address the needs of a given application setting
- Reflect on the importance of data representation for the success of machine learning methods
- Critically appraise the ethical implications and societal risks associated with the deployment of machine learning methods
- Explain the nature, strengths and limitations of an implemented machine learning technique to an audience of non-specialists
- Explain the fundamentals and modern principles of natural language processing or computer vision
How the module will be delivered
The module will be delivered through a combination of lectures, supervised lab sessions and tutorials as appropriate. You will be expected to attend all timetabled sessions and engage with online material. You will be guided through learning activities appropriate to your module, which may include: - on-line resources that you work through at your own pace (e.g. videos, web resources, e-books, quizzes), - on-line interactive sessions to work with other students and staff (e.g. discussions, live streaming of presentations, live-coding, team meetings) - face to face sessions (e.g. help classes, feedback sessions)
Skills that will be practised and developed
Implementing machine learning tools, taking advantage of existing libraries where appropriate
Assessing the potential and limitations of machine learning technology
Presenting a technical subject matter to an audience of non-specialists
Critically thinking about which tools are appropriate in what contexts, and what are the possible ethical, social or economical implications
Formalising real-world problems in a rigorous way
Implement state-of-the-art models for specific applications (NLP or CV)
How the module will be assessed
A blend of assessment types which may include coursework and portfolio assessments, class tests, and/or formal examinations
Students will be provided with reassessment opportunities in line with University regulations.
Assessment Breakdown
Type | % | Title | Duration(hrs) |
---|---|---|---|
Written Assessment | 50 | Exercises Involving Implementation And Evaluation Using Machine Learning Techniques | N/A |
Written Assessment | 50 | Machine Learning Project | N/A |
Syllabus content
Pre-processing datasets: feature selection, dimensionality reduction, eliminating bias, dealing with class imbalance and missing data
Evaluating machine learning methods: designing experiments, cross-validation, statistical testing, evaluation metrics (e.g. accuracy, precision, recall, F1, AUC, NDCG, MAP)
Linear machine learning models and theory, ensemble learning
Introduction to neural networks, activation functions, stochastic gradient descent, loss functions, regularization
Standard neural network architectures (e.g. autoencoders, convolutional networks, recurrent neural networks, transformers)
Applications of neural networks to selected application domains (i.e. NLP or CV)