Monthly Archives: March 2016

Machine Learning, Deep Learning and Artificial Intelligence – Just a note for myself

Machine Learning is part of Artificial Intelligence and one of the techniques of doing machine learning is Deep learning, so the hierarchy is some thing like this

Artificial Intelligence ==> Machine Learning ==> Deep Learning

What is Machine Learning?

Machine learning is an application of artificial intelligence (AI) that provides systems the ability to automatically learn and improve from experience without being explicitly programmed. Machine learning focuses on the development of computer programs that can access data and use it learn for themselves.
Among the different types of ML tasks, a crucial distinction is drawn between supervised and unsupervised learning:

  • Supervised machine learning: The program is “trained” on a pre-defined set of “training examples”, which then facilitate its ability to reach an accurate conclusion when given new data.
  • Unsupervised machine learning: The program is given a bunch of data and must find patterns and relationships therein.

Machine learning is a type of artificial intelligence (AI) that allows software applications to become more accurate in predicting outcomes without being explicitly programmed. The basic premise of machine learning is to build algorithms that can receive input data and use statistical analysis to predict an output value within an acceptable range.
Machine learning algorithms are often categorized as being supervised or unsupervised. Supervised algorithms require humans to provide both input and desired output, in addition to furnishing feedback about the accuracy of predictions during training. Once training is complete, the algorithm will apply what was learned to new data. Unsupervised algorithms do not need to be trained with desired outcome data. Instead, they use an iterative approach called deep learning to review data and arrive at conclusions. Unsupervised learning algorithms are used for more complex processing tasks than supervised learning systems.
The processes involved in machine learning are similar to that of data mining and predictive modeling. Both require searching through data to look for patterns and adjusting program actions accordingly. Many people are familiar with machine learning from shopping on the internet and being served ads related to their purchase. This happens because recommendation engines use machine learning to personalize online ad delivery in almost real time. Beyond personalized marketing, other common machine learning use cases include fraud detection, spam filtering, network security threat detection, predictive maintenance and building news feeds.

Facebook’s News Feed, for example, uses machine learning to personalize each member’s feed. If a member frequently stops scrolling to read or “like” a particular friend’s posts, the News Feed will start to show more of that friend’s activity earlier in the feed. Behind the scenes, the software is simply using statistical analysis and predictive analytics to identify patterns in the user’s data and use those patterns to populate the News Feed. Should the member no longer stop to read, like or comment on the friend’s posts, that new data will be included in the data set and the News Feed will adjust accordingly.


What is Deep Learning?

Deep learning is a machine learning technique that learns features and tasks directly from data. Data can be images, text, or sound. In this video, I’ll be using images, but these concepts can be used for other types of data, too.

Machine learning teaches computers to do what comes naturally to humans: learn from experience. Most machine learning workflows use training images that represent examples of what the system is trying to learn.

Computers learn from these images through feature extraction. This is where information like edges, texture, and color is extracted to form a reduced representation that easily describes the object. These features are then used by a machine learning classifier to learn a task. Deep learning is often referred to as end-to-end learning.

Let’s look at an example, say I have a set of images, and I want to recognize which category of objects each image belongs to – cars, trucks, or boats. I start with a labeled set of images, or training data. The labels correspond to the desired output of the task. The deep learning algorithm needs these labels, as they tell the algorithm about the specific features and objects in the image.

The deep learning algorithm then learns how to classify input images into the desired categories. We use the term “end-to-end learning” because the task is learned directly from the data.

Most deep learning methods use neural network architectures. This is why you often hear deep learning models referred to as deep neural networks. One of the most popular types of deep neural networks is known as a convolutional neural network. It is especially well suited for working with image data. The term “deep” usually refers to the number of hidden layers in the neural network. Traditional neural networks only contain 2-3 hidden layers, while some recent deep networks have as many as 150.

Deep learning is a creation of machines which use techniques inspired by the human brain’s ability to learn. Until recently we simply didn’t have enough data and processing power to train a machine to learn deep learning. Neural networks learn many levels of abstraction they range from simple concepts to complex ones this is what puts the deep in deep learning. It comprises of various layers of neral networks each layer categorizes some kind of information refines it and passes it along to the next deep learning node. Machine used this process to build a hierarchical representation, so the first layer for example with a facial recognition system might look for simple edges, the next might look the collections of edges that form simple shapes like rectangles or circles, the third might identify features like eyes and noses. Out of five or six layers the neural network can put these features together the result a machine that can recognize certain objects or even concepts dependent on the training dataset