Wednesday, November 20, 2019

WHAT ARTIFICIAL INTELLIGENCE CANNOT DO , a grim note to the top 100 intellectuals of this planet , Part 5 - Capt Ajit Vadakayil



THIS POST IS CONTINUED FROM PART 4, BELOW--

https://ajitvadakayil.blogspot.com/2019/11/what-artificial-intelligence-cannot-do.html









Deep learning is a type of machine learning (ML) and artificial intelligence (AI) that imitates the way humans gain certain types of knowledge. 

Deep learning is an important element of data science, which includes statistics and predictive modeling. It is extremely beneficial to data scientists who are tasked with collecting, analyzing and interpreting large amounts of data; deep learning makes this process faster and easier.

Deep learning represents the very cutting edge of artificial intelligence (AI). Instead of teaching computers to process and learn from data (which is how machine learning works), with deep learning, the computer trains itself to process and learn from data.


Deep learning (DL) is a subset of ML, in which multiple levels of models work together at more complex tasks, with each level of model relying on outputs from a prior level to perform a higher-level function. .





Deep learning (also known as deep structured learning or hierarchical learning) is part of a broader family of machine learning methods based on artificial neural networks. Learning can be supervised, semi-supervised or unsupervised.

The most important difference between deep learning and traditional machine learning is its performance as the scale of data increases. When the data is small, deep learning algorithms don't perform that well. This is because deep learning algorithms need a large amount of data to understand it perfectly

You need to learn Machine Learning first then you can plan for Deep Learning or AI. Machine Learning is mandatory to learn deep learning or AI

Deep learning  is a field of study that gives computers the ability to learn without being explicitly programme  – while adding that it tends to result in higher accuracy, require more hardware or training time, and perform exceptionally well on machine perception tasks that involved unstructured data such as blobs of pixels or text.


We refer to ‘deep learning’ because the neural networks have various (deep) layers that enable learning. Just about any problem that requires “thought” to figure out is a problem deep learning can learn to solve.

With machine learning, you need fewer data to train the algorithm than deep learning. Deep learning requires an extensive and diverse set of data to identify the underlying structure. Besides, machine learning provides a faster-trained model. Most advanced deep learning architecture can take days to a week to train. 

The advantage of deep learning over machine learning is it is highly accurate. You do not need to understand what features are the best representation of the data; the neural network learned how to select critical features. In machine learning, you need to choose for yourself what features to include in the model.


Machine learning does not require the same costly, high-end machines and high-performing GPUs that deep learning does.


In the end, many data scientists choose traditional machine learning over deep learning due to its superior interpretability, or the ability to make sense of the solutions. Machine learning algorithms are also preferred when the data is small.

At its simplest, deep learning can be thought of as a way to automate predictive analytics. While traditional machine learning algorithms are linear, deep learning algorithms are stacked in a hierarchy of increasing complexity and abstraction.

A type of advanced machine learning algorithm, known as artificial neural networks, underpins most deep learning models. As a result, deep learning may sometimes be referred to as deep neural learning or deep neural networking.

Because deep learning models process information in ways similar to the human brain, they can be applied to many tasks people do. Deep learning is currently used in most common image recognition tools, natural language processing and speech recognition software. These tools are starting to appear in applications as diverse as self-driving cars and language translation services.

Deep learning is a subset of machine learning. Usually, when people use the term deep learning, they are referring to deep artificial neural networks, and somewhat less frequently to deep reinforcement learning.


Deep learning is a computer software that mimics the network of neurons in a brain. -- it is called deep learning because it makes use of deep neural networks.

The machine uses different layers to learn from the data. The depth of the model is represented by the number of layers in the model.


Deep learning is the new state of the art in term of AI. In deep learning, the learning phase is done through a neural network. A neural network is an architecture where the layers are stacked on top of each other



The biggest limitation of deep learning models is they learn through observations. This means they only know what was in the data on which they trained. If a user has a small amount of data or it comes from one specific source that is not necessarily representative of the broader functional area, the models will not learn in a way that is generalizable.

Deep learning requires large amounts of data. Furthermore, the more powerful and accurate models will need more parameters, which, in turn, requires more data.

Once trained, deep learning models become inflexible and cannot handle multitasking. They can deliver efficient and accurate solutions, but only to one specific problem. Even solving a similar problem would require retraining the system.

Any application that requires reasoning -- such as programming or applying the scientific method -- long-term planning and algorithmic-like data manipulation is completely beyond what current deep learning techniques can do, even with large data.

Deep learning is a particular kind of machine learning that achieves great power and flexibility by learning to represent the world as nested hierarchy of concepts, with each concept defined in relation to simpler concepts, and more abstract representations computed in terms of less abstract ones.”

The most important difference between deep learning and traditional machine learning is its performance as the scale of data increases. When the data is small, deep learning algorithms don’t perform that well. 

This is because deep learning algorithms need a large amount of data to understand it perfectly. On the other hand, traditional machine learning algorithms with their handcrafted rules prevail in this scenario.


Deep learning is a subset of machine learning that differentiates itself through the way it solves problems. Machine learning requires a domain expert to identify most applied features. On the other hand, deep learning learns features incrementally, thus eliminating the need for domain expertise. 

This makes deep learning algorithms take much longer to train than machine learning algorithms, which only need a few seconds to a few hours. However, the reverse is true during testing. Deep learning algorithms take much less time to run tests than machine learning algorithms, whose test time increases along with the size of the data.




The key difference between deep learning vs machine learning stems from the way data is presented to the system. Machine learning algorithms almost always require structured data, whereas deep learning networks rely on layers of the ANN (artificial neural networks).
.
The biggest advantage Deep Learning algorithms as discussed before are that they try to learn high-level features from data in an incremental manner. This eliminates the need of domain expertise and hard core feature extraction



The difference between neural networks and deep learning lies in the depth of the model. Deep learning is a phrase used for complex neural networks. ...

Deep learning is a Neural Network consisting of a hierarchy of layers, whereby each layer transforms the input data into more abstract representations

Deep-learning networks are distinguished from the more commonplace single-hidden-layer neural networks by their depth; that is, the number of node layers through which data must pass in a multistep process of pattern recognition.

Earlier versions of neural networks such as the first perceptrons were shallow, composed of one input and one output layer, and at most one hidden layer in between. More than three layers (including input and output) qualifies as “deep” learning. So deep is not just a buzzword -- It is a strictly defined term that means more than one hidden layer.



Deep Learning is a subfield of machine learning concerned with algorithms inspired by the structure and function of the brain called artificial neural networks.

In addition to scalability, another often cited benefit of deep learning models is their ability to perform automatic feature extraction from raw data, also called feature learning.

Deep learning algorithms seek to exploit the unknown structure in the input distribution in order to discover good representations, often at multiple levels, with higher-level learned features defined in terms of lower-level features

Deep learning methods aim at learning feature hierarchies with features from higher levels of the hierarchy formed by the composition of lower level features. Automatically learning features at multiple levels of abstraction allow a system to learn complex functions mapping the input to the output directly from data, without depending completely on human-crafted features.

Deep learning allows computational models that are composed of multiple processing layers to learn representations of data with multiple levels of abstraction.

Neural networks are a set of algorithms, modeled loosely after the human brain, that are designed to recognize patterns. They interpret sensory data through a kind of machine perception, labeling or clustering raw input. The patterns they recognize are numerical, contained in vectors, into which all real-world data, be it images, sound, text or time series, must be translated.





In deep-learning networks, each layer of nodes trains on a distinct set of features based on the previous layer’s output. The further you advance into the neural net, the more complex the features your nodes can recognize, since they aggregate and recombine features from the previous layer.




Instances where deep learning becomes preferable include situations where there is a large amount of data, a lack of domain understanding for feature introspection or complex problems, such as speech recognition and natural language processing.

Deep learning and neural networks are picking up steam in applications like self-driving cars, radiology image processing, supply chain monitoring and cybersecurity threat detection.

The difference between neural networks and deep learning lies in the depth of the model. ... The architecture has become more complex but the concept of deep learning is still the same. Albeit there's now an increased number of hidden layers and nodes that integrate to estimate the output(s)


Generative adversarial networks (GANs) are deep neural net architectures comprised of two nets, pitting one against the other (thus the “adversarial”). Generative adversarial networks, or GANs, are a powerful type of neural network used for unsupervised machine learning.

Made up of two competing models which run in competition with one another, GANs are able to capture and copy variations within a dataset  Generative artificial intelligence and deep machine learning are set to build on the progress that basic AI has already made across business and personal computing and daily life

Generative modeling is an unsupervised learning task in machine learning that involves automatically discovering and learning the regularities or patterns in input data in such a way that the model can be used to generate or output new examples that plausibly could have been drawn from the original dataset.

Generative Adversarial Networks – describe pairs of alternately trained models using competing deep learning algorithms. Here, the first model is trained using a second model, to discriminate between actual data and synthetic data. This ability to capture and copy variations within a dataset can be applied for uses such as understanding risk and recovery in healthcare and pharmacology.


Deep learning architectures such as deep neural networks, deep belief networks, recurrent neural networks and convolutional neural networks have been applied to fields including computer vision, speech recognition, natural language processing, audio recognition, social network filtering, machine translation, bioinformatics, drug design, medical image analysis, material inspection and board game programs, where they have produced results comparable to human experts.

Deep is a technical term. It refers to the number of layers in a neural network. A shallow network has one so-called hidden layer, and a deep network has more than one. Multiple hidden layers allow deep neural networks to learn features of the data in a so-called feature hierarchy, because simple features (e.g. two pixels) recombine from one layer to the next, to form more complex features (e.g. a line). 

Nets with many layers pass input data (features) through more mathematical operations than nets with few layers, and are therefore more computationally intensive to train. Computational intensivity is one of the hallmarks of deep learning, and it is one reason why a new kind of chip call GPUs are in demand to train deep-learning models.

A deep neural network (DNN) is an artificial neural network (ANN) with multiple hidden layers of units between the input and output layers.


In exchange for large quantities of data and processing power, deep neural networks have yielded models that provide state of the art predication capabilities in many fields. However, a lack of strong guarantees on their behaviour have raised concerns over their use in safety-critical applications

To achieve an acceptable level of accuracy, deep learning programs require access to immense amounts of training data and processing power, neither of which were easily available to programmers until the era of big data and cloud computing.   


Because deep learning programming can create complex statistical models directly from its own iterative output, it is able to create accurate predictive models from large quantities of unlabeled, unstructured data. This is important as the internet of things (IoT) continues to become more pervasive, because most of the data humans and machines create is unstructured and is not labeled.


Neural networks come in several different forms, including recurrent neural networks, convolutional neural networks, artificial neural networks and feedforward neural networks -- and each has benefits for specific use cases. However, they all function in somewhat similar ways, by feeding data in and letting the model figure out for itself whether it has made the right interpretation or decision about a given data element.


Neural networks involve a trial-and-error process, so they need massive amounts of data on which to train. It's no coincidence neural networks became popular only after most enterprises embraced big data analytics and accumulated large stores of data. 

Because the model's first few iterations involve somewhat-educated guesses on the contents of an image or parts of speech, the data used during the training stage must be labeled so the model can see if its guess was accurate. 

This means, though many enterprises that use big data have large amounts of data, unstructured data is less helpful. Unstructured data can only be analyzed by a deep learning model once it has been trained and reaches an acceptable level of accuracy, but deep learning models can't train on unstructured data.

Various different methods can be used to create strong deep learning models. These techniques include learning rate decay, transfer learning, training from scratch and dropout.---

Learning rate decay. The learning rate is a hyperparameter -- a factor that defines the system or sets conditions for its operation prior to the learning process -- that controls how much change the model experiences in response to the estimated error every time the model weights are altered. Learning rates that are too high may result in unstable training processes or the learning of a suboptimal set of weights. Learning rates that are too small may produce a lengthy training process that has the potential to get stuck.

The learning rate decay method -- also called learning rate annealing or adaptive learning rates -- is the process of adapting the learning rate to increase performance and reduce training time. The easiest and most common adaptations of learning rate during training include techniques to reduce the learning rate over time.

Transfer learning. This process involves perfecting a previously trained model; it requires an interface to the internals of a preexisting network. First, users feed the existing network new data containing previously unknown classifications. Once adjustments are made to the network, new tasks can be performed with more specific categorizing abilities. This method has the advantage of requiring much less data than others, thus reducing computation time to minutes or hours.

Training from scratch. This method requires a developer to collect a large labeled data set and configure a network architecture that can learn the features and model. This technique is especially useful for new applications, as well as applications with a large number of output categories. However, overall, it is a less common approach, as it requires inordinate amounts of data, causing training to take days or weeks.


Dropout. This method attempts to solve the problem of overfitting in networks with large amounts of parameters by randomly dropping units and their connections from the neural network during training. It has been proven that the dropout method can improve the performance of neural networks on supervised learning tasks in areas such as speech recognition, document classification and computational biology.



Use cases today for deep learning include all types of big data analytics applications, especially those focused on natural language processing, language translation, medical diagnosis, stock market trading signals, network security and image recognition.

Specific fields in which deep learning is currently being used include the following:----

Customer experience. Deep learning models are already being used for chatbots. And, as it continues to mature, deep learning is expected to be implemented in various businesses to improve the customer experiences and increase customer satisfaction.
Text generation. Machines are being taught the grammar and style of a piece of text and are then using this model to automatically create a completely new text matching the proper spelling, grammar and style of the original text.
Aerospace and military. Deep learning is being used to detect objects from satellites that identify areas of interest, as well as safe or unsafe zones for troops.
Industrial automation. Deep learning is improving worker safety in environments like factories and warehouses by providing services that automatically detect when a worker or object is getting too close to a machine.
Adding color. Color can be added to black and white photos and videos using deep learning models. In the past, this was an extremely time-consuming, manual process.
Medical research. Cancer researchers have started implementing deep learning into their practice as a way to automatically detect cancer cells.

Computer vision. Deep learning has greatly enhanced computer vision, providing computers with extreme accuracy for object detection and image classification, restoration and segmentation.


Limitations and challenges--
The issue of biases is a major problem for deep learning models.  This bias I call ( BIAS2 ) has nothing to do with bias related to variance . I will go into great detail later..

If a model trains on data that contains biases, the model will reproduce those biases in its predictions. This has been a vexing problem for deep learning programmers, because models learn to differentiate based on subtle variations in data elements.

Often, the factors it determines are important are not made explicitly clear to the programmer. This means, for example, a facial recognition model might make determinations about people's characteristics based on things like race or gender without the programmer being aware.

The learning rate can also become a major challenge to deep learning models. If the rate is too high, then the model will converge too quickly, producing a less-than-optimal solution. If the rate is too low, then the process may get stuck, and it will be even harder to reach a solution.

The hardware requirements for deep learning models can also create limitations. Multicore high-performing graphics processing units (GPUs) and other similar processing units are required to ensure improved efficiency and decreased time consumption. 

However, these units are expensive and use large amounts of energy. Other hardware requirements include random access memory (RAM) and a hard drive or RAM-based solid-state drive (SSD).

Deep reinforcement learning has emerged as a way to integrate AI with complex applications, such as robotics, video games and self-driving cars. The primary difference between deep learning and reinforcement learning is, while deep learning learns from a training set and then applies what is learned to a new data set, deep reinforcement learning learns dynamically by adjusting actions using continuous feedback in order to optimize the reward.

A reinforcement learning agent has the ability to provide fast and strong control of generative adversarial networks (GANs). The Adversarial Threshold Neural Computer (ATNC) combines deep reinforcement learning with GANs in order to design small organic molecules with a specific, desired set of pharmacological properties.

GANs are also being used to generate artificial training data for machine learning tasks, which can be used in situations with imbalanced data sets or when data contains sensitive information.

Generative adversarial networks (GANs) are deep neural net architectures comprised of two nets, pitting one against the other (thus the “adversarial”). Generative adversarial networks, or GANs, are a powerful type of neural network used for unsupervised machine learning.

Made up of two competing models which run in competition with one another, GANs are able to capture and copy variations within a dataset  Generative artificial intelligence and deep machine learning are set to build on the progress that basic AI has already made across business and personal computing and daily life

Generative adversarial networks (GANs) are deep neural net architectures comprised of two nets, pitting one against the other (thus the “adversarial”). Generative adversarial networks, or GANs, are a powerful type of neural network used for unsupervised machine learning. 

Made up of two competing models which run in competition with one another, GANs are able to capture and copy variations within a dataset  Generative artificial intelligence and deep machine learning are set to build on the progress that basic AI has already made across business and personal computing and daily life

Generative modeling is an unsupervised learning task in machine learning that involves automatically discovering and learning the regularities or patterns in input data in such a way that the model can be used to generate or output new examples that plausibly could have been drawn from the original dataset.

GANs are a clever way of training a generative model by framing the problem as a supervised learning problem with two sub-models: the generator model that we train to generate new examples, and the discriminator model that tries to classify examples as either real (from the domain) or fake (generated). The two models are trained together in a zero-sum game, adversarial, until the discriminator model is fooled about half the time, meaning the generator model is generating plausible examples.

Unlike machine learning, deep learning uses multiple layers and structures algorithms such that an artificial neural network is created that learns and makes decisions on its own!
.
Human brains are made up of connected networks of neurons. ANNs seek to simulate these networks and get computers to act like interconnected brain cells, so that they can learn and make decisions in a more humanlike manner.
.
ANN that is made up of more than three layers – i.e. an input layer, an output layer and multiple hidden layers – is called a ‘deep neural network’, and this is what underpins deep learning. A deep learning system is self-teaching, learning as it goes by filtering information through multiple hidden layers, in a similar way to humans.


As you can see, the two are closely connected in that one relies on the other to function. Without neural networks, there would be no deep learning.

Artificial Neural Networks (ANNs) were inspired by information processing and distributed communication nodes in biological systems. ANNs have various differences from biological brains. Specifically, neural networks tend to be static and symbolic, while the biological brain of most living organisms is dynamic (plastic) and analog.

Perceptron is a single layer neural network and a multi-layer perceptron is called Neural Networks.

Perceptron is a linear classifier (binary). Also, it is used in supervised learning. It helps to classify the given input data.

