banner18

Machine Learning VS Natural Language Processing

 

Introduction:

Various technological advancements have had an enhancing transformative effect on our daily lives. Emerging technologies like Artificial Intelligence, Cyber Security, Machine Learning, Natural Language Processing, etc; are becoming increasingly prevalent in our lives. The products of such advancements are seen in the form of new effective features in smartphones and laptops, automation devices, etc.

One of the most discussed technologies is Artificial Intelligence. Such emerging disciplines are very advanced and intricate. Some terms/domains like Machine Learning, Natural Language Processing, etc; are used synonymously. However, such domains are to be well understood and differentiated. This article is aimed at making one understand the fundamental differences between Machine Learning and Natural Language Processing.

Machine Learning(ML) and Natural Language Processing(NLP) are both sub-domains of Artificial Intelligence(AI) which is a branch of Computer Science(CS). The Venn diagram depicted below illustrates the relationship among five main domains, namely, CS, AI, ML, DL, and NLP.

 

 

CS = Computer Science

AI = Artificial Intelligence

ML = Machine Learning

DL = Deep Learning

NLP = Natural Language Processing

 

Artificial Intelligence:

Artificial Intelligence is the branch of Computer Science that is concerned with machines or systems that are capable of cognitive abilities, rational thinking, and decision-making abilities that resemble human intelligence. It is a wide domain consisting of various concepts and other sub-domains. Machine Learning and Natural Language Processing are sub-sets of Artificial Intelligence.

Machine Learning:

What is Machine Learning?

Machine Learning can be considered as a form of applied statistics. This sub-field of Artificial Intelligence makes use of various statistical techniques to build applications that learn automatically from data provided in the form of structured observations. The main aim of a machine learning algorithm is to make an application learn autonomously via experience in order to improve accuracy for a specific task. The Machine Learning algorithms are trained to find certain characteristic patterns in the data(training data) provided to it and this learning is used to make decisions and predictions on unseen/new data. The better the algorithm, the large and more varied the training data is, the better is the learning, and the more accurate would be the decisions and predictions for the new required data.

Basic Steps in building a Machine Learning Application:

Machine Learning: A Quick Introduction and Five Core Steps - Centric  Consulting

Image Source: centricconsulting.com

  • Obtaining/Collecting Data

The fundamental step in developing a Machine Learning Model is to collect required and appropriate data. More is the quantity of data and highly varied is the data, more accurate would be the predictions obtained or decisions made.

  • Preparing Data

Real-world data is quite noisy and may have several unnecessary elements. It is extremely crucial to provide data in an organized format for proper training of the model.

  • Training a model on the data using an algorithm

Based on the kind of problem and the output labels, an appropriate algorithm is to be chosen using which the model can be trained on the training data.

  • Testing the model

Post successful training of the model, the model can be used to make required predictions on unseen/new data. Testing measures like Accuracy, True Positive Rate, etc; can be used to determine how good the model is.

  • Improving the model

The process of training and testing Machine Learning models is an iterative process. The model’s results are to be reviewed and based on the observations, new techniques are to be applied to improve the model are explained as follows: 

  • Supervised Learning:
  • One of the most common types of learning.
  • Used when the data is labeled data or in other words, when the output is definite.
  • Can further be categorized into two types:
    • Regression(Output Label = Continuous)
    • Classification(Output Label = Discrete)
  • Examples: Decision Trees, Naïve Bayes, KNN algorithms.

 

  • Unsupervised Learning:
  • Used when the data is not labeled.
  • Allows the model to work on its own to discover patterns and information that were not previously detected.
  • Types:
    • Clustering(To find natural groups/clusters in data)
    • Association(To establish association between data objects)
  • Examples: K-Means, PCA algorithms.

 

  • Semi-supervised Learning:
  • Makes use of both labeled and unlabeled data for training.
  • Generally uses a combination of a small amount of labeled data and a large amount of unlabeled data.
  • Examples: Self Training, Mixture models.

 

  • Reinforcement Learning:
  • Reinforcement Algorithms learn to react to a specific environment.
  • Learning is done based on interaction with and feedback from the environment.
  • Examples: Markov Decision Process, Q-learning algorithms.

 

Natural Language Processing:

What is Natural Language Processing?

Natural Language Processing is the sub-field of Artificial Intelligence that is concerned with giving a machine the ability to understand and interpret natural human language. It creates an application/model on the basis of computational linguistics, machine learning, and deep learning techniques. The basic aim of a Natural Language Processing application is to process and understand human language that may be provided in the form of text or voice. Machine Learning models are often a part of building a Natural Language Processing application.

Basic Steps in building a Natural Language Processing application:

https://datascience.foundation/img/pdf_images/the_source_of_natural_language_could_be__sound_or_text.png

Image Source: datascience.foundation

As mentioned before, the input data for an NLP application can be in the form of text or voice. There are mainly six basic steps followed that help the machine to understand the human language input. In the case of voice data as input, Phonological analysis is done where the analog acoustic signals are converted to digital signals and these digital signals are structured systematically for analysis. The text-based input is firstly tokenized into segments for further analysis.

  • Morphological Analysis

The root word of the term morphology is the Greek word ‘morph’ meaning shape. This step of NLP is concerned with distinguishing the atomic/primitive words in the input. Compound words would be analyzed by dividing them into basic distinct parts like prefix, suffix, etc.

  • Lexical Analysis

This step in NLP is concerned with the identification and analysis of the structures of the words.

  • Syntactic Analysis

This step in NLP is concerned with the identification and analysis of the grammatical structures and relationships amongst the distinct terms/words.

 

1. Semantic Analysis

This stage in NLP is concerned with the interpretation of the probable meaning based on the interactions between different words in a sentence.

2. Disclosure Integration

This stage of NLP focuses on interpreting the meaning of a piece of text based on relationships and connections between different sentences.

3. Pragmatic Analysis

This step of NLP is focused on analyzing and extending the meaning of some text based on features that may not be explicit. This step is quite intricate and requires external world knowledge to analyze the implicit intentions or ideas being conveyed implicitly via the text.

 

Components of NLP:

 

Image Source: Experfy

  • Natural Language Generation
  • Transforms structured data into text.
  • Uses ML, DL techniques to generate natural language.

 

  • Natural Language Understanding
  • Transforms text into structured data.
  • Focuses on how unstructured data is rearranged so that machines would be able to understand and interpret it.

 

Brief Summary:

Machine Learning techniques are used to build applications that learn based on data and experience.

Natural Language Processing techniques are used to understand and analyze natural human language.

Machine Learning and Natural Language Processing can be used to create powerful applications that can learn via proper interpretation and analysis of natural languages.

  •  May, 11, 2021
  • Sruthi Sudheer
POST A COMMENT
We'll never share your email with anyone else.
Save my name, email, and website in this browser for the next time I comment.
Latest Blogs