Idea Transcript
CS3180 Level: 3
Natural Language Processing and Applications Credits: 10
Teaching Period: 1
Module Tutor: Dr S Wong
Aims
Natural language processing (NLP) is an active research area, with applications ranging from simple keyword search to intelligent dialogue system. Businesses are increasingly looking into the use of NLP techniques to improve their software solutions. This module aims at introducing students to various potential and real-life applications of NLP and the ideas behind them. Through building the foundational knowledge that is required for approaching NLP, students will have a chance to explore how to approach an NLP task by means of simple NLP techniques. Through introducing core linguistic concepts and a selection of classical NLP techniques, students are expected to gain sufficient background knowledge to analyse a simple NLP problem and evaluate a solution. Content
Introduction to NLP: various levels of linguistic information (phonetics and phonology, syntax, semantics, pragmatics and discourse), some problems in NLP Syntax: brief overview of a basic subset of English grammar, defining simple grammar rules; introduction to various kinds of grammar (sentence frame grammar, phrase structure grammar, context-free grammar, Definite Clause Grammar); introduction to basic parsing techniques (finite-state transition network, recursive transition network, top-down parsing) Meaning: semantic features, thematic roles, predicate-argument structure, type hierarchies, ontology of concepts Morphology: inflectional Vs derivational morphology, writing morphological rules, morphological analysis Introduction to Corpus linguistics: various kinds of corpora, corpus formation Potential NLP applications in various business solutions: Machine Translation (Linguistic-based & Example-based), using regular expressions to extract information, spell-checking, Chatbot Teaching
Two lectures and one tutorial per week for eleven weeks Assessment
Written exam: 100% (3 hours, January) Module outcomes
What the student should gain from successful completion of the module Knowledge and Understanding The core linguistic concepts required in NLP
Teaching/Learning Methods
Assessment Methods
Lectures, tutorial problems
Exam
Lectures, tutorial problems, demo programs, case studies
Exam
Professional/Subject-Specific Skills Ability to identify syntactic category of each constituent within a sentence Implement a simple parser using DCG in Prolog Build a small corpus for a specific NLP task Make use of corpus data for aiding NLP
Lectures, tutorial problems, demo programs, case studies
Exam
Transferable Skills Identify NLP problem(s) in a given software problem and be able to tackle some of them systematically
Lectures, case study
Exam
Intellectual Skills Model a fragment of mentally represented grammar Apply appropriate NLP techniques to perform basic NLP tasks Critically evaluate an NLP application
Learning resources
Lecture notes, Lecture handouts, Demonstration programs Matthews, An Introduction to Natural Language Processing through Prolog, Addison-Wesley, 1998. McEnery & Wilson, Corpus Linguistics, Edinburgh University Press, 2001. Allen, Natural Language Understanding (2nd ed), Benjamin/Cummings, 1995. Arnold, Balkan, Humphreys, Meijer & Sadler, Machine Translation: an introductory guide, Blackwells/NCC, 1994. Jurafsky and Martin, Speech and Language Processing: an introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition, Prentice Hall, 2000. Other study requirements to take this module
CS1410 Java Program Development or CS2300 Java Program Construction CS1140 Introduction to Artificial Intelligence (helpful, but not essential) Last update 29/08/2008