BSc Computer Science and Mathematics
Year of entry: 2022
- View tabs
- View full page
Course unit details:
Natural Language Processing
|Unit level||Level 3|
|Teaching period(s)||Semester 1|
|Offered by||Department of Computer Science|
|Available as a free choice unit?||No|
This course unit will cover the key linguistic and algorithmic foundations of natural language processing. It will explore the main challenges in representing, searching and retrieving written documents, representing word semantics, and processing and identifying patterns in speech. It will consider both rule-based methods and machine/deep learning methods, and introduce key applications such as text information retrieval, text classification, word sense disambiguation, speech synthesis and speech recognition.
Enabling computers to process data in 'natural language' (the kind of language that people use to communicate with one another) is becoming more and more important. It allows both people to communicate with computers, and the computers to access the enormous amount of material that is stored as natural language text on the web or in document repositories. This course unit provides an introduction to the area of natural language processing as one of the key areas of artificial intelligence. It aims to introduce essential components and key applications of natural language processing, and explain the major challenges in processing large-scale, real-world natural language both in its written and spoken forms.
- Discuss the major challenges in processing large-scale, real-world natural language data.
- Explain how the essential components of NLP systems are built, assessed and modified, including basic lexical and semantic processing approaches.
- Explain and apply basic statistical approaches, machine/deep learning techniques in building NLP systems.
- Discuss and suggest solutions for key NLP tasks and applications, including document indexing, search and classification, word sense disambiguation, speech synthesis and recognition.
- Design and implement NLP systems, identify, use and implement suitable rule-based, machine/deep learning techniques for solving key NLP tasks and applications.
- Identify and explain the issues involved in deploying and evaluating NLP systems.
- Introduction to NLP
- Simple Language Models
- Information Retrieval
- Lexical Processing
- Word Semantics I: Word Sense Disambiguation
- Word Semantics II: Distributional Semantics
- Speech Synthesis
- Speech Recognition
- Deep Learning for NLP
- Ethical Considerations for NLP
Teaching and learning methods
Weekly workshops/lectures/tutorials with structured input and exploratory activities. These will be organised as a blend of brief presentations, hands-on individual and group activities, discussions of provided materials and tasks. Coursework will provide design, implement and analysis tasks with real-world data.
Bi-weekly laboratories will be hands-on drop-in sessions for trying out new systems or techniques (with set tasks, known answers). These will be also used for preparation for course work, surgeries to provide feedback on coursework, and as an opportunity to ask questions about the set tasks with more open ended/specific discussions and feedback.
|Written assignment (inc essay)||50%|
There will be both face-to-face feedback provided in workshops and tutorial and lab sessions, and written feedback provided through Blackboard discussion forum.
|Scheduled activity hours|
|Practical classes & workshops||10|
|Independent study hours|
|Tingting Mu||Unit coordinator|