Latest Module Specifications
Current Academic Year 2025 - 2026
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Description This module will provide students with fundamental and advanced skills required for data analysis and machine learning. The module will cover a large variety of machine learning algorithms including deep learning techniques. It is focused on providing students with a strong theoretical foundation, along with the ability to make practical use of the advanced techniques in the field. The Python programming language will be used for demonstrating the use of various techniques throughout the module, giving students practical tools for solving relatively sophisticated and broadly-defined real world problems in a well-established and widely-used programming environment. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Learning Outcomes 1. describe supervised machine learning theory, including problem types, best practices for data preparation, model selection, overfitting and underfitting, and bias-variance tradeoff 2. apply fundamental and advanced classification and regression algorithms 3. perform various types of generic unsupervised data analytics 4. describe the principles of modern representation learning and deep learning techniques and evaluate the merits of several state-of-the-art models 5. apply a variety of deep learning techniques using the artificial neural networks architectures 6. demonstrate a critical appreciation of available software packages for data analysis 7. demonstrate the ability to implement a predictive analytics pipeline | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
All module information is indicative and subject to change. For further information,students are advised to refer to the University's Marks and Standards and Programme Specific Regulations at: http://www.dcu.ie/registry/examinations/index.shtml |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Indicative Content and Learning Activities
Supervised Machine Learning Principles Overview and objectives of supervised learning. Introduction to standard notation and conventions, problem types (regression, classification, structured prediction), training and tests sets, black box learning principles, training error, test error, generalization error, and out-of-sample error. Discussion of bias-variance tradeoff, overfitting and underfitting, the no free lunch theorem, model selection, cross-validation, data hygiene, and data snooping. Supervised Machine Learning Algorithms Discussion of several important classes of machine learning algorithms including linear regression, decision trees, ensemble methods, logistic regression, support vector machines, and a range of neural network types. Algorithm for optimizing loss functions (gradient descent and stochastic gradient descent). Types of loss functions (convex and non-convex). Kernel methods. Representation Learning and Deep Learning Principles of representation learning. Introduction to multi-layer perceptrons, stacked autoencoders, convolutional neural networks, and recurrent neural networks. Practical optimization methods, GPU-based optimization, and software packages. Illustration of several real-world applications (natural language processing, image classification, speech recognition, information retrieval, recommender systems). Comparative discussion of several industry standard technologies (Tensorflow, Caffe, Torch). Artificial Neural Networks Learn about the concept of artificial neural networks and understand the underlying architectures of neural network algorithms. Understand the idea of input, hidden and output layers of a neural network. Learn about Convolutional Neural Networks (CNN) and Recurrent Neural Networks (RNN). Apply different algorithms for real-world data problems solving. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Indicative Reading List Books:
Articles: None | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Other Resources
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||