The single-layer Perceptron is the simplest of the artificial neural networks (ANNs).

Deep Learning is a collection of statistical machine learning techniques used to learn feature hierarchies based on the concept of artificial neural networks.”

A Deep neural network consists of the following layers:

The Input Layer
The Hidden Layer
The Output Layer
.

The first layer is the input layer which receives all the inputs
The last layer is the output layer which provides the desired output
All the layers in between these layers are called hidden layers.

There can be n number of hidden layers and the number of hidden layers and the number of perceptrons in each layer will entirely depend on the use-case you are trying to solve.

Deep Learning is used in highly computational use cases such as Face Verification, self-driving cars, and so on. Let’s understand the importance of Deep Learning by looking at a real-world use case.


Deep Learning is based on the functionality of a biological neuron, so let’s understand how we mimic this functionality in the artificial neuron (also known as a perceptron):

In a biological neuron, dendrites are used to receive inputs. These inputs are summed in the cell body and through the Axon, it is passed on to the next neuron.

Similar to the biological neuron, a perceptron receives multiple inputs, applies various transformations and functions and provides an output.

The human brain consists of multiple connected neurons called a neural network, similarly, by combining multiple perceptrons, we’ve developed what is known as a Deep neural network.




A perceptron is a simple model of a biological neuron in an artificial neural network. Perceptron is also the name of an early algorithm for supervised learning of binary classifiers.

The most popular artificial neural network algorithms are:--- 
Perceptron
Multilayer Perceptrons (MLP)
Back-Propagation
Stochastic Gradient Descent
Hopfield Network

Radial Basis Function Network (RBFN)



US psychologist Frank Rosenblatt from Cornell, invented the ‘perceptron’, an algorithm that ran on specific neuron-mimicking hardware and was capable of learning similarly to a neural network: by strengthening or weakening the connections between neighbouring, interconnected neurons. 

The perceptron was the ancestor of artificial neural networks and deep learning, or what we today – 60 years later – understand as the big idea behind ‘artificial intelligence’.

A perceptron is a simple model of a biological neuron in an artificial neural network. The perceptron is a mathematical model of a biological neuron. While in actual neurons the dendrite receives electrical signals from the axons of other neurons, in the perceptron these electrical signals are represented as numerical values. ... As in biological neural networks, this output is fed to other perceptrons.

In machine learning, the perceptron is an algorithm for supervised learning of binary classifiers. A binary classifier is a function which can decide whether or not an input, represented by a vector of numbers, belongs to some specific class.   It is a type of linear classifier, i.e. a classification algorithm that makes its predictions based on a linear predictor function combining a set of weights with the feature vector.

Rosenblatt’s pioneering invention provided an alternative approach, one that enabled computers to go beyond logic, and venture into solving a really hard problem: perception.

Perceptron is a single layer neural network and a multi-layer perceptron is called Neural Networks. Perceptron is a linear classifier (binary). Also, it is used in supervised learning. It helps to classify the given input data.

Backpropagation is a supervised learning algorithm, for training Multi-layer Perceptrons (Artificial Neural Networks). The Backpropagation algorithm looks for the minimum value of the error function in weight space using a technique called the delta rule or gradient descent. The weights that minimize the error function is then considered to be a solution to the learning problem.




A Perceptron is a single layer neural network that is used to classify linear data. The perceptron has 4 important components:--- 
Input
Weights and Bias
Summation Function

Activation or transformation Function


Perceptron  helps to classify the given input data.. In machine learning, the perceptron is an algorithm for supervised learning of binary classifiers. ... It is a type of linear classifier, i.e. a classification algorithm that makes its predictions based on a linear predictor function combining a set of weights with the feature vector.

 One possible strategy is to use a local greedy algorithm which works by computing the error of the perceptron for a given weight vector, looking then for a direction in weight space in which to move, and updating the weight vector by selecting new weights in the selected search direction. The purpose of the learning rule is to train the network to perform some task. ...

The learning rule is then used to adjust the weights and biases of the network in order to move the network outputs closer to the targets. The perceptron learning rule falls in this supervised learning category

A single perceptron can only be used to implement linearly separable functions. It takes both real and boolean inputs and associates a set of weights to them, along with a bias  We learn the weights, we get the function. Let's use a perceptron to learn an OR function.

 The Perceptron is inspired by the information processing of a single neural cell called a neuron. A neuron accepts input signals via its dendrites, which pass the electrical signal down to the cell body. .

If the decision boundary is non-linear, you really can’t use the Perceptron The perceptron is the basic unit powering what is today known as deep learning. It is the artificial neuron that, when put together with many others like it, can solve complex, undefined problems much like humans do. 

Understanding the mechanics of the perceptron (working on its own) and multilayer perceptrons (working together) will give you an important foundation for understanding and working with modern neural networks. A perceptron helps to divide a set of input signals into two parts—“yes” and “no”. 

But unlike many other classification algorithms, the perceptron was modeled after the essential unit of the human brain—the neuron and has an uncanny ability to learn and solve complex problems.

A perceptron is a very simple learning machine. It can take in a few inputs, each of which has a weight to signify how important it is, and generate an output decision of “0” or “1”. However, when combined with many other perceptrons, it forms an artificial neural network. A neural network can, theoretically, answer any question, given enough training data and computing power.

What Is a Multilayer Perceptron?

A multilayer perceptron (MLP) is a perceptron that teams up with additional perceptrons, stacked in several layers, to solve complex problems.  

Each perceptron in the first layer on the left (the input layer), sends outputs to all the perceptrons in the second layer (the hidden layer), and all perceptrons in the second layer send outputs to the final layer on the right (the output layer).. sends multiple signals, one signal going to each perceptron in the next layer. For each signal, the perceptron uses different weights.

Every line going from a perceptron in one layer to the next layer represents a different output. Each layer can have a large number of perceptrons, and there can be multiple layers, so the multilayer perceptron can quickly become a very complex system. The multilayer perceptron has another, more common name—a neural network.

A three-layer MLP, is called a Non-Deep or Shallow Neural Network. An MLP with four or more layers is called a Deep Neural Network.


One difference between an MLP and a neural network is that in the classic perceptron, the decision function is a step function and the output is binary. 

In neural networks that evolved from MLPs, other activation functions can be used which result in outputs of real values, usually between 0 and 1 or between -1 and 1. This allows for probability-based predictions or classification of items into multiple labels.

A convolutional neural network (CNN) is a specific type of artificial neural network that uses perceptrons, a machine learning unit algorithm, for supervised learning, to analyze data. CNNs apply to image processing, natural language processing and other kinds of cognitive tasks.

Convolutional neural networks (CNN) are one of the most popular models used today. This neural network computational model uses a variation of multilayer perceptrons and contains one or more convolutional layers that can be either entirely connected or pooled. 

These convolutional layers create feature maps that record a region of image which is ultimately broken into rectangles and sent out for nonlinear processing. 

The CNN model is particularly popular in the realm of image recognition; it has been used in many of the most advanced applications of AI, including facial recognition, text digitization and natural language processing. Other uses include paraphrase detection, signal processing and image classification.


Deconvolutional neural networks utilize a reversed CNN model process. They aim to find lost features or signals that may have originally been considered unimportant to the CNN system's task. This network model can be used in image synthesis and analysis.

Modeled in accordance with the human brain, a Neural Network was built to mimic the functionality of a human brain. The human brain is a neural network made up of multiple neurons, similarly, an Artificial Neural Network (ANN) is made up of multiple perceptrons

A neural network consists of three important layers:--

Input Layer: As the name suggests, this layer accepts all the inputs provided by the programmer.
Hidden Layer: Between the input and the output layer is a set of layers known as Hidden layers. In this layer, computations are performed which result in the output.
Output Layer: The inputs go through a series of transformations via the hidden layer which finally results in the output that is delivered via this layer.

Neural networks can be hardware- (neurons are represented by physical components) or software-based (computer models), and can use a variety of topologies and learning algorithms.
To understand neural networks, we need to break it down and understand the most basic unit of a Neural Network, i.e. a Perceptron.


Like Logistic Regression, the Perceptron is a linear classifier used for binary predictions. This means that in order for it to work, the data must be linearly separable.

Although the Perceptron is only applicable to linearly separable data, the more detailed Multilayered Perceptron can be applied to more complicated nonlinear datasets. This includes applications in areas such as speech recognition, image processing, and financial predictions just to name a few.

Neural networks are a specific set of algorithms that have revolutionized machine learning. They are inspired by biological neural networks and the current so-called deep neural networks have proven to work quite well.


Neural networks, a beautiful biologically-inspired programming paradigm which enables a computer to learn from observational data.   Deep learning, a powerful set of techniques for learning in neural networks.

Deep learning is the reigning monarch of AI. In the six years since it exploded into the mainstream, it has become the dominant way to help machines sense and perceive the world around them.

Deep Learning is a machine learning technique that uses structures called “neural networks” that are  inspired by the human brain. These consist of a set of layered units, modeled after neurons. Each layer of units processes a set of input values and produces output values that are passed onto the next layer of units.

Neural networks often consist of more than 100 layers, with a large number of units in each layer to enable the recognition of extremely complex and precise patterns in data.

