Skip to menu Skip to content Skip to footer
Course profile

Natural Language Processing (COMP4703)

Study period
Sem 2 2025
Location
St Lucia
Attendance mode
In Person

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

The Internet has transformed much of the world's knowledge into unstructured text, and the amount of data being made available every day continues to grow exponentially. Developing new techniques to turn this data into knowledge is crucial in the age of information. Processing natural language text is both challenging and rewarding. Learning how to work with web-scale data collections is a critical skill to develop in Computer Science, and understanding the computational methods currently available to achieve scalable data processing will position students to be innovators in AI technologies in their future careers. This course will explore state-of-the-art techniques in natural language understanding and language generation. Students will develop an understanding of the key algorithms used in natural language processing, and be exposed to a diverse range of applications including machine translation, text mining, sentiment analysis, and question answering. Python will be used extensively in this course, and so students are expected to have an intermediate level of knowledge with Python programming.

Changes to this offering include improvements to weekly lectures and addition of a new lecture in week 12.

Course requirements

Assumed background

Intermediate programming ability in Python

Some exposure to linear algebra and calculus

Some exposure to machine learning

Prerequisites

You'll need to complete the following courses before enrolling in this one:

MATH1061 and (STAT1201 or STAT1301 or STAT2203 or STAT2003 or STAT2201) and (CSSE1001 or ENGG1001)

Recommended prerequisites

We recommend completing the following courses before enrolling in this one:

(COMP3710 or COMP4702) and (MATH1051 OR MATH1071)

Course contact

Course staff

Lecturer

Professor Shane Culpepper

Timetable

The timetable for this course is available on the UQ Public Timetable.

Additional timetable information

 

Aims and outcomes

This course aims to equip students from a wide variety of backgrounds and disciplines with awareness and knowledge in Computer Science and Generative AI.


In this course students will learn:

  • Text classification and unsupervised topic discovery
  •  Similarity measures for natural language text
  • Part of speech and named entity tagging
  • Parsing Sentence structure and syntax
  • N-gram language modelling and coreference resolution
  • Machine Translation Techniques
  • Word Vectors and Deep Learning Basics
  • Advanced text modelling (RNN,Seq2seq, Transformers)


On completing this subject, students should have the following skills:

  • Create and apply algorithmic solutions to computational problems by referencing current research literature.
  • Understand solutions to complex problems, and analyze their operational efficiency.
  • Create, implement and evaluate programs for small and medium size problems in the Python programming language.


Learning outcomes

After successfully completing this course you should be able to:

LO1.

Describe and discuss key concepts in Natural Language Processing.

LO2.

Create computational models of natural language based on the concepts learned in the course.

LO3.

Evaluate the mathematical and/or algorithmic basis of common NLP techniques.

LO4.

Apply relevant techniques and/or interface with existing python APIs.

LO5.

Create end-to-end research experiments, including evaluation of text corpora as well as presentation and interpretation of results.

LO6.

Critically analyze and evaluate state-of-the-art text processing systems and communicate criticisms clearly.

Assessment

Assessment summary

Category Assessment task Weight Due date
Quiz Weekly Quiz
  • Online
10% Best 5 of 7 (2% per quiz)

8/08/2025 3:00 pm

15/08/2025 3:00 pm

22/08/2025 3:00 pm

5/09/2025 3:00 pm

12/09/2025 3:00 pm

26/09/2025 3:00 pm

24/10/2025 3:00 pm

Computer Code Assignment 1 15%

29/08/2025 3:00 pm

Computer Code, Paper/ Report/ Annotation Assignment 2 25%

24/10/2025 3:00 pm

Examination Final Exam
  • Hurdle
  • Identity Verified
  • In-person
50%

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

Weekly Quiz

  • Online
Mode
Written
Category
Quiz
Weight
10% Best 5 of 7 (2% per quiz)
Due date

8/08/2025 3:00 pm

15/08/2025 3:00 pm

22/08/2025 3:00 pm

5/09/2025 3:00 pm

12/09/2025 3:00 pm

26/09/2025 3:00 pm

24/10/2025 3:00 pm

