Skip to content
Sean Trott edited this page Jun 14, 2016 · 35 revisions

Contact: [email protected]


Getting Started

Check out the getting started page for tips on what repositories you'll need for different purposes.

Disclaimer: Our system does rely on several other software packages. All system requirements are listed in the respective repositories. Although we've added installation instructions and tips on getting things compatible, we cannot control for version skew / software rot that occurs after the writing of this tutorial.

About

Natural Language Understanding (NLU) refers to the machine comprehension of language without human intervention; the machine receives language as input, and produces some action as output. The type of action ranges from robots carrying out a task (Trott, Appriou, Feldman, & Janin, 2015) to a machine performing metaphor analysis and inference about economic policies (Narayanan 1997).

We have devolped a general, modular system for natural language understanding (see below). The language-side (left-hand side) receives language as input, and produces a structured semantic representation of language called an n-tuple. This n-tuple is sent to the action-side (right-hand side), which uses it to carry out some sort of task for a given application. Although the nature of the task (and the corresponding API call) is dependent on the application, we believe the system is generalizable across domains, and can be retargeted with minimal additions to the language-side.

System Architecture

Tutorials

TBD

ECG Framework

ECG Grammars

ECG Workbench

ECG Robot Demo