Computer Laboratory

Natural Language and Information Processing Research Group

Language modules on the ACS MPhil

The following modules are taught by members of the NLIP group.

  • Overview of Natural Language Processing (L90)

    This module introduces the fundamental techniques of natural language processing. It aims to explain the potential and the main limitations of these techniques. Some current research issues are introduced and some current and potential applications discussed and evaluated.

  • Introduction to Natural Language Syntax and Parsing (L95)

    This module aims to provide a brief introduction to linguistics for computer scientists and then goes on to cover some of the core tasks in natural language processing (NLP), focussing on statistical tagging and parsing. We will look at how to evaluate taggers and parsers and see how well state-of-the-art tools perform given current techniques.

  • Machine Learning for Language Processing (L101)

    This module aims to provide an introduction to machine learning with specific application to tasks such as document classification, spam email filtering, language modelling, part-of-speech tagging, and named entity and event recognition for textual information extraction. We will cover supervised, weakly-supervised and unsupervised approaches using generative and discriminative classifiers based on graphical models, including (hidden) Markov models and CRFs, and clustering / dimensionality-reduction methods, such as latent Dirichlet allocation and neural word embeddings.

  • Advanced Topics in Natural Language Processing (R222)

    This module aims to cover at least four selected topics in enough detail and depth so that participants are potentially in a position to contribute to research on the topic. Each topic will be introduced with a lecture which, building on the material covered in the prerequisite courses, will make the current research literature accessible. The three seminar sessions will typically be run as a reading group with student presentations and discussion and will typically cover about six recent papers from the literature.

  • Discourse Processing (R216)

    This module provides an introduction to NLP research centered around discourse processing (i.e., the means by which larger pieces of text are structured), and to text summarisation methods, particularly those based on discourse processing.

  • Language and Concepts (R207)

    NB: Not offered 2015-2016, due to sabbatical. The notion of a concept is crucial to the way that we think about representation of language and human cognition. Concepts are relevant to AI and NLP/computational linguistics as well as other areas of Computer Science which are concerned with modelling the real world in a way which is comprehensible to humans, including semantic web technology. The aim of this course is to start from a computational perspective but to provide an overview of the interdisciplinary issues involved in the study of concepts, including ideas from linguistics, cognitive science, philosophy and neuroscience. The course will be organised as a reading group and assessed by an essay.

Note: not all these modules will necessarily be offered in 2016-17. All these modules are available as `sharable options' for suitably qualified students under the Language Sciences Interdisciplinary Programme (LSIP) with the agreement of the relevant LSIP coordinator and the module leader. See also Language Sciences Interdisciplinary Programme and the ACS.

Other ACS modules of particular interest

The full list of modules may be found on the ACS module page: the following may be of particular interest to students specialising in language processing. All the courses taught by the Computer Laboratory are also available to LSIP students from other departments, as above.

  • Automated Reasoning (L18) – Dr Mateja Jamnik – 16 h

    Provides an introduction to how reasoning can be automated from an AI perspective. The course will introduce students to fundamental techniques for designing and implementing automated reasoners, and present advanced uses of theorem proving for solving mathematical problems via automated reasoning.

  • Biomedical Information Processing (R214) – Dr Anna Korhonen, Dr Pietro Lio' – 16 h

    Research done within biomedical sciences is generating vast amounts of information which can, when processed appropriately, improve our understanding of the complex processes that govern life, death and disease. This course surveys computational techniques that can be used to process biomedical data with the overall goal of supporting the processes of scientific inquiry, problem solving, and decision making in biomedical sciences. A variety of data types and sources will be introduced, along with data and text mining techniques that can be used to analyse, extract, discover and integrate biomedical information at levels ranging from molecular through human populations. The course surveys specific problems in biology, clinical medicine and public health and shows how information processing can support practical applications in these areas.

  • Image Processing and Image Coding (E4F8) – Dr Joan Lasenby – 16 h

    NB: Module offered by the Department of Engineering. Sophisticated processing of images by digital hardware is now fairly common, and ranges from special effects in video games to satellite image enhancement. Three of the main application areas are video data compression, image enhancement, and scene understanding. This module introduces the key tools for performing these tasks, and shows how these tools can be applied. This module is offered by the Department of Engineering.

  • Machine Learning and Algorithms for Data Mining (L42) – Dr Mateja Jamnik, Dr Pietro Lio', Dr Thomas Sauerwald – 16 h

    NEW: This module aims to introduce students to basic principles and methods of machine learning algorithms that are typically used for mining large data sets. In particular, we will look into algorithms typically used for analysing networks, fundamental principles of techniques such as decision trees and support vector machines, and finally, neural network architectures. The students will gain practical understanding through a coding exercise where they will implement and apply one machine learning algorithm on a particular large data set.

This page relates to: Postgraduate opportunities in the NLIP group