Skip to main content

Subsets of Artificial Intelligence

Following are the most common subsets of AI:

  • Machine Learning
  • Deep Learning
  • Natural Language processing
  • Expert System
  • Robotics
  • Machine Vision
  • Speech Recognition

Note: Among all of the above, Machine learning plays a crucial role in AI. Machine learning and deep learning are the ways of achieving AI in real life.

Subsets of AI

Machine Learning

Machine learning is a part of AI which provides intelligence to machines with the ability to automatically learn with experiences without being explicitly programmed.

  • It is primarily concerned with the design and development of algorithms that allow the system to learn from historical data.
  • Machine Learning is based on the idea that machines can learn from past data, identify patterns, and make decisions using algorithms.
  • Machine learning algorithms are designed in such a way that they can learn and improve their performance automatically.
  • Machine learning helps in discovering patterns in data.

Types of Machine Learning

Subsets of AI

Machine learning can be subdivided intothe main three types:

  • Supervised learning:
    Supervised learning is a type of machine learning in which machine learn from known datasets (set of training examples), and then predict the output. A supervised learning agent needs to find out the function that matches a given sample set.
    Supervised learning further can be classified into two categories of algorithms:
    1. Classifications
    2. Regression
  • Reinforcement learning:
    Reinforcement learning is a type of learning in which an AI agent is trained by giving some commands, and on each action, an agent gets a reward as a feedback.Using these feedbacks, agent improves its performance.
    Reward feedback can be positive or negative which means on each good action, agent receives a positive reward while for wrong action, it gets a negative reward.
    Reinforcement learning is of two types:
    1. Positive Reinforcement learning
    2. Negative Reinforcement learning
  • Unsupervised learning:
    Unsupervised learning is associated with learning without supervision or training. In unsupervised learning, the algorithms are trained with data which is neither labeled nor classified. In unsupervised learning, the agent needs to learn from patterns without corresponding output values.
    Unsupervised learning can be classified into two categories of algorithms:
    1. Clustering
    2. Association

Natural Language processing

Natural language processing is a subfield of computer science and artificial intelligence. NLP enables a computer system to understand and process human language such as English.

NLP plays an important role in AI as without NLP, AI agent cannot work on human instructions, but with the help of NLP, we can instruct an AI system on our language. Today we are all around AI, and as well as NLP, we can easily ask Siri, Google or Cortana to help us in our language.

Natural language processing application enables a user to communicate with the system in their own words directly.

The Input and output of NLP applications can be in two forms:

  • Speech
  • Text

Deep Learning

Deep learning is a subset of machine learning which provides the ability to machine to perform human-like tasks without human involvement. It provides the ability to an AI agent to mimic the human brain. Deep learning can use both supervised and unsupervised learning to train an AI agent.

  • Deep learning is implemented through neural networks architecture hence also called a deep neural network.
  • Deep learning is the primary technology behind self-driving cars, speech recognition, image recognition, automatic machine translation, etc.
  • The main challenge for deep learning is that it requires lots of data with lots of computational power.

How deep learning works:

  • Deep Learning Algorithms work on deep neural networks, so it is called deep learning. These deep neural networks are made of multiple layers.
  • The first layer is called an Input layer, the last layer is called an output layer, and all layers between these two layers are called hidden layers.
  • In the deep neural network, there are multiple hidden layers, and each layer is composed of neurons. These neurons are connected in each layer.
  • The input layer receives input data, and the neurons propagate the input signal to its above layers.
  • The hidden layers perform mathematical operations on inputs, and the performed data forwarded to the output layer.
  • The output layer returns the output to the user.
Subsets of AI

Expert Systems

  • An expert system is an application of artificial intelligence. In artificial intelligence, expert systems are the computer programs that rely on obtaining the knowledge of human experts and programming that knowledge into a system.
  • Expert systems emulate the decision-making ability of human experts. These systems are designed to solve the complex problem through bodies of knowledge rather than conventional procedural code.
  • One of the examples of an expert system is a Suggestion for the spelling error while typing in the Google search box.
  • Following are some characteristics of expert systems:
    • High performance
    • Reliable
    • Highly responsive
    • Understandable

Robotics

  • Robotics is a branch of artificial intelligence and engineering which is used for designing and manufacturing of robots.
  • Robots are the programmed machines which can perform a series of actions automatically or semi-automatically.
  • AI can be applied to robots to make intelligent robots which can perform the task with their intelligence. AI algorithms are necessary to allow a robot to perform more complex tasks.
  • Nowadays, AI and machine learning are being applied on robots to manufacture intelligent robots which can also interact socially like humans. One of the best examples of AI in robotics is Sophia robot.

Machine Vision

  • Machine vision is an application of computer vision which enables a machine to recognize the object.
  • Machine vision captures and analyses visual information using one or more video cameras, analog-to-digital conversations, and digital signal processing.
  • Machine vision systems are programmed to perform narrowly defined tasks such as counting objects, reading the serial number, etc.
  • Computer systems do not see in the same way as human eyes can see, but it is also not bounded by human limitations such as to see through the wall.
  • With the help of machine learning and machine vision, an AI agent can be able to see through walls.

Speech Recognition:

Speech recognition is a technology which enables a machine to understand the spoken language and translate into a machine-readable format. It can also be said as automatic Speech recognition and computer speech recognition. It is a way to talk with a computer, and on the basis of that command, a computer can perform a specific task.

There is some speech recognition software which has a limited vocabulary of words and phrase. This software requires unambiguous spoken language to understand and perform specific task. Today's there are various software or devices which contains speech recognition technology such as Cortana, Google virtual assistant, Apple Siri, etc.

We need to train our speech recognition system to understand our language. In previous days, these systems were only designed to convert the speech to text, but now there are various devices which can directly convert speech into commands.

Speech recognition systems can be used in the following areas:

  • System control or navigation system
  • Industrial application
  • Voice dialing system

There are two types of speech recognition

  1. Speaker Dependent
  2. Speaker Independent

Anurag Rana

Comments

Popular posts from this blog

JAVA Scrollbar, MenuItem and Menu, PopupMenu

ava AWT Scrollbar The  object  of Scrollbar class is used to add horizontal and vertical scrollbar. Scrollbar is a  GUI  component allows us to see invisible number of rows and columns. AWT Scrollbar class declaration public   class  Scrollbar  extends  Component  implements  Adjustable, Accessible   Java AWT Scrollbar Example import  java.awt.*;   class  ScrollbarExample{   ScrollbarExample(){               Frame f=  new  Frame( "Scrollbar Example" );               Scrollbar s= new  Scrollbar();               s.setBounds( 100 , 100 ,  50 , 100 );               f.add(s);               f.setSize( 400 , 400 );               f.setLayout( null );               f.setVisible( true );   }   public   static   void  main(String args[]){           new  ScrollbarExample();   }   }   Output: Java AWT Scrollbar Example with AdjustmentListener import  java.awt.*;   import  java.awt.event.*;   class  ScrollbarExample{        ScrollbarExample(){               Frame f=  new  Frame( "Scro

Difference between net platform and dot net framework...

Difference between net platform and dot net framework... .net platform supports programming languages that are .net compatible. It is the platform using which we can build and develop the applications. .net framework is the engine inside the .net platform which actually compiles and produces the executable code. .net framework contains CLR(Common Language Runtime) and FCL(Framework Class Library) using which it produces the platform independent codes. What is the .NET Framework? The Microsoft .NET Framework is a platform for building, deploying, and running Web Services and applications. It provides a highly productive, standards-based, multi-language environment for integrating existing investments with next-generation applications and services as well as the agility to solve the challenges of deployment and operation of Internet-scale applications. The .NET Framework consists of three main parts: the common language runtime, a hierarchical set of unified class librari

C++ this Pointer, static, struct and Enumeration

C++ this Pointer In C++ programming,  this  is a keyword that refers to the current instance of the class. There can be 3 main usage of this keyword in C++. It can be used  to pass current object as a parameter to another method. It can be used  to refer current class instance variable. It can be used  to declare indexers. C++ this Pointer Example Let's see the example of this keyword in C++ that refers to the fields of current class. #include <iostream>    using   namespace  std;   class  Employee {       public :           int  id;  //data member (also instance variable)               string name;  //data member(also instance variable)            float  salary;          Employee( int  id, string name,  float  salary)             {                   this ->id = id;                  this ->name = name;                  this ->salary = salary;            }             void  display()             {                 cout<<id<< "  " <<name<&