Before we start talking about NLP, I have to clear up a wordly confusion. Since the 70ies, the term “NLP” was used to talk about neuro-linguistic programming. This is a pseudo-scientific method which borrows aspects from psychotherapy and communication theory and makes bold statements on “how to read and program people”. Although there is no real scientific validity to its approach, it is still widely used in training especially for sales employees. However, the NLP we want to talk about is natural language processing.
Natural language processing helps to make everything “text-based or voice based” smarter. Just think about the voice recognition when you call a hotline. Or the use of Amazon’s Alexa or Apple’s Siri. These are classical examples of voice recognition and voice recognition is seen for many as a very good example for a human-machine interface. Humans interact with each other via voice and thus using voice recognizing algorithms enhance the feeling of “naturally interacting”. But NLP does not just cover voice recognition.
Think about your spam filter in your email account. How does that work? Text classification algorithms decide if an email is spam or not. Furthermore there is another very popular use case in text classification. It is the so called sentiment analysis. Its sole purpose is to determine, if a text has a positive or negative connotation. Imagine you want to know, if people on Twitter like your new product or not. Then you would analyse all tweets naming your product using these text classification algorithms. Previous ideas of clustering by positive or negative adjectives never really showed true reliability, because humans like to play with their words and also use negative words to express positive feeling or humor together with emoticons to express the exact opposite (e.g. “this game is bad a**” or “so good *wink*”).
Another usage of NLP is language modeling or text generation. These models help to create new texts or documents or automatically create tags, headlines, hashtags out of given texts. Something similar is caption generation. It uses pictures or videos and then either describes the content of a scene for the blind or subtitles a video for the deaf or for foreign viewers. Subtitles for foreign viewers however also includes another application of NLP: machine translation. Machine translation is the art or skill to automatically translate text from one language into another. There are many more applications of NLP, but in the end I would like to mention one application which has caught a lot of attention: chat bots.
Many companies rush to research on chat bots as they allow to completely circumvent the usage of human driven call centers. Chat bots are always online, never tired and there is no need to wait for them and listen to tedious music for hours. The basic function of chat bots is to understand written questions (on websites) or voiced questions on telephone hotlines and to be able to keep up a “natural” conversation with a human customer.
There are so many more applications of NLP, but I hope that this brief text could give a short overview of what is possible with NLP.