To explore this further, consider image recognition software that utilizes neural networks to identify a picture  of an elephant. The first layer of units might look at the raw image data for the most basic patterns, perhaps  that there is a thing with what appears to be four legs. Then the next layer would look for patterns within these  patterns, perhaps that it is an animal. Then maybe the next layer identifies the trunk. 

This process would  continue throughout many layers, recognizing increasingly precise patterns in the image, until the network is  able to identify that it is indeed a picture of an elephant.

Progress in deep learning has been the cause for much of the optimism about AI due its ability to process  and find patterns in massive amounts of data with accuracy   Whereas early ML typically uses a decisiontree structure, deep learning has become the dominant technique. It is often used to power specific ML  approaches such as machine vision and natural language processing.

Neural Networks are a class of models within the general machine learning literature. Neural networks are a specific set of algorithms that have revolutionized machine learning. They are inspired by biological neural networks and the current so-called deep neural networks have proven to work quite well. 

The term “Neural Net” refers to both the biological and artificial variants, although typically the term is used to refer to artificial systems only.

Mathematically, neural nets are nonlinear Artificial neural networks are parallel computational models (unlike our computers, which have a single processor to collect and display information). ... The basis for these networks originated from the biological neuron and neural structures – every neuron takes in multiple unique inputs and produces one output.

Neural Networks are a class of models within the general machine learning literature. Neural networks are a specific set of algorithms that have revolutionized machine learning. They are inspired by biological neural networks and the current so-called deep neural networks have proven to work quite well.


Neural Networks are themselves general function approximations, which is why they can be applied to almost any machine learning problem about learning a complex mapping from the input to the output space.

Deep learning is a powerful tool to make prediction an actionable result. Deep learning excels in pattern discovery (unsupervised learning) and knowledge-based prediction. Big data is the fuel for deep learning. When both are combined, an organization can reap unprecedented results in term of productivity, sales, management, and innovation.

Deep learning can outperform traditional method. For instance, deep learning algorithms are 41% more accurate than machine learning algorithm in image classification, 27 % more accurate in facial recognition and 25% in voice recognition...

There is a category of AI algorithms that are both a part of ML and AI but are more specialized than machine learning algorithms. These are known as deep learning algorithms, and exhibit characteristics of machine learning while being more advanced.

In the human brain, any cognitive processes are conducted by small cells known as neurons communicating with each other. The entire brain is made up of these neurons, which form a complex network that dictates our actions as humans. This is what deep learning algorithms aim to recreate.

They are created with the help of digital constructs known as neural networks, which directly mimic the physical structure of the human brain in order to solve problems. While explainable AI had already been a problem with machine learning, explaining the actions of deep learning algorithms is considered nearly impossible today.

Deep learning algorithms may hold the key to more powerful AI, as they can perform more complex tasks than machine learning algorithms can. It learns from itself as more data is fed to it, like machine learning algorithms. However, deep learning algorithms function differently when it comes to gathering information from data.

Deep learning  uses the concept of neural networks to solve complex problems.   It is  mainly used to deal with high dimensional data. It is based o the concept of Neural Networks and is often used in object detection and image processing.

AI, Machine Learning and Deep Learning are interconnected fields. Machine Learning and Deep learning aids Artificial Intelligence by providing a set of algorithms and neural networks to solve data-driven problems.

Artificial Intelligence is not restricted to only Machine learning and Deep learning. It covers a vast domain of fields including, Natural Language Processing (NLP), object detection, computer vision, robotics, expert systems and so on.

Deep learning algorithms run data through several “layers” of neural network algorithms, each of which passes a simplified representation of the data to the next layer. Most machine learning algorithms work well on datasets that have up to a few hundred features, or columns.

Deep learning algorithms use multiple layers to progressively extract higher level features from raw input. For example, in image processing, lower layers may identify edges, while higher layers may identify human-meaningful items such as digits or letters or faces.

Neural networks are a set of algorithms, modeled loosely after the human brain, that are designed to recognize patterns. They interpret sensory data through a kind of machine perception, labeling or clustering raw input. The patterns they recognize are numerical, contained in vectors, into which all real-world data, be it images, sound, text or time series, must be translated.

Neural networks help us cluster and classify. You can think of them as a clustering and classification layer on top of the data you store and manage. They help to group unlabeled data according to similarities among the example inputs, and they classify data when they have a labeled dataset to train on.

Neural networks can also extract features that are fed to other algorithms for clustering and classification; so you can think of deep neural networks as components of larger machine-learning applications involving algorithms for reinforcement learning, classification and regression.

The following are the limitations of Machine Learning:----
Machine Learning is not capable of handling and processing high dimensional data.
It cannot be used in image recognition and object detection since they require the implementation of high dimensional data
Another major challenge in Machine Learning is to tell the machine what are the important features it should look for in order to precisely predict the outcome. This very process is called feature extraction. Feature extraction is a manual process in Machine Learning.

The above limitations can be solved by using Deep Learning.

Deep learning is one of the methods by which we can overcome the challenges of feature extraction. This is because deep learning models are capable of learning to focus on the right features by themselves, requiring minimal human interventions.

Deep Learning mimics the basic component of the human brain called a brain cell or a neuron. Inspired from a neuron an artificial neuron was developed..

PayPal is no stranger to fraud. As one of the Internet’s first online payment services, PayPal has been exposed to every type of wire fraud imaginable (and some beyond imagination). 

Sometimes the fraudsters had the upper hand, but now, thanks to deep learning (DL) models running on high performance computing (HPC) infrastructure, PayPal is leveraging its vast repository of fraud data to keep the fraudsters on the run.

Consider how PayPal uses Deep Learning to identify any possible fraudulent activities. PayPal processed over $235 billion in payments from four billion transactions by its more than 170 million customers. 

Considering that the company processed $235 billion in transactions for its 170 billion customers last year, the $300 million that it spent fighting fraud would seem to be a good investment.

PayPal used Machine learning and Deep Learning algorithms to mine data from the customer’s purchasing history in addition to reviewing patterns of likely fraud stored in its databases to predict whether a particular transaction is fraudulent or not.

Running a payment processing system on the Internet is no easy business, and PayPal faces substantial financial and reputational risks from hackers, conmen, organized crime, and money launderers alike. In fact, the company struggled mightily with fraud in its early days, and incurred heavy losses. 

According to the 2006 book “The PayPal Wars,” PayPal once had fraud losses amounting to 120 basis points (or 1.2% of the value of transactions), and lost $2,300 per hour to fraud.

PayPal stepped up its fraud-fighting game by using more advanced technologies, such as neural networks and Gradient Boosted Trees (GBTs).


The new deep learning models are voracious consumers of data.

PayPal has one big advantage over the fraudsters: a huge repository of data. This data repository was important for training classical machine learning models, but it’s absolutely critical for training a deep learning model.

The new deep learning approach lets PayPal vary the types of data that it’s using to predict which users, transactions, or locations are likely to be fraudulent, or associated with fraud.

Deep learning is also bolstering PayPal’s ability to utilize technology developed in other domains and transfer it to the fraud-detection business




AI is an algorithm that allows a system to learn from its environment and available inputs. In advanced applications, such as self-driving cars, AI is trained using an approach called deep learning, which relies solely on large volumes of sensor data without human involvement. However, these machine learning systems can fail when the training data misleads the decision making process.

For many applications, an AI failure is merely an inconvenience as long as the AI works as expected most of the time. However, for applications, such as self-driving cars and medical diagnosis in which failure can result in death or catastrophe, repeated unexpected failures are not tolerated.


Deep learning is a subset of machine learning where artificial neural networks, algorithms inspired by the human brain, learn from large amounts of data. Similarly to how we learn from experience, the deep learning algorithm would perform a task repeatedly, each time tweaking it a little to improve the outcome. 

The neural networks have various (deep) layers that enable learning.   Just about any problem that requires “thought” to figure out is a problem deep learning can learn to solve.

DL is a set of algorithms in machine learning that attempt to learn in multiple levels, where the lower-level concepts help define different higher-level concepts.

The most important difference between deep learning and traditional machine learning is its performance as the scale of data increases. When the data is small, deep learning algorithms don't perform that well. This is because deep learning algorithms need a large amount of data to understand it perfectly

The key difference between deep learning vs machine learning stems from the way data is presented to the system. Machine learning algorithms almost always require structured data, whereas deep learning networks rely on layers of the ANN (artificial neural networks)


ANN takes data samples rather than entire data sets to arrive at solutions

There are multiple types of neural network, each of which come with their own specific use cases and levels of complexity. The most basic type of neural net is something called a feedforward neural network, in which information travels in only one direction from input to output. A feedforward neural network is an artificial neural network wherein connections between the nodes do not form a cycle

A more widely used type of network is the recurrent neural network, in which data can flow in multiple directions. These neural networks possess greater learning abilities. A recurrent neural network (RNN) is a class of artificial neural networks where connections between nodes form a directed graph along a temporal sequence. This allows it to exhibit temporal dynamic behavior. 

Unlike feedforward neural networks, RNNs can use their internal state (memory) to process sequences of inputs. This makes them applicable to tasks such as unsegmented, connected handwriting recognition or speech recognition