Other conditions
Time limited.

See the conditions definitions

Task description

Online short answer, multiple choice, true/false, and computational questions related the previous lectures.


The best 5 of 7 quizzes will be used to calculate the student mark for this assessment.


Artificial Intelligence (AI) and Machine Translation (MT) tools may be used for this assignment.


Note that all assignments are to be worked on individually and must be your own work except where the use of code written or provided by other entities (teaching staff, AI tools, etc.) is explicitly permitted by the assignment specification. Artificial Intelligence (AI) and Machine Translation (MT) tools are permitted to be used in the programming assignments in this course, but they are not required to be used and not recommended to be used as they may inhibit learning and introduce bugs into your code. You must always follow the referencing requirements set out in the assignment specification and documents referenced from the assignment specification. Failure to appropriately reference the resources (tools and information sources) used in your work may result in misconduct allegations against you. You are encouraged to discuss the concepts behind the assignments but under no circumstances should you show your code to, or allow your code to be seen by, another student. You should not look at the code of any other student. You must sufficiently protect all electronic and paper copies of your code. All submitted code will be subject to electronic plagiarism and collusion detection. Assignments with no academic merit will be awarded a mark of zero. You may have to verbally answer questions about your submission as part of the assignment marking process.ᅠ

Submission guidelines

Submitted online using GradeScope.

Deferral or extension

You cannot defer or apply for an extension for this assessment.

Because only the best 5 of 7 quizzes will contribute to the mark for this assessment item and results/answers are released soon after the due date, no extensions are permitted.

