This module aims to let students develop a basic understanding of the fundamental tasks of natural language processing, practical skills of applying NLP models and ability to analyze the limitations of popular NLP methods. The course covers both traditional NLP algorithms, and modern deep learning methods.
A Demonstrate an understanding of the fundamental tasks in NLP, including tokenization, part of speech tagging, syntactic and semantic parsing. B Demonstrate an understanding of inference methods in NLP, such as dynamical programming and beam search. C Demonstrate an intuitive understanding of neural networks used in NLP, including Long Short Term Memory Network, Gated Recurrent Unit and Transformer. D Solve NLP tasks with existing models. E Analyse and evaluate NLP systems and algorithms and make informed decisions about their suitability and effectiveness for different NLP tasks and domains.
Students will be expected to attend two hours of formal lectures as well as to participate in two hours of supervised practical (tutorial/lab) classes in a typical week in collaboration with industry partners. Students will be asked to devote eight hours of unsupervised time for reflection and consideration of lecture material and will be required to research and read widely on the subject.