There are also convolutional neural networks, Boltzmann machine networks,  and a variety of others. Picking the right network for your task depends on the data you have to train it with, and the specific application you have in mind. In some cases, it may be desirable to use multiple approaches, such as would be the case with a challenging task like voice recognition.


A Boltzmann Machine is a network of symmetrically connected, neuron- like units that make stochastic decisions about whether to be on or off. Boltz- mann machines have a simple learning algorithm that allows them to discover interesting features in datasets composed of binary vectors


There were a few drawbacks in Machine learning that led to the emergence of Deep Learning..


Deep learning is self-education for machines; you feed an AI huge amounts of data, and eventually it begins to discern patterns all by itself





Deep learning, and most machine learning (ML) methods for that matter, learn patterns or associations from data. On its own, observational data can only possibly convey associations between variables -- the familiar adage correlation does not imply causation.

Machines don’t evolve on their own. The next step in deep learning will not come from a machine iterating on itself. It will come when humans iterate on their previous work. For now, we are still the agents hiding in the apparatus. We still make the moves.

Current approaches to NLP are based on deep learning, a type of AI that examines and uses patterns in data to improve a program's understanding. Deep learning models require massive amounts of labeled data to train on and identify relevant correlations, and assembling this kind of big data set is one of the main hurdles to NLP currently. 

Deep learning doesn’t understand human language. Period!

Deep learning allows machines to solve complex problems even when using a data set that is very diverse, unstructured and inter-connected. The more deep learning algorithms learn, the better they perform.

Deep learning algorithms can automatically translate between languages. This can be powerful for travelers, business people and those in government.
.
Transforming black-and-white images into color was formerly a task done meticulously by human hand. Today, deep learning algorithms are able to use the context and objects in the images to color them to basically recreate the black-and-white image in color. The results are impressive and accurate.

Deep learning is being used for facial recognition .. The challenges for deep-learning algorithms for facial recognition is knowing it’s the same person even when they have changed hairstyles, grown or shaved off a beard or if the image taken is poor due to bad lighting or an obstruction.

The more experience deep-learning algorithms get, the better they become. . The benchmark for AI is the human intelligence regarding reasoning, speech, and vision. This benchmark is far off in the future.

Deep learning is the breakthrough in the field of artificial intelligence. When there is enough data to train on, deep learning achieves impressive results, especially for image recognition and text translation. .

Deep learning uses huge neural networks with many layers of processing units, taking advantage of advances in computing power and improved training techniques to learn complex patterns in large amounts of data. Common applications include image and speech recognition.

Computer vision relies on pattern recognition and deep learning to recognize what’s in a picture or video. When machines can process, analyze and understand images, they can capture images or videos in real time and interpret their surroundings.

Deep learning architectures such as deep neural networks, deep belief networks, recurrent neural networks and convolutional neural networks have been applied to fields including computer vision, speech recognition, natural language processing, audio recognition, social network filtering, machine translation, bioinformatics, drug design, medical image analysis, material inspection and board game programs, where they have produced results comparable to and in some cases superior to human experts.

The "deep" in "deep learning" refers to the number of layers through which the data is transformed. .

Deep learning-based image recognition has become "superhuman", producing more accurate results than human contestants.

Deep learning has been shown to produce competitive results in medical application such as cancer cell classification, lesion detection, organ segmentation and image enhancement
.

The United States Department of Defense applied deep learning to train robots in new tasks through observation.

Cloud computing facilitates speedy, enhanced development of advanced AI capabilities, such as deep learning. Some current deep learning applications make security cameras smarter by spotting patterns that could indicate trouble. 

Such technology can also categorize images. The deep learning technology inside self-driving cars differentiates between people and road signs.


A shallow network has one so-called hidden layer, and a deep network has more than one. Multiple hidden layers allow deep neural networks to learn features of the data in a so-called feature hierarchy, because simple features (e.g. two pixels) recombine from one layer to the next, to form more complex features (e.g. a line). 

Nets with many layers pass input data (features) through more mathematical operations than nets with few layers, and are therefore more computationally intensive to train.

 Computational intensivity is one of the hallmarks of deep learning, and it is one reason why a new kind of chip call GPUs are in demand to train deep-learning models.




Deep learning algorithms must be trained on big datasets. Once trained, inference puts a trained model to work, to draw conclusions or make predictions

GPU(Graphics Processing Unit) is considered as heart of Deep Learning, a part of Artificial Intelligence. It is a single chip processor used for extensive Graphical and Mathematical computations which frees up CPU cycles for other jobs

The individual accelerator chip is designed to perform the execution side of deep learning rather than the training part. Engineers generally measure the performance of such “inferencing” chips in terms of how many operations they can do per joule of energy or millimeter of area

A GPU, or graphics processing unit, is used primarily for 3D applications. It is a single-chip processor that creates lighting effects and transforms objects every time a 3D scene is redrawn. These are mathematically-intensive tasks, which otherwise, would put quite a strain on the CPU
.
The GPU, or graphics processing unit, is a part of the video rendering system of a computer. The typical function of a GPU is to assist with the rendering of 3D graphics and visual effects so that the CPU doesn't have to

Highly specialized chips designed for a specific computational task can outperform GPU chips that are good at handling many different kinds of computation.

Hardware design, rather than algorithms, will help us achieve the next big breakthrough in AI.

A tensor processing unit (TPU) is an AI accelerator application-specific integrated circuit (ASIC) developed by Google specifically for neural network machine learning





A neural processor or a neural processing unit (NPU) is a specializes circuit that implements all the necessary control and arithmetic logic necessary to execute machine learning algorithms, typically by operating on predictive models such as artificial neural networks (ANNs) or random forests (RFs).

NPUs sometimes go by similar names such as a tensor processing unit (TPU), neural network processor (NNP) and intelligence processing unit (IPU) as well as vision processing unit (VPU) and graph processing unit (GPU).


Executing deep neural networks such as convolutional neural networks means performing a very large amount of multiply-accumulate operations, typically in the billions and trillions of iterations. 



A large number of iterations comes from the fact that for each given input (e.g., image), a single convolution comprises of iterating over every channel and then every pixel and performing a very large number of MAC operations. And many such convolutions are found in a single model and the model itself must be executed on each new input (e.g., every camera frame capture).

Unlike traditional central processing units which are great at processing highly serialized instruction streams, Machine learning workloads tend to be highly parallelizable, much like a graphics processing unit.


Moreover, unlike a GPU, NPUs can benefit from vastly simpler logic because their workloads tend to exhibit high regularity in the computational patterns of deep neural networks. For those reasons, many custom-designed dedicated neural processors have been developed.



Tensor Processing Units (TPUs) are Google’s custom-developed application-specific integrated circuits (ASICs) used to accelerate machine learning workloads. Cloud TPU resources accelerate the performance of linear algebra computation, which is used heavily in machine learning applications. 

TPUs minimize the time-to-accuracy when you train large, complex neural network models. Models that previously took weeks to train on other hardware platforms can converge in hours on TPUs.


AI analyzes more and deeper data using neural networks that have many hidden layers. Building a fraud detection system with five hidden layers was almost impossible a few years ago. All that has changed with incredible computer power and big data. You need lots of data to train deep learning models because they learn directly from the data. The more data you can feed them, the more accurate they become.

Your interactions with Alexa, Google Search and Google Photos are all based on deep learning – and they keep getting more accurate the more we use them. In the medical field, AI techniques from deep learning, image classification and object recognition can now be used to find cancer on MRIs high accuracy .

Cognitive computing is a subfield of AI that strives for a natural, human-like interaction with machines. Using AI and cognitive computing, the ultimate goal is for a machine to simulate human processes through the ability to interpret images and speech – and then speak coherently in response. 

Computer vision relies on pattern recognition and deep learning to recognize what’s in a picture or video. When machines can process, analyze and understand images, they can capture images or videos in real time and interpret their surroundings.

Artificial intelligence (AI) makes it possible for machines to learn from experience, adjust to new inputs and perform human-like tasks.   Most AI examples that you hear about today – from chess-playing computers to self-driving cars – rely heavily on deep learning and natural language processing. Using these technologies, computers can be trained to accomplish specific tasks by processing large amounts of data and recognizing patterns in the data.

A layer is the highest-level building block in deep learning. A layer is a container that usually receives weighted input, transforms it with a set of mostly non-linear functions and then passes these values as output to the next layer.
.
The input layer of a neural network is composed of artificial input neurons, and brings the initial data into the system for further processing by subsequent layers of artificial neurons. The input layer is the very beginning of the workflow for the artificial neural network.

The most popular deep learning algorithms are:--- 
Convolutional Neural Network (CNN)
Recurrent Neural Networks (RNNs)
Long Short-Term Memory Networks (LSTMs)
Stacked Auto-Encoders
Deep Boltzmann Machine (DBM)
Deep Belief Networks (DBN)

There is a vast amount of neural network, where each architecture is designed to perform a given task. For instance, CNN works very well with pictures, RNN provides impressive results with ti.me series and text analysis.

CNN, or convolutional neural network, is a neural network using convolution layer and pooling layer. The convolution layer convolves an area, or a stuck of elements in input data, into smaller area to extract feature..  Any data that has spatial relationships is ripe for applying CNN.

 CNNs are currently the most complicated and advanced type of neural networks and are used in various field such as self-driving cars, medical imaging, facial recognition and speech recognition.