If a student - who has had valid reasons for an extension - has not submitted at least 5 quizzes by the end of semester, they will have their quiz score weighted at n *2% (where n is the number of problem sets submitted), and their final exam weight will be increased by (5-n2%.

Late submission

You will receive a mark of 0 if this assessment is submitted late.

Because the results/answers are released soon after the due date, and only the best 5 of 7 will contribute to the mark for this assessment item, a 100% penalty will be applied to late submissions. This has been approved by the Associate Dean (Academic).

Assignment 1

Mode
Product/ Artefact/ Multimedia
Category
Computer Code
Weight
15%
Due date

29/08/2025 3:00 pm

Learning outcomes
L02, L03, L04

Task description

The first assignment will be a task to familiarise yourself with basic text parsing, extraction, and manipulation. The assignment will use Python and will be a well-defined programming task. Artificial Intelligence (AI) and Machine Translation (MT) tools may be used for this assignment.


Note that all assignments are to be worked on individually and must be your own work except where the use of code written or provided by other entities (teaching staff, AI tools, etc.) is explicitly permitted by the assignment specification. Artificial Intelligence (AI) and Machine Translation (MT) tools are permitted to be used in the programming assignments in this course, but they are not required to be used and not recommended to be used as they may inhibit learning and introduce bugs into your code. You must always follow the referencing requirements set out in the assignment specification and documents referenced from the assignment specification. Failure to appropriately reference the resources (tools and information sources) used in your work may result in misconduct allegations against you. You are encouraged to discuss the concepts behind the assignments but under no circumstances should you show your code to, or allow your code to be seen by, another student. You should not look at the code of any other student. You must sufficiently protect all electronic and paper copies of your code. All submitted code will be subject to electronic plagiarism and collusion detection. Assignments with no academic merit will be awarded a mark of zero. You may have to verbally answer questions about your submission as part of the assignment marking process.

Submission guidelines

To be submitted online in Blackboard.

Deferral or extension

You may be able to apply for an extension.

The maximum extension allowed is 7 days. Extensions are given in multiples of 24 hours.

Marked assignments with feedback and/or detailed solutions with feedback will be released to students within 14-21 days, where the earlier time frame applies if there are no extensions.

Late submission

A penalty of 10% of the maximum possible mark will be deducted per 24 hours from time submission is due for up to 7 days. After 7 days, you will receive a mark of 0.

Assignment 2

Mode
Product/ Artefact/ Multimedia, Written
Category
Computer Code, Paper/ Report/ Annotation
Weight
25%
Due date

24/10/2025 3:00 pm

Learning outcomes
L02, L03, L04, L05, L06

Task description

This will be a more open ended and challenging task that will draw on what you have learned this semester. The student will be expected to conduct a comparative analysis of several state-of-the-art solutions to a "hot topic" in NLP using a large dataset. The analysis will be written up in a 5-page report using a template that will be provided when the assignment is released. The report should include a detailed comparative analysis of the algorithms used, a clear and concise description of each algorithm, and include tables and graphs summarising the experiments ran. The datasets and necessary GPU hardware will be provided by the course coordinator, along with a description of the task, including at least one example baseline algorithm.


Artificial Intelligence (AI) and Machine Translation (MT) tools may be used for this assignment.


Note that all assignments are to be worked on individually and must be your own work except where the use of code written or provided by other entities (teaching staff, AI tools, etc.) is explicitly permitted by the assignment specification. Artificial Intelligence (AI) and Machine Translation (MT) tools are permitted to be used in the programming assignments in this course, but they are not required to be used and not recommended to be used as they may inhibit learning and introduce bugs into your code. You must always follow the referencing requirements set out in the assignment specification and documents referenced from the assignment specification. Failure to appropriately reference the resources (tools and information sources) used in your work may result in misconduct allegations against you. You are encouraged to discuss the concepts behind the assignments but under no circumstances should you show your code to, or allow your code to be seen by, another student. You should not look at the code of any other student. You must sufficiently protect all electronic and paper copies of your code. All submitted code will be subject to electronic plagiarism and collusion detection. Assignments with no academic merit will be awarded a mark of zero. You may have to verbally answer questions about your submission as part of the assignment marking process.

Submission guidelines

The report as well as the code to reproduce all of the results will be submitted as a zip file in Blackboard.

Deferral or extension

You may be able to apply for an extension.

The maximum extension allowed is 7 days. Extensions are given in multiples of 24 hours.

Marked assignments with feedback and/or detailed solutions with feedback will be released to students within 14-21 days, where the earlier time frame applies if there are no extensions.

Late submission

A penalty of 10% of the maximum possible mark will be deducted per 24 hours from time submission is due for up to 7 days. After 7 days, you will receive a mark of 0.

Final Exam

  • Hurdle
  • Identity Verified
  • In-person
Mode
Written
Category
Examination
Weight
50%
Due date

End of Semester Exam Period

8/11/2025 - 22/11/2025

Other conditions
Time limited, Secure.

See the conditions definitions

Learning outcomes
L01, L02, L03, L06

Task description

The final exam will be a 3-hour invigilated exam covering the concepts learned in the course.

Hurdle requirements

To pass this course, a minimum of 50% must be obtained in the final exam. If you achieve less than 50% in the final examination, your overall final mark will be capped at 49, and your final grade will be capped at 3.

Exam details

Planning time 10 minutes
Duration 180 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
Materials

pen, pencil, eraser, ruler

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 Marks Description
1 (Low Fail) 0 - 19

Absence of evidence of achievement of course learning outcomes.

2 (Fail) 20 - 46

Minimal evidence of achievement of course learning outcomes.

3 (Marginal Fail) 47 - 49

Demonstrated evidence of developing achievement of course learning outcomes

4 (Pass) 50 - 64

Demonstrated evidence of functional achievement of course learning outcomes.

5 (Credit) 65 - 74

Demonstrated evidence of proficient achievement of course learning outcomes.

6 (Distinction) 75 - 84

Demonstrated evidence of advanced achievement of course learning outcomes.

7 (High Distinction) 85 - 100

Demonstrated evidence of exceptional achievement of course learning outcomes.

Supplementary assessment

Supplementary assessment is available for this course.

Additional assessment information

Having Troubles?

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.

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
Clear filters
Learning period Activity type Topic
Multiple weeks

From Week 1 To Week 13

Lecture

Lectures

Learning outcomes: L01, L03

Multiple weeks

From Week 2 To Week 13

Practical

Practicals

Weekly practicals starting in Week 2.

Learning outcomes: L02, L04, L05, L06

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:

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: