Natural Language and Artificial Intelligence

HSSP Summer 2009, Instructor: Gregory Marton

July 12 -- First Steps

We will introduce the concepts of syntax, semantics, and meaning, in both human languages and computer languages. We will take our first steps in writing a Scheme program, and start to think deeply about English.

July 19 -- Languages, Sounds, Alphabets

We'll look at the world's most common and least common languages, talk about language change and language families, writing systems and sounds, and all that makes one language different from another.

July 26 -- Morphology

What are words and what is the significance of spaces? Languages like Turkish, Hungarian, and to some extent German, can express entire sentences in one word. Languages like Chinese have words, but do not use spaces in writing. Even in English, we can see regularities of meaning that are smaller than words.

Aug 2 -- Words and Keyword Search

When we put morphemes together into words, they still don't convey just one meaning:

Aug 9 -- Multi-word meanings

Aug 16 -- Syntax and Development

You've heard of subjects and predicates -- where do these come from? Is there really structure to our sentences, or are they just n-grams, like the multi-word entities. If we're careful, we can unambiguously hear that there is structure in a sentence, but it's not easy, so how to do kids figure it out? What else do kids invent that they never hear?

Aug 23 -- Semantics and Grounding

Guest Lecturer: Stefanie Tellex

In order for computers to really understand anything of our language, we and they must share some of the same kinds of experiences. Computers are learning to see, to hear, to move around, and interact with the world around them, so there is hope. But they need us to teach them what things mean.

Aug 30 -- Meanings as Programs

Many meanings have to be grounded in the real world, and connected to cameras and motors and experiences, but surely there are some meanings that computers can more easily relate to, like numbers and time. Can we get computers to talk and reason about numbers and about time in a human language? How do we put together what we've learned about morphemes, words, and structure, and teach a computer to communicate coherently about a few things?