CNN is a multi-layered neural network with a unique architecture designed to extract increasingly complex features of the data at each layer to determine the output. CNN's are well suited for perceptual tasks.

A convolution is the simple application of a filter to an input that results in an activation. Repeated application of the same filter to an input results in a map of activations called a feature map, indicating the locations and strength of a detected feature in an input, such as an image.


The innovation of convolutional neural networks is the ability to automatically learn a large number of filters in parallel specific to a training dataset under the constraints of a specific predictive modeling problem, such as image classification. The result is highly specific features that can be detected anywhere on input images.



CNN is mostly used when there is an unstructured data set (e.g., images) and the practitioners need to extract information from it

Convolutional neural network (CNN) identifies and makes sense of images. Uses for convolutional neural networks include image classification (e.g. training machines to distinguish between images of cats and dogs).

For instance, if the task is to predict an image caption:-

The CNN receives an image of let's say a cat, this image, in computer term, is a collection of the pixel. Generally, one layer for the greyscale picture and three layers for a color picture.
During the feature learning (i.e., hidden layers), the network will identify unique features, for instance, the tail of the cat, the ear, etc.

When the network thoroughly learned how to recognize a picture, it can provide a probability for each image it knows. The label with the highest probability will become the prediction of the network.


Simple deep learning techniques like CNN can, in some cases, imitate the knowledge of experts in medicine and other fields. The current wave of machine learning, however, requires training data sets that are not only labeled but also sufficiently broad and universal.


A convolutional neural network (CNN) is used in image recognition and processing that is specifically designed to process pixel data.

Convolutional Neural Networks have a different architecture than regular Neural Networks. Regular Neural Networks transform an input by putting it through a series of hidden layers. Every layer is made up of a set of neurons, where each layer is fully connected to all neurons in the layer before.

Convolution and the convolutional layer are the major building blocks used in convolutional neural networks. A convolution is the simple application of a filter to an input that results in an activation. ... The result is highly specific features that can be detected anywhere on input images


Why are convolutional neural networks better than other neural networks in processing data such as images and video? The reason why Convolutional Neural Networks (CNNs) do so much better than classic neural networks on images and videos is that the convolutional layers take advantage of inherent properties of images.

In convolutional (filtering and encoding by transformation) neural networks (CNN) every network layer acts as a detection filter for the presence of specific features or patterns present in the original data.


 Convolution is a way to give the network a degree of translation invariance. You can think of the typical image convolution used in neural networks as a form of blurring (though there are other kinds of convolutions that are closer to spatial derivatives)

At the end of a CNN, the output of the last Pooling Layer acts as input to the so called Fully Connected Layer. There can be one or more of these layers (“fully connected” means that every node in the first layer is connected to every node in the second layer)

CNN-Cert requires full visibility into the structure of a neural network. The method uses mathematical techniques to define thresholds on the input-output relationships of each layer and each neuron. This enables it to determine how changes to the input in different ranges will affect the outputs of each unit and layer.


CNN-Cert first executes the process on single neurons and layers and then propagates it across the network. The final result is a threshold value that determines the amount of perturbations the network can resist before its output values become erroneous.

CNN builds an image in memory that incorporates aspects of all the data it's been given. So if a CNN is taught to recognize a printed or handwritten character of text, it's because it's seen several examples of every such character, and has built up a "learned" image of each one that has its basic features.


If a CNN model is trained with a variety of human faces, it will have built an amalgam of those faces in its model -- perhaps not necessarily a photograph, but a series of functions that represents the basic geometry of a face, such as the angle between the tip of the ear, the top of the cheekbone, and the tip of the nose. 

Train that model with a series of faces of known terrorists, and the model should build some basic construct that answers the question, "What does a Isis Islamic terrorist look like?" There's no way a person could rationally respond to that question in a manner that some, if not most, listeners would consider unbiased. 

And if a process were capable of rendering that average terrorist's face in living color, someone, somewhere would be rightfully enraged.

But think of this problem from the perspective of a software developer: Isolating individuals' faces in a crowd from CCTV footage and comparing them point-by-point to individual terrorists' mug shots, is a job that even a supercomputer might not be able to perform in anything approaching real-time.  

How should the developer winnow the crowd faces to a more manageable subset?  A CNN offers one option: an "average face" capable of excluding a wide range of improbable candidates. It's the visual equivalent of a hash function, simplifying long searches by making quick comparisons to some common element.

CNN can perform impressive feats of image recognition, but it is difficult to trace exactly how they arrive at their decisions. There are many layers of classification and comparison, and the end result is both remarkably accurate and consistent. But that does not mean we can truly explain how the CNN arrived at its decision for each image.

CNN can perform impressive feats of image recognition, but it is difficult to trace exactly how they arrive at their decisions. There are many layers of classification and comparison, and the end result is both remarkably accurate and consistent. But that does not mean we can truly explain how the CNN arrived at its decision for each image.

Convolutional Neural Networks (CNN) is one kind of feedforward neural network. ... CNN is an efficient recognition algorithm which is widely used in pattern recognition and image processing. It has many features such as simple structure, less training parameters and adaptability.


Recurrent neural networks (RNNs) is a multi-layered neural network that can store information in context nodes, allowing it to learn data sequences and output a number or another sequence. In simple words it an Artificial neural networks whose connections between neurons include loops. RNNs are well suited for processing sequences of inputs.




A recurrent neural network (RNN) is a class of artificial neural networks where connections between nodes form a directed graph along a temporal sequence. This allows it to exhibit temporal dynamic behavior. Unlike feedforward neural networks, RNNs can use their internal state (memory) to process sequences of inputs.

Recurrent Neural Network comes into the picture when any model needs context to be able to provide the output based on the input.

CNN is used for spatial data and RNN is used for sequence data. Second, CNN is kind of more powerful now than RNN. ... This is mostly because CNN can be stacked into a very deep model, which has been proven to be very effective.

The Convolutional Recurrent Neural Networks is the combination of two of the most prominent neural networks. The CRNN (convolutional recurrent neural network) involves CNN (convolutional neural network) followed by the RNN(Recurrent neural networks).. 

The convolutional layers are developed on 3-dimensional feature vectors, whereas the recurrent neural networks are developed on 2-dimensional feature vectors.

The first layer of a neural network will learn small details from the picture; the next layers will combine the previous knowledge to make more complex information. In the convolutional neural network, the feature extraction is done with the use of the filter. 

The network applies a filter to the picture to see if there is a match, i.e., the shape of the feature is identical to a part of the image. If there is a match, the network will use this filter. The process of feature extraction is therefore done automatically.

Deep learning algorithms are constructed with connected layers.

The first layer is called the Input Layer
The last layer is called the Output Layer
All layers in between are called Hidden Layers. The word deep means the network join neurons in more than two layers.
Each Hidden layer is composed of neurons. The neurons are connected to each other. The neuron will process and then propagate the input signal it receives the layer above it. The strength of the signal given the neuron in the next layer depends on the weight, bias and activation function.

The network consumes large amounts of input data and operates them through multiple layers; the network can learn increasingly complex features of the data at each layer.

A deep neural network provides state-of-the-art accuracy in many tasks, from object detection to speech recognition. They can learn automatically, without predefined knowledge explicitly coded by the programmers.

Each layer represents a deeper level of knowledge, i.e., the hierarchy of knowledge. A neural network with four layers will learn more complex feature than with that with two layers.

The learning occurs in two phases.

The first phase consists of applying a nonlinear transformation of the input and create a statistical model as output.
The second phase aims at improving the model with a mathematical method known as derivative.
The neural network repeats these two phases hundreds to thousands of time until it has reached a tolerable level of accuracy. The repeat of this two-phase is called an iteration.

Why are convolutional neural networks better than other neural networks in processing data such as images and video? The reason why Convolutional Neural Networks (CNNs) do so much better than classic neural networks on images and videos is that the convolutional layers take advantage of inherent properties of images.

Deep artificial neural networks are a set of algorithms that have set new records in accuracy for many important problems, such as image recognition, sound recognition, recommender systems, natural language processing etc.

Neural networks help us cluster and classify. You can think of them as a clustering and classification layer on top of the data you store and manage. They help to group unlabeled data according to similarities among the example inputs, and they classify data when they have a labeled dataset to train on.

Neural networks can also extract features that are fed to other algorithms for clustering and classification; so you can think of deep neural networks as components of larger machine-learning applications involving algorithms for reinforcement learning, classification and regression.

Neural networks generally perform supervised learning tasks, building knowledge from data sets where the right answer is provided in advance. The networks then learn by tuning themselves to find the right answer on their own, increasing the accuracy of their predictions

Deep Learning. systems specifically rely upon non-linear neural networks to build out machine learning systems, often relying upon using the machine learning to actually model the system doing the modeling. It is mostly a subset of machine learning with a specific emphasis on neural nets.

Again, deep neural network is learning architecture based on data representations. They’re loosely modeled on the brain . DNNs comprise artificial neurons (i.e., mathematical functions) connected with synapses that transmit signals to other neurons.

