|
CSC 181
|
This course is about computing meaning in natural languages. Unlike traditional (and highly successful) machine learning approaches to natural language processing that depend on statistical techniques and little linguistics theory, we will take an approach that relies on linguistic theory to compute the meaning of statements and questions, with a particular focus later in the course on question-answer systems and on representing dialogs, whether between humans or between humans and computers.
An important benefit of this kind of approach to language is that computational systems can provide good tests of the validity of linguistic theories as well as create useful tools to understand and generate natural language. The course will begin with a quick introduction to mathematical logic and the lambda calculus which will be our primary tools for building a computational understanding of language. Prerequisites: CSCI052 PO or CSCI060 HM.
Every student passing this course should be able to:
This course will involve extensive reading on your part, both in the text and in outside sources. While I will provide some instruction in Haskell, the functional language used in this course, you will be expected to master the language on your own.