Topics
Natural Language Processing

Natural Language Processing

Natural language processing (NLP) is a field of study which works on ways to program computing devices to process and understand the language used by humans to communicate (referred to as natural language). It is a field that spans linguistics, computer science, and AI/ML. The goal is to enable a computing device to "understand" written or spoken words, including contextual nuances (the same set of words in a sentence or an instruction may mean different things depending on the context and the language used).

NLP is an integral part of any language translation solution since a good translation needs to understand what needs to be communicated and then restructure that as a meaningful text in another language, not just replace words in a different language.

Human language is complex and has several variations and ambiguities that make it very difficult to write NLP algorithms and programs. Systems also have to be tolerant of dialects within a language and in speech analysis, of accent, speed and tone. Even with the most complex NLP algorithms, it is difficult to understand the human sentiment or intent (such as if a statement is a question or an instruction) if not worded precisely.

For example, the word "fair" has different meanings depending on what part of speech it is used as. When used as an adjective, it can describe someone who provides a balanced opinion, but it can also describe someone who has light-coloured skin. As a noun, a "fair" is an event that has games and fun activities.

Or a statement like "Give me a break" actually does not require a response or action as against someone saying "I need a break" in which case they may need a break from the task they are working on.

NLP is used along with speech recognition to deliver solutions such as virtual assistants like Siri and Alexa.