Said neurons are arranged in layers, and those signals — the product of data, or inputs, fed into the DNN — travel from layer to layer and slowly “tune” the DNN by adjusting the synaptic strength — weights — of each neural connection.

Over time, after hundreds or even millions of cycles, the network extracts features from the dataset and identifies trends across samples, eventually learning to make novel predictions.

Technologies including machine learning, neural networks, and deep learning now help data scientists face the challenges raised by the need for prediction.

Basically, an artificial neural network consists of an input layer where it receives inputs and output layer where it outputs. The hidden layer is a layer which is hidden in between input and output layers since the output of one layer is the input of another layer

The number of hidden neurons should be between the size of the input layer and the size of the output layer. The number of hidden neurons should be 2/3 the size of the input layer, plus the size of the output layer. The number of hidden neurons should be less than twice the size of the input layer.
Deep NN is just a deep neural network, with a lot of layers.

Today, neural networks are used for solving many business problems such as sales forecasting, customer research, data validation, and risk management. For example, at Statsbot they apply neural networks for time series predictions, anomaly detection in data, and natural language understanding

Classification of Neural Networks---
Shallow neural network: The Shallow neural network has only one hidden layer between the input and output.

Deep neural network: Deep neural networks have more than one layer. For instance, Google LeNet model for image recognition counts 22 layers.

Nowadays, deep learning is used in many ways like a driverless car, mobile phone, Google Search Engine, Fraud detection, TV, and so on.

Feed-forward neural networks is the simplest type of artificial neural network. With this type of architecture, information flows in only one direction, forward. It means, the information's flows starts at the input layer, goes to the "hidden" layers, and end at the output layer. 

The network  does not have a loop. Information stops at the output layers.





A deep neural network is a pipeline of operations that processes data to identify some pattern as a solution to a specific problem. Deep neural nets have a layered structure, and the ‘thinking’ part happens inside the hidden layers between the input and output. 

The ‘deep’ indicates that there are several internal layers, so the incoming data goes through more complex transformations, as opposed to simpler artificial neural networks.

There are many applications of deep neural networks, and a very basic example is image recognition. In this case, the neural net would take an image as an input and would try to guess with some probability what objects are on it.

However, to make any neural network good in its job, it first has to be trained. In other words, the algorithm has to fine-tune its inner workings, i.e. the parameters that assign values of connections between its neurons. Training requires the neural network to be fed with data and then, as it returns some output, to have its parameters corrected in a way that would make its next prediction better.

So usually a deep neural network would initially spit some nonsense result, that is very far from the truth. Typically, a human researcher will try to adjust the architecture of the algorithm by adding a layer, changing the type of another, etc. 

This process goes on until we’re happy with the AI accuracy.


So adjusting the architecture is the only part that requires human intervention. But it usually is a very tedious and time-consuming process. A hit-and-miss, so to say.


Neural Architecture Search (NAS) utilizes an algorithm called a controller (most often a neural network). It creates a child neural network and proceeds to optimize its architecture until it finds the best solution for a particular problem, i.e. until the child network achieves its highest accuracy.  A well-working NAS eliminates the need of humans from the process of deep neural network creation.

Neural architecture search (NAS) is a technique for automating the design of artificial neural networks (ANN), a widely used model in the field of machine learning. NAS has been used to design networks that are on par or outperform hand-designed architectures



Deep learning is a computer software that mimics the network of neurons in a brain. It is a subset of machine learning and is called deep learning because it makes use of deep neural networks. The machine uses different layers to learn from the data. The depth of the model is represented by the number of layers in the model. 

Deep learning is the new state of the art in term of AI. In deep learning, the learning phase is done through a neural network. A neural network is an architecture where the layers are stacked on top of each other


In deep learning, the learning phase is done through a neural network.. A neural network is an architecture where the layers are stacked on top of each other.


Artificial neural networks are parallel computational models (unlike our computers, which have a single processor to collect and display information). ... The basis for these networks originated from the biological neuron and neural structures – every neuron takes in multiple unique inputs and produces one output.


Deep learning, uses advanced computing power and special types of neural networks and applies them to large amounts of data to learn, understand, and identify complicated patterns. Automatic language translation and medical diagnoses are examples of deep learning.

The key difference between deep learning vs machine learning stems from the way data is presented to the system. Machine learning algorithms almost always require structured data, whereas deep learning networks rely on layers of the ANN (artificial neural networks)

A neural network may only have a single layer of data, while a deep neural network has two or more
In deep learning, the learning phase is done through a neural network. A neural network is an architecture where the layers are stacked on top of each other. The training set would be fed to a neural network

Each input goes into a neuron and is multiplied by a weight. The result of the multiplication flows to the next layer and become the input. This process is repeated for each layer of the network. The final layer is named the output layer; it provides an actual value for the regression task and a probability of each class for the classification task. 

The neural network uses a mathematical algorithm to update the weights of all the neurons. The neural network is fully trained when the value of the weights gives an output close to the reality. For instance, a well-trained neural network can recognize the object on a picture with higher accuracy than the traditional neural net.

DNN architectures enable the models to learn multiple hierarchical, hence deep, inter relationships of the features present in the data.

Deep learning, modeled loosely on the biological brain with layers of neural networks, tend to be single-purpose point-solutions that require extensive training with massive data sets, and are customized for a specific environment. In contrast, evolutionary algorithms solves a problem based on criteria set in the “fitness” function—thus requiring little to no data.

Within a neural network, each processor or “neuron,” is typically activated through sensing something about its environment, from a previously activated neuron, or by triggering an event to impact its environment. 

The goal of these activations is to make the network—which is a group of ML algorithms—achieve a certain outcome. Deep learning is about “accurately assigning credit across many such stages” of activation.
.
As the name suggests, artificial neural networks (ANNs) are inspired by the functionality of theelectro-chemical neural networks found in human (and animal) brains. The working of the brain remains somewhat mysterious, although it has long been known that signals from stimuli are transmitted and altered as they pass through complex networks of neurons. In an ANN, inputs are passed through a network, generating outputs that are interpreted as responses.

The process starts with signals being sent to the 'input layer', and  ends with a response being generated at the 'output  layer'. In between, there is one or more 'hidden layer',  which manipulates the signal as it passes through, so that it generates a useful output. ..

The, signals then pass to the next layer, so neurons in  this hidden layer receive several numbers. Each  neuron in this layer combines and manipulates these  signals in different ways to generate a single  numerical output. For example, one neuron might  add all of the inputs and output 1 if the total is over 50, or 0 if it is not. 

Another neuron might assign  weights to different input signals, multiply each input signal by its weight, and add the results to  give as its output. The outputs of these neurons then pass as signals to the next layer. When the  signals reach the final layer and its own output is generated, the process is complete. The final signal can be interpreted

Now we have a simple ANN, inspired by a simplified model of the brain, which can respond to a  specific input with a specific output. It doesn't really know what it is doing,. For simple tasks, ANNs can work well with just a dozen neurons in a single hidden  layer. 

Adding more neurons and layers allow ANNs to tackle more complex problems. Deep learning  refers to the use of big ANNs, featuring at least two hidden layers, each containing many neurons.

These layers allow the ANN to develop more abstract conceptualisations of problems by splitting them into smaller sub-problems, and to deliver more nuanced responses. It has been suggested that  three hidden layers are enough to solve any kind of problem although, in practice, many ANNs include millions of neurons organised in dozens of hidden layers.

 By way of comparison, human  brains contain ~100 billion neurons, cockroach brains ~1 million and snail brains ~10 thousand.


So if the 'deep' part of deep learning is about the complexity of the ANN, what about the 'learning'  part? Once the correct structure of the ANN is in place, it needs to be trained. While in theory this  can be done by hand, it would require a human expert to painstakingly adjust neurons to reflect  their own expertise of how to play a good game. 

Instead, a ML algorithm is applied to automate the  process. The training process can be an intensive and complicated process, and often never really ends, as constant updates respond to new data availability and changes in the problem faced. Once  a well-trained ANN is in place, it can be applied to new data very quickly and efficiently.

Neural networks are sometimes described in terms of their depth, including how many layers they have between input and output, or the model's so-called hidden layers. This is why the term neural network is used almost synonymously with deep learning. 

They can also be described by the number of hidden nodes the model has or in terms of how many inputs and outputs each node has. Variations on the classic neural network design allow various forms of forward and backward propagation of information among tiers.

Deep learning allows the network to extract different features until it can recognize what it is looking for. A neural network is a biologically-inspired programming paradigm which enables a computer to learn from observational data.

Deep learning, uses advanced computing power and special types of neural networks and applies them to large amounts of data to learn, understand, and identify complicated patterns. Automatic language translation and medical diagnoses are examples of deep learning.

Even a computer scientist would find it extremely hard to simply look inside a given deep neural network and understand how that specific deep neural network actually works.

Any given deep neural network’s reasoning ability is pretty much embedded in the actual behavior of hundreds and thousands of various simulated neurons.

These simulated neurons are neatly arranged into, sometimes, dozens and sometimes hundreds of layers which are intricately interconnected. AI has some secrets that even its creators find hard to understand. This cannot continue if AI is to become a part of our everyday life.

