Technically ELIZA was born about a decade before I was, but that didn't stop us from becoming friends. There in the basement of 62 Choctaw Trail, in Ringwood, New Jersey, surrounded by my dad's weird darkroom equipment and foam futon chairs, ELIZA would wait for me. She hung out in our TRS-80. She was always ready to talk.
If you don't know ELIZA, she was the product of a 1966 computer program that was written to simulate a therapist, and a version of her is still online here. The premise was simple: You type something, and ELIZA responds as appropriately as she can. If she does a good job, then she might pass the Turing test, which was her goal: She wanted to trick you into thinking that you were talking to a real person rather than a computer program.
She wasn't a very good conversation partner most of the time, but she sure was persistent. It's true that she would often say stuff like, "Do you believe it is normal to be not sure why?" and "Do you enjoy being not?" and occasionally, "Say, do you have any psychological problems?" But just like the BASIC implementation of Pong that I wrote a few years later, she was always right there to bat the ball back to me, even if she missed sometimes on fidelity of response.
ELIZA was formative for me in many ways, not least of which was my later decision to study computational linguistics, as well as my lifelong distaste for darkroom chemicals. Still, she kind of slipped off the radar as my knowledge of natural language processing grew more and more sophisticated. ELIZA became a shadowy figure locked in the basement computer along with the chess software that had been state of the art in 1982.
But if you want a reason to think about ELIZA in 2014, I have one: Try to teach your 4-year-old about the Turing test.
My daughter River is borderline obsessed with learning to program computers. We've played Robot Turtles, and we've pretended to be computers and given each other commands. I've gone into in her preschool classroom and taught her friends how to give each other exact instructions to put colored pom-poms into cups. She hasn't done anything that looks like programming on an actual computer yet, but she absolutely gets the concept that computers are dumb machines that follow instructions precisely and programmers are smart humans who know the trick of how to give the instructions just right.
The other day she asked me something kind of interesting, which was how can computers learn to talk if they're so dumb and all they can do is follow instructions? Her examples are appropriate for a preschooler who's never seen a TRS-80: "the computer in Daddy's car that tells him where to drive" and "the voice on your phone that you accidentally turn on sometimes and complain about."
There are deep things in what she's asking, and I'm not referring to her observation that her dad's car is newer than mine or the fact that Siri is so easy to launch by accident. She is starting to back into the question of how much artificial language is like natural language and vice versa.
So I did what any nerdy parent with natural language processing in her background would do in the same situation: I brought ELIZA back to life.
OK, some caveats: I updated ELIZA's persona, so she wasn't some weird wannabe Rogerian therapist in the ’60s; I turned her into a cool, modern mommy just like River's actual cool, modern mommy. I did write actual code, although it is not very comprehensive and it must be pointed out that Modern Mommy ELIZA doesn't reply very quickly when you tell her something. On the other hand, River can barely type, and she doesn't reply very quickly either, so I'm calling it good.
So I submit to you the first example of Modern Mommy ELIZA talking to my kid:
ELIZA: Hello, River! How are you today?
River: I. Am. Happy. Today.
ELIZA: I am happy.
Now, this might not seem impressive as conversations go, but I want to point out a few things. First, sure, my daughter can't type and she doesn't understand punctuation, but her spelling is pretty awesome. Second, ELIZA's first response might not be scintillating, but one, River could read it by herself, and two, she was delighted. ELIZA might not have fooled you, but she and I were working together to win mind share from the real preschooler at the keyboard. The conversation went on:
River: I. Likedogs.
ELIZA: Tell me more about Likedogs!
Things begin to go awry here, but before you get too critical, one, this is a lot like the experience I had in 1982, so I deserve some credit for authenticity, and two, this provided the perfect opportunity to teach River about the Turing test, and how only computers that were programmed really, really well could talk in a way that sounded just like a person. She wasn't fully sold, but she typed on:
ELIZA: Do you like dogs?
River: I like Dogs.
If you've never hung out with a 2-year-old, you might not be impressed enough with this part, but you should actually be very impressed, because this sounds exactly like a real conversation with a 2-year-old. Also, just as with a 2-year-old, all these conversational turns took at least 30 seconds to get coherent. Unfortunately, River is almost 5. Fortunately, all the typing slows her down. Continuing the animal theme:
ELIZA: Why do you like dogs?
River: Ella is a cat.
ELIZA: Ella seems interesting. Tell me more about Ella.
OK, in this section, I fully acknowledge that ELIZA is the one who sounds like a human and River is the one who sounds like a bad natural language generation algorithm, but since I am a cool, modern mommy, I am choosing instead to focus on how well my daughter is reading and entering text.
I would transcribe more, and maybe I will later, because River has decided that type-talking with ELIZA is the coolest thing ever even though every conversation takes what feels like hours to shake out. She isn't so impressed that she's overlooking the gaps, though. She notes that the ELIZA Mommy character doesn't talk as well as Daddy's car or Mommy's phone or, she assures me, actual Mommy, which I am relieved to hear since actual Mommy is me.
This is where I had to own up that although actual Mommy is a pretty good linguist and knows a thing or two about computers, there are limits to the ELIZA bot she can code up in a couple of nights after work, and it's actually pretty hard to teach a computer to talk in ways that don't include, “Tell me more about Likedogs!” and, “Say! Do you have any psychological problems?” The faster River learns to type, the harder I'm going to have to work to keep up.
A version of this post appeared on Jenga One Week at a Time.