We humans learn the meanings of words from context and experience. But where does a poor chat bot start? Using word vectors may be the way to go. In my last blog I discussed what’s needed for an enjoyable conversation. This time, I’d like to take a quick look understanding meaning in conversations – and how we can teach that to a chat bot.
Bot heads often talk about “NLP” – or Natural Language Processing. It’s probably one of the trickiest areas of artificial intelligence because language (especially when in dialogue) is among the most complicated things we humans do.
A good starting point, though, is using AI to tie-down the meaning of words so they are understandable to a bot. A big step forward in this was made with “word vectors” (MIKOLOV, 2013).
Translating words into vectors has created powerful new possibilities. They are basically a useful way to represent the “meaning” of a word. And since they are vectors, they also give you the possibility to calculate with them. Or to reason even.
The famous example of word vectors in action is the “King – Man + Woman = ?” question. The answer, of course, is: “Queen”! It’s really amazing that this conclusion can be reached simply by looking at a bunch of words in context and without needing to know anything about semantics.
In chatbot land, this form of NLP is used in intent mapping: trying to get the meaning of a user from a sentence and mapping it to what the bot knows.