Course Title: Computational Machine Learning
Part A: Course Overview
Course Title: Computational Machine Learning
Credit Points: 12.00
Please note that this course may have compulsory in-person attendance requirements for some teaching activities.
To participate in any RMIT course in-person activities or assessment, you will need to comply with RMIT vaccination requirements which are applicable during the duration of the course. This RMIT requirement includes being vaccinated against COVID-19 or holding a valid medical exemption.
Please read this RMIT Enrolment Procedure as it has important information regarding COVID vaccination and your study at RMIT: https://policies.rmit.edu.au/document/view.php?id=209.
Please read the Student website for additional requirements of in-person attendance: https://www.rmit.edu.au/covid/coming-to-campus
Please check your Canvas course shell closer to when the course starts to see if this course requires mandatory in-person attendance. The delivery method of the course might have to change quickly in response to changes in the local state/national directive regarding in-person course attendance.
171H School of Science
Sem 1 2020,
Sem 1 2021
175H Computing Technologies
|Sem 1 2022|
Course Coordinator: Dr Ruwan Tennakoon
Course Coordinator Phone: +61 3 9925 3306
Course Coordinator Email: firstname.lastname@example.org
Course Coordinator Location: 14.11.03
Course Coordinator Availability: By appointment, by email
Pre-requisite Courses and Assumed Knowledge and Capabilities
Enforced Pre-requisite: Algorithms & Analysis COSC1285
Computational Machine Learning involves automatically identifying patterns in data to suggest future predictions about a task: e.g., predicting future house prices from historical data and trends. The explosion of data in different fields, such as health and finance, and in sources such as social media, has made Machine Learning an increasingly core Computer Science competency, with many companies investing in data analytics and the world’s major IT companies (such as Google, Facebook, and others) establishing Machine Learning labs.
This course will introduce the basic Machine Learning concepts, covering supervised and unsupervised techniques, evaluation, as well as specific approaches such as deep neural networks. You will learn how to apply such techniques to a range of problems, using open source Machine Learning toolkits, and learn how to analyse outputs from the applications. You will perform assignments that involve a variety of real world datasets from a variety of domains.
Objectives/Learning Outcomes/Capability Development
This course contributes to the following Program Learning Outcomes for MC267 Master of Data Science
Enabling Knowledge (PLO1)
You will gain skills as you apply knowledge with creativity and initiative to new situations. In doing so, you will:
- Demonstrate mastery of a body of knowledge that includes recent developments in computer science and information technology;
- Understand and use appropriate and relevant, fundamental and applied mathematical and statistical knowledge, methodologies and modern computational tools;
- Recognise and use research principles and methods applicable to data science.
Critical Analysis (PLO2)
You will learn to accurately and objectively examine, and critically investigate computer science, information technology (IT) and statistical concepts, evidence, theories or situations, in particular to:
- Analyse and model complex requirements and constraints for the purpose of designing and implementing software artefacts and IT systems;
- Evaluate and compare designs of software artefacts and IT systems on the basis of organisational and user requirements;
- Bring together and flexibly apply knowledge to characterise, analyse and solve a wide range of statistical problems.
Problem Solving (PLO3)
Your capability to analyse complex problems and synthesise suitable solutions will be extended as you learn to:
- Design and implement software solutions that accommodate specified requirements and constraints, based on analysis or modelling or requirements specification;
- Apply an understanding of the balance between the complexity / accuracy of the mathematical / statistical models used and the timeliness of the delivery of the solution.
You will learn to communicate effectively with a variety of audiences through a range of modes and media, in particular to:
- Interpret abstract theoretical propositions, choose methodologies, justify conclusions and defend professional decisions to both IT and non-IT personnel via technical reports of professional standard and technical presentations.
You will be required to accept responsibility for your own learning and make informed decisions about judging and adopting appropriate behaviour in professional and social situations. This includes accepting the responsibility for independent life-long learning and a high level of accountability. Specifically, you will learn to:
- Effectively apply relevant standards, ethical considerations, and an understanding of legal and privacy issues to designing software applications and IT systems;
- Contextualise outputs where data are drawn from diverse and evolving social, political and cultural dimensions;
- Reflect on experience and improve your own future practice;
- Locate and use data and information and evaluate its quality with respect to its authority and relevance.
On completion of this course you should be able to:
- understand the fundamental concepts and algorithms of machine learning and applications
- understand a range of machine learning methods and the kinds of problem to which they are suited
- set up a machine learning configuration, including processing data and performing feature engineering, for a range of applications
- apply machine learning software and toolkits for diverse applications
- understand major application areas of machine learning
- understand the ethical considerations involved in the application of machine learning.
Overview of Learning Activities
The learning activities included in this course are:
- key concepts will be explained in pre-recorded lectures, classes or online, where syllabus material will be presented and the subject matter will be illustrated with demonstrations and examples;
- tutorials and/or labs and/or group discussions (including online forums) focused on projects and problem solving will provide practice in the application of theory and procedures, allow exploration of concepts with teaching staff and other students, and give feedback on your progress and understanding;
- assignments, as described in Overview of Assessment (below), requiring an integrated understanding of the subject matter; and
- private study, working through the course as presented in classes and learning materials, and gaining practice at solving conceptual and technical problems.
Teacher Guided Hours (face to face): 48 per semester
Teacher-guided learning will include pre-recorded lectures to present main concepts, small-class tutorials to reinforce those concepts, and supervised computer laboratory sessions to support programming practice under guidance from an instructor.
Learner Directed Hours: 72 per semester
Learner-directed hours include time spent reading and studying lecture notes and prescribed text in order to better understand the concepts; working through examples that illustrate those concepts; and performing exercises and assignments designed by the teachers to reinforce concepts and develop practical skills across a variety of problem types.
Overview of Learning Resources
You are encouraged to bring your laptops and use the freely available software to conduct the laboratories.
You will make extensive use of computer laboratories and relevant software provided by the School. You will be able to access course information and learning materials through MyRMIT and may be provided with copies of additional materials in class or via email. Lists of relevant reference texts, resources in the library and freely accessible Internet sites will be provided.
Overview of Assessment
Overview of Assessment
The assessment for this course comprises both practical and theoretical work involving the development and analysis of machine learning systems, machine learned modules, and machine learning tools.
Across all assessment tasks you will be required to demonstrate your critical analysis and problem solving skills. While this course will require software development and implementation to use machine learning software and train models, the focus of the assessment is on analysis and problem solving.
This course has no hurdle requirements.
Assessment Task 1: Practical & Written Assignment (individual)
Description: This assignment involves preparation and analysis of a dataset representing a specific machine learning challenge, along with the application of one or more techniques of a certain class of machine learning techniques (e.g., supervised technique).
This assessment task supports CLOs 1, 3, 4
Assessment Task 2: Practical &Written Assignment (group/individual)
Weight: 50 %
This assignment is an extended project of an in-depth investigation and analysis of a machine learning problem using a different machine learning challenge from Assignment 1. Students may be able to propose and negotiate their own project and machine learning challenge. This task may be completed individually or in groups.
This assessment task supports CLOs 1, 3, 4, 6
Assessment Task 3: Virtual Presentation & Interview (individual)
Weight: 20 %
Students are to conduct a virtual presentation presenting a brief summary and critical analysis of the project work that is done in Assessment Task 2, as well as improvements/extensions that could be made for his/her own work based on a literature review of the state-of-the-art approaches. Upon completion of the presentation, students are required to answer a number of follow-up questions related to their project work and studies.
This assessment task supports CLOs 1, 2, 5, 6