CENG463 INTRODUCTION TO NATURAL LANGU. PROCESSING

Course Code:5710463
METU Credit (Theoretical-Laboratory hours/week):3 (3.00 - 0.00)
ECTS Credit:6.0
Department:Computer Engineering
Language of Instruction:English
Level of Study:Undergraduate
Course Coordinator:Lecturer Dr. AYŞE NUR BİRTÜRK
Offered Semester:Fall or Spring Semesters.

Course Objectives

To form a basis for Natural Language Processing and Computational Linguistics and preparing the student for an advanced graduate course on computational linguistics. To present applicable linguistic theory by turning theories into practical techniques with emphasis on problems for which there are widely accepted solutions. To familiarize the student with the latest advances in Natural Language Technology and applications using Python and NLTK (Natural Language Toolkit).


Course Content

Introduction to linguistic theory and techniques used in natural language processing (NLP). Template and keyword systems. Declarative and procedural approaches to NL parsing. Phrase Structure. Unification-based grammar. Parsing algorithms. Semantics. Morphology and Lexicon.


Course Learning Outcomes

Understand the basic concepts and terminology in natural language study

Access and use  natural language corpora

Recognize the statistical properties of text from raw corpora

Create finite state automata and finite state transducers for morphological analysis of words

Design two level compilers for morphological analysis

Understand sequence classification methods

Apply the supervised training algorithm for HMMs for POS tagging

Calculate probabillities of POS tag sequences

Apply dynamic programming algorithms such as Viterbi to choose the best POS tag sequence for a given sentence

Design part-of-speech taggers from scratch

Recognize the limitations of context free grammars and analyse the extensions to CFG

Apply well-known parsing algorithms to natural language data

Recognize the limitations of parsing algorithms and improve them using differnet methods.

Understand the principles of natural language meaning

Analyse and Compare different representations for semantics

Describe state of the art methods for NLP applications such as text categorization, information extraction etc.

Recognize the computational problems associated to natural language recognition and parsing

Design , implement and evaluate an NLP system


Program Outcomes Matrix

Contribution
#Program OutcomesNoYes
1An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics
2An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors
3An ability to communicate effectively with a range of audiences
4An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts
5An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives
6An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions
7An ability to acquire and apply new knowledge as needed, using appropriate learning strategies