Project Description

In the previous article, ‘What is Machine Learning?” we touched upon the basics of machine learning, the different types and a brief explanation of some of its uses.

Deep learning has advanced side-by-side with the digital era, which has led to a massive increase of data in all types. This data, also known as big data, is generated from sources like social media, internet search engines, e-commerce websites, among others. However, this data is normally generated as unstructured and because of the sheer quantity of it, it could take many years to sort and analyse all of it.

This is where Deep Learning and Machine Learning come into play.

Deep Learning is part of a broader family of machine learning methods based on artificial neural networks. Much like machine learning, deep learning can be supervised, semi-supervised, and unsupervised. Deep learning architectures such as deep belief networks, recurrent neural networks, deep neural networks and convolutional neural networks have been applied to various fields like social network filtering, computer vision, natural language processing, and medical image analysis just to name a few.

Machine learning is the most common technique in artificial intelligence. From what we explained in the previous article, machine learning is a self-adaptive algorithm that is continually improved through continual analysis of patterns and new information. Deep learning is a subset of machine learning.

Let’s delve deeper into the definition of Deep Learning and gain a better understanding of why it has become a subset of machine learning.

What is Deep Learning?

“Artificial intelligence is a set of algorithms and intelligence to try to mimic human intelligence. Machine learning is one of them, and deep learning is one of those machine learning techniques.” – Frank Chen

Deep learning is an artificial intelligence function that aims to imitate the human brain’s ability to process data and recognise patterns for making decisions. Deep learning is a subclass of machine learning in artificial intelligence that uses networks capable of learning from data that is unstructured or unlabelled in an unsupervised manner.

AI ML DL CKC Diagram

Figure 1: Deep learning is a subset of machine learning and machine learning is a subset of artificial intelligence

Deep learning utilises a hierarchical level of artificial neural networks to carry out of the process of machine learning. While in traditional programs, analyses are built with data in a linearly, deep learning enables machines to process data in a nonlinear way using a hierarchical function. Computer models learn to perform specific tasks such as identifying predetermined objects in images, text or sound. Deep learning can have extremely high accuracy, sometimes surpassing human-level. Deep learning algorithms are trained using a large set of labelled data and neural network architectures that contain several layers.

Self-driving automobiles are the most dominantly used application of deep learning. Automotive researchers use deep learning to automatically detect objects such as traffic lights, pedestrians, and stop signs. The algorithms constantly collect new information and the system learns from past data.

Other applications of deep learning include medical research, industrial automation, consumer electronics, aerospace, and space research.

What is a neural network?

The definition of deep learning might have been a little confusing if you don’t have any prior knowledge about neural networks. Deep learning is a type of machine learning that runs data through a biologically-inspired neural network architecture.

Neural networks are a set of algorithms, who’s model is inspired by the human brain. Neural networks are designed to recognise and distinguish between patterns. They interpret sensory data through a kind of machine perception, labelling or clustering raw input. The patterns they recognise are numerical, contained in vectors, into which data such as images, sound, or text must be translated.

The neural networks contain a number of hidden layers through which the data is processed, allowing the machine to go “deep” in its learning, making connections and weighting input for the best results. The term ‘deep’ refers to the number of layers in a neural network. While deep neural networks can have as many as two hundred layers, traditional neural networks only have a few, usually around three.

Most deep learning methods use neural network architectures, which is why it is often referred to as deep neural networks. Deep learning models are trained by feeding them large amounts of labeled data and neural network architectures that learn features directly from the data without the need for manual input from a supervisor.

In deep-learning networks, each layer of nodes learns 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 recognise, since they aggregate and recombine features from the previous layer. This is known as feature hierarchy which is a hierarchy of increasing complexity with each layer.

Deep learning neural network illustration

Figure 2: Deep learning neural network illustration

Applications

1. Recommendation Engines

If you’re a Spotify user, an Amazon shopper, or an avid watcher on Netflix, you might have noticed that those applications have a tendency to show you more of what you like. These applications have recommendation engines that are designed to enhance user experience by improving service. A recommendation system uses algorithms and data to recommend the most relevant items to a particular user. A Spotify listener who plays a lot of disco is more likely to be shown more music of that genre by the recommendation system.

A recommendation engine essentially looks for overlaps or co-occurrences to make a recommendation. A user’s actions are usually the best representation of their intent, actions and purchases drive new purchases and they can overlap with other user’s purchases; thus creating co-occurrences.

There are three main types of recommendation engines:

  1. Collaborative Filtering
  2. Hybrid Recommendation Systems
  3. Content-Based Filtering

The Collaborative Filtering method is normally based on collecting information regarding a user’s actions, behaviours, and preferences in order to predict what else they might like based on similarity with other users. The benefit to using this method is that it does not require machine analysable content. In other words, it is capable of recommending complex items such as movies and books without needing to understand the item.

The Content-Based Filtering method is one that relies on data that the user provides. User profiles are created for every user of an application or website and based on the data that is provided, the service makes suggestions to the user. As the user performs more actions and inputs, the engine becomes more and more accurate because it has a greater data set to base its recommendations on.

The Hybrid Recommendation System combines both collaborative and content-based filtering systems in order to create a more accurate system by giving the engine more parameters and data to use. A Hybrid recommendation system can implemented by making collaborative-based predictions and content-based predictions separately and then combining them. Alternatively, a hybrid system can also be implemented by incorporating a collaborative-based technique to a content-based approach or vice versa; or combining the approaches into one model.

More than 80% of the content people stream on Netflix is discovered through the platform’s recommendation engine. This means when you make a selection of a movie or TV series on the homepage, you are essentially choosing from a number of selections created by an algorithm. Whenever a user clicks on a title or spends time watching a TV show or a movie, Netflix is collecting data that informs the algorithm and updates it. The more you watch the greater the accuracy of the recommendation algorithm.

Netflix’s recommendation system CKC

Figure 3: Netflix’s recommendation system

2. Image Recognition

As discussed in a section above, deep learning is commonly used for image recognition applications. Deep learning has greatly improved computer vision of the past few years, achieving pin-point accuracy. Facial recognition in our smartphones, autonomous modes in self-driving cars, and diagnostic imaging in healthcare have made huge advancements due to improving image recognition technology.

Neural networks use algorithms that are layered next to each other. This makes each algorithm reliant on the outcomes of  other surrounding algorithms. This creates a process that tries to simulate the logical reasoning that humans possess. For image recognition, convolutional neural networks are used.

If given enough time, a neural network will improve its learning capabilities if its predictions are accurate. It takes a lot of training for computers to get their predictions right because they don’t automatically know what things are called in reality.

3. Marketing Research

“Machine-inspired marketing forces managers to strategically assess their organisation to redesign roles and responsibilities while adequately defining the division of tasks between humans and machines.”

Consumer behaviour is constantly changing over time. There are many contributing factors such as time of year, new products, fashion trends, viral videos that cause the sudden popularity of something, etc. Social media and marketing campaigns generate a lot of data that can be used to understand customer preferences and behaviour.

Machine learning can use patterns and experiences to predict future behaviour by analysing trends in the data. Machine learning can predict the chances of a user making a purchase based on historic data, or to predict the chances of them returning later.