Each of the present the simulated neurons, for example, in the very first layer receive a given input.
This input can be anything.  For example, one input could be the intensity of a specific pixel in a specific image.  After the simulated neuron has received its input, it then has to perform a calculation.

Only after performing that calculation can the simulated neurons output the new signal. After that, the deep neural network system feeds the outputs from the first layer to the simulated neurons of the second layer.

It is really a very complex web of simulated neuron layers.   The process continues from one layer to the next layer until there are no more layers left.  And when there are no more layers left, that is the time when the deep neural network actually produces an overall output.

In addition to that, there is also a process that computer scientists call backpropagation. 



This process is able to tweak the calculations of various individual neurons. And it does that in a way which enables the entire deep neural network to learn how to produce the desired output.

Since the deep neural network has many layers of simulated neurons, they enable the network to recognize different things/objects at different levels of abstraction.

To take an example, if a given deep neural network system is designed to recognize cats then the lower layers of the deep neural network would recognize simpler features or things about cats such as color and outlines.

Then, the higher layers present in the deep neural network would recognize the more complex features.  These would include stuff like eyes and/or fur.  After that, the topmost simulated neurons-containing layer would identify all of that information as a cat.

It should not be hard to understand that computer scientists and engineers can take this approach and apply it to a lot of other inputs (roughly speaking).

As mentioned before, these are the same inputs that actually lead the given machine to learn and teach itself.  Using such techniques machines can learn--

All the sounds which make up the present words in a given speech
The words and the letters which create various sentences in a given text.
The movements required of a steering-wheel for proper driving.

Computer scientists and researchers have used various but ingenious strategies to try and capture information which they can use to explain in a lot more detail the things that are happening in all such deep neural network systems.

Back in the year 2015, researchers working at the search engine giant Google, modified one of their image recognition computer algorithm which was based on deep learning.

When they did, the algorithm changed the way it worked.  So instead of the deep learning algorithm trying to spot objects in various photos, the image recognition algorithm would modify and/or generate them.

Researchers working at Google effectively ran the image recognition deep learning algorithm in reverse. This enabled them to discover all the features that the program used in order to recognize, for example, a building or a bird.

Researchers called the project which enabled to produce the new images as Deep Dream.

The resulting photos from the modified algorithm showed alien-like but grotesque animals that emerged from plants and clouds. The modified images also showed hallucinatory pagodas which bloomed across mountain ranges and forests.

In other words, the resulting photos/images provided good evidence that various deep learning techniques were not, in fact, entirely inscrutable.  The modified images also revealed that that computer algorithms had little trouble in homing in on various familiar visual features such as a given bird’s feathers and/or beaks.

However, those same modified images also hinted at other important things.  Other important things such as how different human perception is from deep learning in the sense that a deep learning algorithm could actually make something out of a given artifact which humans would know to simply ignore.

Researchers working at Google also noted that when their image recognition deep learning algorithm generated photos of a given dumbbell, the algorithm also took the opportunity to generate a human arm that held the generated dumbbell.

In other words, the machine automatically came to the conclusion that a human arm was actually part of the whole dumbbell thing.   Computer scientists have made much more progress by using ideas which were actually borrowed from cognitive science as well as neuroscience.

Generative adversarial networks (GANs) are deep neural net architectures comprised of two neural nets, pitting one against the other (“adversarial”)





Generative Adversarial Networks, or GANs for short, are an approach to generative modeling using deep learning methods, such as convolutional neural networks.

GANs are a clever way of training a generative model by framing the problem as a supervised learning problem with two sub-models: the generator model that we train to generate new examples, and the discriminator model that tries to classify examples as either real (from the domain) or fake (generated). 

The two models are trained together in a zero-sum game, adversarial, until the discriminator model is fooled about half the time, meaning the generator model is generating plausible examples.



The Generator is a neural network trained on a distribution of data (where a distribution of data might be images of dogs, cats, wolves) and extracts features from that distribution of data (mixed with some level of randomness) to try to fool the Discriminator into thinking the fake image is a real image. 

That is, the generator tries to create a fake cat image based upon the modeling (feature extraction) of real cats to fool the Discriminator into thinking that the fake cat image is a real cat image.  Probably sounds better when someone else explains it…


The Discriminator is a convolutional neural network that is trained to predict whether input images are real or fake. The discriminator outputs “1” if it thinks the image is real, and “0” if it thinks the image is fake. 

The discriminator tries to find a “decision boundary” or clusters that separate images into the appropriate classifications (dogs versus cats versus wolves). Then, to classify a new animal as either a dog or a cat or a wolf, it checks on which side of the decision boundary it falls and makes its prediction accordingly.

Made up of two competing models which run in competition with one another, GANs are able to capture and copy variations within a dataset..  The generator learns to generate fake signals or data that can eventually fool the discriminator. The input to the generator is noise, and the output is a synthesized signal

GANs can learn to mimic any data distribution (diseased plants, cancer, skin lesions, tumors, broken bones, mechanic parts abrasions) to create real-world like experiences. GANs can create something totally new yet life-like based upon adding randomness to a deep understanding of existing data distributions.

GANs’ potential is huge, because they can learn to mimic any distribution of data. That is, GANs can be taught to create worlds eerily similar to our own in any domain: images, music, speech, prose. They are robot artists in a sense, and their output is impressive – poignant even. 

To understand GANs, you should know how generative algorithms work, and for that, contrasting them with discriminative algorithms is instructive. Discriminative algorithms try to classify input data; that is, given the features of an instance of data, they predict a label or category to which that data belongs. 

One neural network, called the generator, generates new data instances, while the other, the discriminator, evaluates them for authenticity; i.e. the discriminator decides whether each instance of data that it reviews belongs to the actual training dataset or not.

Two neural networks contest with each other in a game (in the sense of game theory, often but not always in the form of a zero-sum game). Given a training set, this technique learns to generate new data with the same statistics as the training set. For example, a GAN trained on photographs can generate new photographs that look at least superficially authentic to human observers, having many realistic characteristics. 

Generative Adversarial Network (GAN) is a generic framework used to fool machine learning algorithms.  

The generator and a discriminator tries to outsmart the other. A generator modifies malicious version of the input it was originally given and sends it to be classified by the IDS and the discriminator. The goal of the generator is to fool an IDS, and the goal of the discriminator is to mimic the IDS on classifying inputs (correct or wrong) and provide feedback to the generator. 

The game ends when the IDS and discriminator cannot accurately classify the input created by the generator.

While GANs appear to be very useful in creating new real-like content for the gaming, entertainment and advertising industries, the bigger win might be in the ability to create adaptive content that can accelerate training and education. Adaptive content is individualized content that can drive personalized interactions based upon an individual’s capabilities. experience, mood, and immediate goals.

In the area of education, GANs could create dynamic adaptive content that could be personalized for each individual student based upon their experience, areas of expertise, and current areas of struggle.  

The GAN-based educational system could dynamically create new content that could help the student in areas in which they are struggling and could push students into new areas more quickly if they are grasping concepts faster. 

GANs might play an even bigger role in the retraining of our workforces (especially when coupled with immersive technologies like Virtual Reality and Augmented Reality) as technology advances the nature of work.  Learning will no longer be dependent upon the speed of the content and the expertise of the instructor!

And in the world of healthcare, the ability to dynamically create new experiences in training and re-certifying health care providers could ensure that all doctors are able to leverage the last learnings and developments and not be dependent upon having to attend the right conferences (snore) or churn through a stack of research studies to find learnings that are relevant for their current level of expertise.  

GANs could also provide a solution to the HIPAA privacy concerns by creating life-like data sets of severe medical situations without actually having to disclose any particular individual’s private data.

And in the area of warfare, well, all sorts of bad things can be conceived with adaptive content that can confuse enemies (and sway political elections).
.

The combination of deep reinforcement learning (to create AI-based assistants) and GANs (to create dynamic, adaptive content) could greatly accelerate the adoption and institutionalization of new technologies and accelerate business and society benefits in the process.  

Deep Reinforcement Learning could create AI-based assistants (agents) that aid teachers, physicians, technicians, mechanics, engineers, etc. while GANs could create new adaptive learning environments so that those assistants/agents are constantly learning – learning while the human in the process is doing more human-related activities like engaging with students, patients and customers.

The generator is trying to generate images and fool and confuse the Discriminator into believing that they are Real , and the discriminator tries distinguish the Real images from the Fake ones generated by the Generator.

A Discriminative model ‌models the decision boundary between the classes. A Generative Model ‌explicitly models the actual distribution of each class. 

In the end, the generator network is outputting images that are indistinguishable from real images for the discriminator.

Using Generative Models on Neural Nets actually requires smaller number of parameters than the amount of data usually a Neural Net requires to be trained on hence the model does a good job at efficiently generating data.

Usually it is said that if we want to train a Neural Network Model on small data sets with smaller number of parameters we should use unsupervised pre training i.e train the Neural Net in a unsupervised manner. 

Otherwise generally a Neural Network model requires a lot of data to be trained effectively and learn properly from the data in order to avoid overfitting on small datsets.



.



THIS POST IS NOW CONTINUED TO PART 6 BELOW--



.




CAPT AJIT VADAKAYIL
..

.