Thursday, November 3, 2011

Talking to computers

So there's an interesting article on Slate about Google Translate -- which, apparently, adopts a pioneering approach to translation that works by comparing user inputs to preexisting multilingual sources. It seems that this method has proven superior to the previous method, which relied upon programmers to teach computers the "rules" of grammar and syntax, as well as vocabulary.
These classic methods work on the principle that language can be decoded, stripped to its purest component parts of "meaning," and built back up again into another language. Linguists feed computers vocabularies, grammars, and endless rules about sentence structure—but language isn’t so easily formalized this way. There are more exceptions, qualifications, and ambiguities than rules and laws to follow. And, when you really think about it, this approach hardly respects the complexity of the problem.
This is a topic I don't fully understand, so I'm going to keep my thoughts short and sweet. But a couple of things strike me about this piece: first, although the article describes this process in terms of translation, the problem of "translating language" really only seems to add an extra layer to a more fundamental problem, which is understanding language in some capacity (here: understanding language at least well enough to construct a similar sentence in another language with the same meaning).

Second, whatever the flaws of the "classic" approach of building conversant computers, it's worth noting that human beings -- who are, after all, currently the undisputed masters of language -- use that same classic approach. While we're all taught language through repeated exposure and use, we don't carry around an enormous databank in our heads of ever word we've ever heard. We have somehow managed to reduce each word to a particular meaning, and to create a set of grammatical rules about those words how they can all be used in relation to each other. And lest you think that approach is too subjective to be of much use to a machine, consider how we apply those rules with startling consistency. Next time you read a particularly well-written piece of fiction or poetry, or hear a song lyric, or a joke, remember how amazing it is that connotative meaning has somehow been conveyed, without any formal mechanism, across an entire society, such that individuals who have never met each other and have no direct communication can still rely on words and syntactical formations having more-or-less the same set of associations. My meaning might not be exactly the same as your meaning, but it's often very, very close.

The thing is, how old were you when you first started getting a firm grasp on all this language stuff? Less than ten? How many words do you think you had encountered by that age? Many millions, probably -- a lot, but chump change next to the ocean of material Google's computers access every day.

So I suppose my point is that, while Google might have discovered a clever shortcut here, there's almost certainly a better way of building computers that comprehend language. Because it's indisputably true that even the few million basic words and phrases that a child might encounter in early life contain enough of the linguistic rulebook to reverse engineer a working language machine. If our dumb monkey brains can find those rules, learn them, and apply them day after day, there's no reason to think a cleverly built computer couldn't do it too.

No comments:

Post a Comment