Blog

In 2021, Computers Can Understand What People Say – What Is Natural Language Processing?

10 Feb, 2021
Xebia Background Header Wave

Natural Language Processing allows computers to understand and process human language. NLP can be used in many different areas such as customer service, translation, smart homes, and many more.

53 years ago, a computer lip-read the conversation between two astronauts and, not long after, decided to kill them. If you’re a cinema fan, you probably recognize where this story is from. However, today this futuristic vision isn’t Hollywood anymore – with Natural Language Processing, or NLP for short, it’s becoming reality. (Luckily, without the killing part; I doubt that Amazon’s Alexa will turn into a murderous HAL 9000 anytime soon).

What is Natural Language Processing?

Briefly speaking, NLP is a form of Artificial Intelligence (AI) that empowers computers to understand the natural human language. Its uses go far beyond only virtual assistants; NLP is at the core of tools we’re using every day – from search engines and spam filters to translation software, chatbots, or grammar correction software.

NLP History

The origins of Natural Language Processing stem from the early… 1900s!  Between 1906 and 1911, a Swiss linguistics professor, Ferdinand de Saussure, taught classes about viewing languages as "systems", where a sound represents a concept.

Skipping forward, in 1950 Alan Turing described a test for a "thinking machine". He argued that if a machine could be technically part of a conversation (through a… teleprinter), and could imitate a person so well that nobody would be able to tell the difference, then the machine could be considered cognitive.

Not long after, in 1952, the Hodgkin-Huxley model presented how neurons form an electrical network in the brain.

These events from the 20th century (and many, MANY other ones), inspired the development of modern Natural Language Processing. In 2001, the first NLP models were created; and in the following 20 years, the technology was developed into what we’re describing today.

So, let’s now take a look at what we’re actually talking about!

Natural Language Processing Techniques

Natural Language Processing can analyze the structure and meaning of human language by looking at different aspects of sentences, like syntax, semantics, morphology, or pragmatics. It’s viewed as a subfield of linguistics, computer science, and AI.
NLP processing works through Machine Learning (ML). ML systems store words (and the ways they come together) like any other form of information. With that data, the computer – previously fed with a lot of text, for example from entire books – is able to identify grammatical rules, or even people’s linguistic habits and use it to find patterns and understand what the text is about.
Interestingly, NLP can also perform a so-called sentiment analysis, which enables it to interpret and classify emotion within text data.

NLP Algorithms

Let’s take such a sentence, for instance:
The staff was very kind; I absolutely recommend eating the delicious cobb salad!
With Natural Language Processing, a computer can identify that this review is positive (marked with ___); additionally, it can also tell what the review is about – in this case, it would understand that the client is praising the food and service quality.

Natural Language Processing Benefits

Natural Language Processing can naturally deliver multiple benefits to your business (pun intended). While the term originally referred to a system’s ability to read, it has since become a colloquialism for all computational linguistics. This includes NLG – natural language generation – which represents the computer’s ability to create communication of its own, or NLU – natural language understanding – which enables computers to understand the words in the context of the text (including misspellings, mispronunciations, and even slang).
All of the above combined open up many potential business uses. Here are – in our eyes – the 3 most valuable benefit categories:

  • Performing large-scale analyses. NLP enables machines to automatically understand and analyze large volumes of unstructured text data – for example, customer support tickets, social media comments, online reviews, or news reports. As a result, processing huge amounts of information takes only a few seconds or minutes instead of days or even weeks.
  • Automating processes. NLP tools can help machines to learn how to sort and route data with no (or minimal) human interaction. All this quickly, efficiently, accurately, and around the clock. Practically, Natural Language Processing can empower automation solutions like e.g. chatbots (which are not perfect yet but can get simple tasks done), and help employees stay focused on more value-creating tasks, increasing their productivity.
  • Getting actionable insights. The unstructured data from certain sources – like, for example, open-ended survey responses or online reviews – requires an additional level of analysis. For machines to understand the text, it needs to be broken down; AI-guided NLP tools make it possible. You won’t have to rely on guesswork or simple, cursory analyses anymore – thanks to NLP, you’ll be able to dig into unstructured text for data-driven, real-world, immediately actionable insights.

Natural Language Processing Examples

As we’ve mentioned before, NLP is already widely used in many solutions we (and multiple businesses) are using every day. Here are a few examples:

  • Filtering emails. We’ll start with the one that may seem the most trivial but affects the everyday life of billions of people. Take Gmail, for instance – it automatically categorizes messages as Promotions, Social, Primary, or Spam, keeping unwanted trash email away from us. This is possible thanks to an NLP task called keyword extraction; with it, Gmail can “read” associate words in subject lines with predetermined tags and automatically assign emails to categories.
  • Supporting… support. Natural Language Processing is often used at help desks for a live support system that delivers valuable information to the employee, like suggested answers or… what mood the client is in (based on identifying certain words or the style of punctuation).
  • Machine translation. Just a few years ago, Google Translate has been universally mocked for its incompetence and was considered a nearly useless tool. But today, machine translation tools are getting better and better, and can actually produce some really decent output. So much so, that Google Translate is currently used by 500 million people every day to understand more than 100 world languages. And you’ve guessed it – it’s all possible thanks to NLP!
  • Aircraft maintenance (!). That’s an interesting one. Thanks to NLP tools, aircraft mechanics can synthesize information from immensely wordy aircraft manuals more easily. This is based on Natural Language Generation – NLG for short – which is very efficient at text summarization (for example, it can also create short excerpts from thousands of news pieces – ideal for FinTechs or media companies).
  • Smart home devices and more. We’ve already mentioned Alexa and Google’s Assistant, so let’s just summarize that NLP enables these devices to process voice commands and perform the right actions. NLP also works behind the scenes on… your smartphone, allowing the system to understand your instructions.
  • Autocorrect, autocomplete. These tools (especially useful for smartphone users with big fingers) make writing easier. Thanks to NLP, they can identify the closes possible term to your misspelling (or automatically replace the wrongly spelt word) or identify the context of your message and suggest “autocomplete” words.

Tools used for NLP

There are many different tools available for all types of Natural Language Processing tasks. Some of them are free to use (open source), others are premium, developed by leading computing enterprises. Depending on the goals, NLP can be empowered by multiple different applications for areas like automatic text summarization, topic extraction, entity recognition, sentiment analysis, or speech tagging.
Now, let’s take a look at a few examples.

Natural Language Toolkit (NLTK)

Citing nltk.org, NLTK is a leading platform for building Python programs to work with human language data. The platform contains detailed introductions to programming fundamentals alongside topics like computational linguistics and elaborate API documentations. As a result, NLTK can be used not only by engineers but also by linguists or researchers.
NLTK has been called great for teaching and to play with natural language. So, if you’re not a programming mastermind, this might be a good tool to start with.

spaCy

SpaCy is a text analytics library that enables developers to tackle a variety of NLP projects. In contrast to NLTK, which can be used for teaching and research, spaCy is mainly used for professional software development.
As spacy.io puts it, spaCy is designed to help in real work — to build real products or gather real insights. The library respects the user’s time is easy to install, and its API is simple and productive.

Spark NLP

Spark NLP is a text processing library that aims at advanced natural language processing. The library provides production-grade, scalable, and trainable versions of the latest research in
natural language processing.
Spark NLP is also the most widely used NLP library in the enterprise.

Future of Natural Language Processing

As for 2021, the ambiguity of the human language is one of the biggest challenges NLP must face.
One of the most interesting examples are irony and sarcasm. Since they’re meant to say exactly the opposite of what’s literally said or written, NLP may fail at identifying the correct meaning (but hey – even people fail to understand sarcasm sometimes). Currently, Natural Language Processing tries to overcome this challenge by looking for phrases that are frequent companions of irony – like, for example, “year, right!” or “whatever”.
Some of the other challenges include colloquialisms and slang, domain-specific language, or low-resource languages.
Yet, although Natural Language Processing still has its limitations, it made a lightspeed evolution jump in the last few years and currently offers many interesting benefits to businesses. And its future looks very bright. With the rise of new technologies, NLP will certainly become even more useful and precise.

This Article Was Brought to You by the Innovation Lab

The Innovation Lab is a new initiative aimed at supporting companies in embodying groundbreaking ideas. The Lab’s prototypes serve as a baseline for assessing value and risks to enable optimal investment decisions.
With a firm belief in software craftsmanship and rapid prototyping, we are exploring the latest technologies involving Data Engineering, Data Science, Computer Vision, IoT, modern visualization areas (3D/AR/VR) and more.
Within the Innovation Lab, we also use our own Natural Language Processing frameworks, which enable us to extract the essence out of text data and use it in the most beneficial way.

Sources:
1) https://monkeylearn.com/blog/nlp-benefits/
2) https://capacity.com/enterprise-ai/faqs/what-are-the-advantages-of-natural-language-processing-nlp/
3) https://www.forbes.com/sites/bernardmarr/2019/06/03/5-amazing-examples-of-natural-language-processing-nlp-in-practice/?sh=1c0515531b30
4) https://www.wonderflow.ai/blog/20-natural-language-processing-examples-for-businesses
Questions?

Get in touch with us to learn more about the subject and related solutions

Explore related posts