Course overview
- Study period
- Semester 2, 2025 (28/07/2025 - 22/11/2025)
- Study level
- Undergraduate
- Location
- St Lucia
- Attendance mode
- In Person
- Units
- 2
- Administrative campus
- St Lucia
- Coordinating unit
- Elec Engineering & Comp Science School
Understanding patterns in our environment is an important cognitive ability. The development of recognition and automated algorithms that are able to process copious amounts data without (or with limited) human intervention is critical in replicating this ability in machines. This course will cover the fundamentals of creating computational algorithms and models that are able to recognise and/or analyse patterns within data of various forms. Topics and algorithms will include fractal geometry, classification methods such as random forests, recognition approaches using deep learning and models of the human vision system. Python, the open-source paradigm and state-of-the-art packages like Tensorflow, JAX and PyTorch will be used as a mechanism for students to study patterns in nature and solve problems from various real-worlds data sources, such images, social media and biomedical signals.
The course will be taught via three main modules:
- Patterns in nature – how symmetry and self-similarity leads to the patterns we observe in nature, such as fractals and the known particles of the universe.
- Traditional pattern recognition – how patterns are quantified, measured and identified using features, similarity, information theory, principles of transform domains and decision trees.
- Deep Learning – how the idea of receptive fields, convolutions and attention mechanisms are used to learn appropriate multi-scale, self-adaptive features via neural networks.
In general, students will have opportunities to implement and create pattern recognition and analysis solutions using the algorithms discussed on actual research data from various fields. This will allow them to specialise into areas of image/signal analysis and data science. Guest lecturers and leaders in some of these areas will present some of their work to highlight the societal impact of these algorithms.
Changes since last offering: Minor improvements to teaching materials have been made since the last offering.
Course requirements
Assumed background
This course assumes that students are confident and knowledgeable in Python programming and linear algebra. You will be required to learn and keep up with implementing algorithms in Tensorflow/PyTorch frameworks. A (non-assessed) basic Python practical (without Tensorflow/PyTorch) will be provided in the first weekᅠas a refresher for students.
Students will be required to use version control to manage your code, so two short courses on Git are required to be completed during the course preferably before the report assessment.
Masters Students: Masters students are allowed to enrol in a small number of undergraduate courses in a recent rule change, so you may be able to take COMP3710. Students should consult with an advisor to make sure it will fit within their program(s).
Prerequisites
You'll need to complete the following courses before enrolling in this one:
(MATH1051 or MATH1071) and (CSSE1001 or ENGG1001)
Recommended prerequisites
We recommend completing the following courses before enrolling in this one:
(MATH1052 or MATH1072) and (MATH1061 or MATH1081) and COMP3506
Course contact
Course staff
Lecturer
Timetable
The timetable for this course is available on the UQ Public Timetable.
Additional timetable information
Lectures will also be streamed via ZOOM, recorded and held live on campus simultaneously. Course notes for some modules of the course will also be provided.
Aims and outcomes
The course will provide students with practical experiences in:
- solving pattern recognition problems, especially via deepᅠneural networks
- a deep learning framework, such as Tensorflow, JAX or PyTorch
- algorithmic design incorporating software engineering principles,
- Open source development through creating and/orᅠcontributing to a course run open source project, such as PatternFlow – a pattern recognition and image processing library for deep learning
- mathematical frameworks involved in understanding patterns and principles required for all of the above, such as group theory, fractal geometry and tensor calculus
ᅠ
Assessment
Assessment summary
Category | Assessment task | Weight | Due date |
---|---|---|---|
Computer Code, Practical/ Demonstration |
Fractals
|
10% |
11/08/2025 - 22/08/2025
This course uses Demos that are allocated 3–5-week blocks of scheduled practical sessions in order to complete them with 2 of those weeks allocated to getting marked. Marking is to be done before the end of the final block in the scheduled practical times where possible. |
Computer Code, Practical/ Demonstration |
Pattern Recognition
|
20% |
8/09/2025 - 19/09/2025
This course uses Demos that are allocated 3–5-week blocks of scheduled practical sessions in order to complete them with 2 of those weeks allocated to getting marked. Marking is to be done before the end of the final block in the scheduled practical times where possible. |
Computer Code, Paper/ Report/ Annotation, Project |
Pattern Analysis Project
|
40% |
31/10/2025 4:00 pm
Assessment during scheduled lab session + Submission items This course uses allocated 5-week block of scheduled practical sessions in order to complete the project. |
Examination |
Final Exam
|
30% |
End of Semester Exam Period 8/11/2025 - 22/11/2025 |
A hurdle is an assessment requirement that must be satisfied in order to receive a specific grade for the course. Check the assessment details for more information about hurdle requirements.
Assessment details
Fractals
- In-person
- Mode
- Activity/ Performance, Oral
- Category
- Computer Code, Practical/ Demonstration
- Weight
- 10%
- Due date
11/08/2025 - 22/08/2025
This course uses Demos that are allocated 3–5-week blocks of scheduled practical sessions in order to complete them with 2 of those weeks allocated to getting marked. Marking is to be done before the end of the final block in the scheduled practical times where possible.
- Other conditions
- Student specific.
- Learning outcomes
- L01, L02
Task description
Implement a fractal using a deep learning framework such as Tensorflow, JAX or PyTorch.
Practical sessions in the course are dedicated to run within this period in order for you to complete the tasks for the Demonstration and they are designed to be completed within these allocated sessions.
Students will be asked to complete a Git Introduction Short course and show the relevant course as completed as part of this demo.
Use of AI Tools (Permitted use)
Tasks have been designed to be challenging, authentic and complex. Whilst students may use AI and/or MT technologies, successful completion of assessment in this course will require students to critically engage in specific contexts and tasks for which artificial intelligence will provide only limited support and guidance.
A failure to reference generative AI or MT use may constitute student misconduct under the Student Code of Conduct. To pass this assessment, students will be required to demonstrate detailed comprehension of their written submission independent of AI and MT tools.
Submission guidelines
Lab sheet requirements are demonstrated to the teaching team during your allocated practical session.
Deferral or extension
You cannot defer or apply for an extension for this assessment.
As time is provided within the practical class to complete all work, no extensions is permitted. If there are exceptional circumstances an exemption may be approved and may involve submitting/discussing your work as it stands or involve attending a rescheduled class one week after your original allocated class. Exemptions must be requested as an extension with a note specifying exemption via my.UQ.
Late submission
You will receive a mark of 0 if this assessment is submitted late.
As time is provided within the practical class to complete all work, no late submissions will be accepted and a 100% late penalty applies.
Pattern Recognition
- In-person
- Mode
- Activity/ Performance, Oral
- Category
- Computer Code, Practical/ Demonstration
- Weight
- 20%
- Due date
8/09/2025 - 19/09/2025
This course uses Demos that are allocated 3–5-week blocks of scheduled practical sessions in order to complete them with 2 of those weeks allocated to getting marked. Marking is to be done before the end of the final block in the scheduled practical times where possible.
- Other conditions
- Student specific.
- Learning outcomes
- L02, L03, L04, L05
Task description
Solve a recognition problem for a dataset of your choice. Construct the algorithm, curate the code and document your findings.
Practical sessions in the course are dedicated to run within this period in order for you to complete the tasks for the Demonstration and they are designed to be completed within these allocated sessions.
Students will be asked to complete a Git Advanced Short course and show the relevant course as completed as part of this demo.
Use of AI Tools (Permitted use)
Tasks have been designed to be challenging, authentic and complex. Whilst students may use AI and/or MT technologies, successful completion of assessment in this course will require students to critically engage in specific contexts and tasks for which artificial intelligence will provide only limited support and guidance.
A failure to reference generative AI or MT use may constitute student misconduct under the Student Code of Conduct. To pass this assessment, students will be required to demonstrate detailed comprehension of their written submission independent of AI and MT tools.
Submission guidelines
Lab sheet requirements are demonstrated to the teaching team during your allocated practical session.
Deferral or extension
You cannot defer or apply for an extension for this assessment.
As time is provided within the practical class to complete all work, no extension is permitted. If there are exceptional circumstances an exemption may be approved and may involve submitting/discussing your work as it stands or involve attending a rescheduled class one week after your original allocated class. Exemptions must be requested as an extension with a note specifying exemption via my.UQ.
Late submission
You will receive a mark of 0 if this assessment is submitted late.
As time is provided within the practical class to complete all work, no late submissions will be accepted and a 100% late penalty applies.
Pattern Analysis Project
- Hurdle
- Mode
- Activity/ Performance, Written
- Category
- Computer Code, Paper/ Report/ Annotation, Project
- Weight
- 40%
- Due date
31/10/2025 4:00 pm
Assessment during scheduled lab session + Submission items
This course uses allocated 5-week block of scheduled practical sessions in order to complete the project.
- Other conditions
- Student specific.
- Learning outcomes
- L02, L03, L06, L07, L08
Task description
Implement an image processing, computer vision or pattern recognition solution in Tensorflow, JAX or PyTorch.
Practical sessions in the course are dedicated to run from weeks 9-12 (inclusive) in order for you to complete the tasks for the Demonstration, but may require additional time outside class time for you to complete your report.
You are required to submit Git pull request to the relevant open-source project by the due date.
Use of AI Tools (Permitted use)
Tasks have been designed to be challenging, authentic and complex. Whilst students may use AI and/or MT technologies, successful completion of assessment in this course will require students to critically engage in specific contexts and tasks for which artificial intelligence will provide only limited support and guidance.
A failure to reference generative AI or MT use may constitute student misconduct under the Student Code of Conduct. To pass this assessment, students will be required to demonstrate detailed comprehension of their written submission independent of AI and MT tools.
Hurdle requirements
Hurdle is applicable for achieving each grade and/or passing the course. The specific hurdles are described in the 'Course instance grading details' section.Submission guidelines
This will be a Turn-it-in submission and a pull request to the relevant open source project.
Deferral or extension
You may be able to apply for an extension.
As time is provided within the practical class to complete all work, no extensions are permitted. If there are exceptional circumstances an exemption may be approved and may involve submitting/discussing your work as it stands or at a later time approved and agreed upon with the course coordinator. Exemptions must be requested as an extension with a note specifying exemption via my.UQ.
Late submission
You will receive a mark of 0 if this assessment is submitted late.
As time is provided within the practical class to complete all work, no late submissions will be accepted and a 100% late penalty applies.
Final Exam
- Hurdle
- Identity Verified
- In-person
- Mode
- Written
- Category
- Examination
- Weight
- 30%
- Due date
End of Semester Exam Period
8/11/2025 - 22/11/2025
- Other conditions
- Secure.
- Learning outcomes
- L01, L02, L03, L04, L05, L06, L07, L08
Task description
A 120-minute examination will be held during the examination period.
The exam will cover content from the whole semester. Note that exam hurdles will apply for higher grades.
Hurdle requirements
See associated grade hurdlesExam details
Planning time | 10 minutes |
---|---|
Duration | 120 minutes |
Calculator options | (In person) Casio FX82 series only or UQ approved and labelled calculator |
Open/closed book | Closed book examination - no written materials permitted |
Exam platform | Paper based |
Invigilation | Invigilated in person |
Submission guidelines
Deferral or extension
You may be able to defer this exam.
Course grading
Full criteria for each grade is available in the Assessment Procedure.
Grade | Cut off Percent | Description |
---|---|---|
1 (Low Fail) | 0 - 19 |
Absence of evidence of achievement of course learning outcomes. Course grade description: A Grade of 1 will be awarded for an overall mark below 20%. |
2 (Fail) | 20 - 46 |
Minimal evidence of achievement of course learning outcomes. Course grade description: A Grade of 2 will be awarded for an overall mark below 45% but greater than or equal to 20%. |
3 (Marginal Fail) | 47 - 49 |
Demonstrated evidence of developing achievement of course learning outcomes Course grade description: A Grade of 3 will be awarded for an overall mark below 50% but greater than or equal to 47%, while also not meeting the requirements for higher grades. |
4 (Pass) | 50 - 64 |
Demonstrated evidence of functional achievement of course learning outcomes. Course grade description: A Grade of 4 will be awarded for: - an overall mark below 65% but greater than or equal to 50% - a mark of at least 40% on the project assessment - a mark of at least 40% on the final exam |
5 (Credit) | 65 - 74 |
Demonstrated evidence of proficient achievement of course learning outcomes. Course grade description: A Grade of 5 will be awarded for: - achieving all the hurdles for a grade of 4 - an overall mark below 75% but greater than or equal to 65% - passed the project assessment - passed the final exam |
6 (Distinction) | 75 - 84 |
Demonstrated evidence of advanced achievement of course learning outcomes. Course grade description: A Grade of 6 will be awarded for: - achieving all the hurdles for a grade of 5 - an overall mark below 85% but greater than or equal to 75% - a mark of at least 60% on the project assessment |
7 (High Distinction) | 85 - 100 |
Demonstrated evidence of exceptional achievement of course learning outcomes. Course grade description: A Grade of 7 will be awarded for: - achieving all the hurdles for a grade of 6 - an overall mark of 85% or greater - a mark of at least 80% on the project assessment |
Additional course grading information
Notes that 'passing' assessments is defined as obtaining 50% or more on that assessment. Marks will be rounded up for computing the grade hurdles and the final grade.
Supplementary assessment
Supplementary assessment is available for this course.
Additional assessment information
Having Trouble?
If you are having difficulties with any aspect of the course material you should seek help. Speak to the course teaching staff.
If external circumstances are affecting your ability to work on the course, you should seek help as soon as possible. The University and UQ Union have organisations and staff who are able to help, for example, UQ Student Services are able to help with study and exam skills, tertiary learning skills, writing skills, financial assistance, personal issues, and disability services (among other things).
Complaints and criticisms should be directed in the first instance to the course coordinator. If you are not satisfied with the outcome, you may bring the matter to the attention of the School of EECS Director of Teaching and Learning.
Learning resources
You'll need the following resources to successfully complete the course. We've indicated below if you need a personal copy of the reading materials or your own item.
Library resources
Find the required and recommended resources for this course on the UQ Library website.
Additional learning resources information
Dr Chandra will provide additional lecture notes on Blackboard for all modules of the course.
Watch the Pattern Analysis YouTubeᅠPlaylist of the covered topics created for this course.
Learning activities
The learning activities for this course are outlined below. Learn more about the learning outcomes that apply to this course.
Filter activity type by
Please select
Learning period | Activity type | Topic |
---|---|---|
Multiple weeks |
Lecture |
Patterns and Symmetry Lecture series on how symmetry and self-similarity leads to the patterns we observe in nature, such as fractals and the known particles of the universe. Learning outcomes: L01, L02 |
Applied Class |
Theoretical Problems Understanding the theoretical aspects of pattern recognition. |
|
Practical |
Practicals Implement algorithms in Tensorflow/JAX/PyTorch. |
|
Lecture |
Traditional Pattern Recognition Lecture series on how patterns are quantified, measured and identified using features, similarity, information theory, principles of transform domains and decision trees. Learning outcomes: L03, L04, L05 |
|
Lecture |
Deep Learning Lecture series on how the idea of receptive fields, convolutions and attention are used to learn appropriate multi-scale, self-adaptive features via neural networks. Learning outcomes: L05, L06, L07 |
Policies and procedures
University policies and procedures apply to all aspects of student life. As a UQ student, you must comply with University-wide and program-specific requirements, including the:
- Student Code of Conduct Policy
- Student Integrity and Misconduct Policy and Procedure
- Assessment Procedure
- Examinations Procedure
- Reasonable Adjustments for Students Policy and Procedure
Learn more about UQ policies on my.UQ and the Policy and Procedure Library.
School guidelines
Your school has additional guidelines you'll need to follow for this course: