Natural Language Processing

Slideshow

NLP

Natural language processing is a field of artificial intelligence that dates back to the early 1950s. It attempts to break down the barriers of communication between humans and machines. It is described as the ability of a machine to analyze and understand natural language. In order for machines to understand humans, they must be able to determine the meaning of natural language. Computers are great at processing syntax, or structure, but they are limited in their ability to interpret the semantics, or meaning, from the syntax. The goal of natural language processing is for computers to gain a complete understanding of human language and eventually communicate with their human counterparts in a way that seems effortless and natural. The field of natural language processing is vast but can be broken down into natural language components, natural language understanding, conversational agents, and deep learning integration.

To begin with, natural language can be broken down into five major components. These are morphology, syntax, semantics, pragmatics, and phonology. Morphology deals with the intricate relationships between words. Syntax is the structure and construction of sentences. Semantics is the meaning of words. Pragmatics deals with the purpose or goal of language. Phonology is the acoustics of spoken language.

Secondly, computers are only capable of precise and logical thought. The reason they understand artificial languages such as C++ and Java is that there is zero ambiguity. Every instruction given in these languages is associated with a specific string of binary digits. Machines aren’t capable of abstracting new ones and zeroes based on the instructions we give them. The specificity and precision of artificial language is what makes it hard for computers to understand our natural language. Humans often speak in a vague and ambiguous manner, making it impossible for computers to deduce what we are saying. The process of teaching computers how to understand us can be broken down into three major steps. First, the computer must determine and label parts of speech from natural language such as nouns and verbs. This is commonly known as POS tagging. Next, the computer creates a tree structure of the data, along with each word labeled with it’s respective POS. Once it has this tree structure, the machine must determine the meaning and context of each word based on relationships and depth within the tree structure. This becomes more complex if there is context or a commonly understood goal outside of what is being said in that specific sentence. Words or phrases that have several meanings can create a lot of confusion for machines and add a level of complication to understanding semantics. Words with multiple meanings are known as having polysemy. In order to combat polysemy, a technique called word sense disambiguation is used. Disambiguation requires previous examples of each word’s use in order to work. If someone said, “The tank is full of helium” versus “The tank is full of soldiers” the machine would need to disambiguate the word tank to be a canister.

Moreover, common use cases for natural language processing include machine translation, automatic summarization, spam filtering, and sentiment analysis. Machine translation is the process of converting one natural language to another. A commonly known tool that uses machine translation is Google Translate. Large social media companies such as Facebook and Twitter now feature a globe icon next to some posts, indicating that the post has been translated to your native language by a machine. Automatic summarization is the process of condensing long articles into quick summaries. Computers can do this by parsing through the data in articles to determine which statements or facts capture the article as a whole. This is commonly used by professionals who have to comb through lots of data on a daily basis. Spam filtering is something that everyone is familiar with. Computers often use natural language processing to scan the subject line and text of the document. After scanning this data, the computer calculates the likeliness that an email is spam based upon millions of past emails. Sentiment analysis is all about tracking the tone of written messages. It is becoming more popular with businesses as the importance of social media grows. Businesses can track how their customers feel about certain advertisements and easily identify customers who are unsatisfied.

Additionally, conversational agents are the specific machines or software that communicate with us. An early conversational agent, known as the Eliza, was created in 1964 by Joseph Weizenbaum. Eliza was a machine that acted like a psychotherapist. People could ask her about their mental health and it would process the language and respond accordingly. In 1972, Eliza met another conversational agent named Parry and they had the first computer-to-computer conversation in English. The results of this conversation were comical because it ended with them getting into a realistic argument with one another. Parry ends the conversation by telling Eliza that she is “entitled to her own opinion.” Some conversational agents that are growing in popularity today are voice assistants such as Siri, Google Assistant, Alexa, and Cortana. There is a four step process that these voice assistants use to respond to us. First, they must convert speech to text. In order to do this, they must process the sounds and identify the discrete phonemes and words. There are 44 different phonemes in the English language that the machine must identify. Once this is complete, the text must be converted to an intent. The process of determining the intent boils down to determining what action the voice assistant must perform in order to provide the correct response to the user. After the intent of the user has been determined, an action must be performed by the voice assistant. The voice assistant may have to use external APIs to retrieve data such as the weather or sports scores. Once the correct information has been collected by the voice assistant, the final step is ready to happen. The voice assistant responds to the user with the information it has collected. Another form of conversational agent is a chatbot. Chatbots interact with users through messaging platforms. These are starting to become abundant in the retail space. Retailers like Walmart use chatbots integrated with Facebook Messenger to connect with users. Chatbots are now accessible to all software developers through tools such as DialogFlow.

DialogFlow is a tool that makes it easy for developers to create their own conversational agents. There are five main components to DialogFlow. These are entities, intents, actions, fulfillments and training. Entities are like variables that the user can specify, each word processed funnels into one of the entities. Intents determine which actions are going to take place based on the entities detected in user responses. Actions are the functions that are going to be performed based on the intents. Actions can either be fulfilled right inside of DialogFlow or can be sent outside of DialogFlow to be completed by external APIs. DialogFlow features lots of one-click integrations which allow developers to quickly configure their apps for the most popular chatbot platforms today. Developers can integrate with platforms like Amazon Alexa and Facebook Messenger in just a few clicks.

Lastly, the field of deep learning has given natural language processing a boost in recent years. Deep learning in natural language processing is the process of passing in massive amounts of labeled questions, statements, and dialogues for the machine to process and understand. The machine’s idea of natural language can be morphed from this labeled input. The idea is that if enough conversations and dialogues are passed in, the computer will be able to come up with its own responses based on all of that past data. In the ideal situation, the computer shouldn’t be parroting exactly what it has processed from previous conversations, it should be using some slight variation in order to sound less like a machine. One of the main hurdles that natural language processing is facing right now is not having enough labeled data to process and use in order to deeply learn natural language. Tools like DialogFlow are allowing Google to collect millions of user responses that can then be used to make the natural language understanding of machines more precise. The competition of companies like Amazon, Microsoft, Apple and Google is also speeding up the process to reach the goal of complete natural language understanding. On the other hand, the collaboration of colleges and clubs around the world is also speeding up the rate at which the machines are understanding and communicating with us in a natural and effortless manner.

In conclusion, natural language processing has made tremendous progress in the recent past and has gained many applications. Machines are getting closer to developing full natural language understanding every day. In 1953, Alan Turing said, “A computer would deserve to be called intelligent if it could deceive a human into believing that it was human.” The average conversational agent today has almost reached this point. In a few years time, machines could be able to understand and speak natural language as if it was binary.

Works Cited

“The Definitive Guide to Natural Language Processing.” MonkeyLearn Blog, 13 Nov. 2017, monkeylearn.com/blog/definitive-guide-natural-language-processing/.

“How Do Digital Voice Assistants (E.g. Alexa, Siri) Work?” USC Marshall, http://www.marshall.usc.edu/blog/how-do-digital-voice-assistants-eg-alexa-siri-work. Kiser, Matt.

“Introduction to Natural Language Processing (NLP).” Algorithmia Blog, 10 Oct. 2017, blog.algorithmia.com/introduction-natural-language-processing-nlp/.

“What Is Natural Language Processing and How Does It Work?” Text2Speech Blog, 14 Aug. 2017, blog.neospeech.com/what-is-natural-language-processing/.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s