AI and Deep Learning 

Do you understand what Deep Learning is? If you don’t. You’re not alone.

It’s one of those phrases that gets tossed around in conversations about AI, often without a clear explanation. It sounds complex (and it can be), but understanding the basics doesn't have to be difficult.

I have written a blog post to help you make sense of exactly how Deep Learning fits into the broader world of Artificial Intelligence. 

Interior-of-server-room

Prerequisite  

​AI is an intelligent software that imitates human behaviour and capabilities.

Machine Learning is the way we teach computer models to make predictions, and it is the way the AI software develops its intelligence. 

​​Machine Learning Function:

Y = F(x) 

Label = Function * Feature 

A function is a mathematical formula used to describe the relationship between labels and features.

Brain-model-with-LED-lights

Deep Learning

​Deep Learning (DL) is a subset of Machine Learning (ML).

A DL model structure is called an Artificial Neural Network (ANN).
The inspiration for an ANN is the human brain.

With ML we state the features.
With DL the features are picked out by the ANN. 

​​
The ANN consists of numerous layers, hence the term ‘Deep’.

Artificial Neural Network

Layer 1 

Input Layer

Receives Raw Data

Layer 2

Hidden Layer

Consists of multiple layers of nodes (neurons) connected by weights.

Each node layer has its own mathematical function (i.e. Linear Regression).

Every Node Layer receives input data which is processed and then passed onto the next node layer.

The size of the weights between the node layers, is used to determine how much influence each input has on the output. 

Layer 3

Output Layer

Makes a prediction


How do ANN's learn?

By adjusting the size of the weights during training.

Summary of the ANN Training Process

Forward Pass

We feed input data through the network from layer to layer and calculate the final output value.

Loss

We measure how close the network’s predictions are to the actual value. 

Backward Pass

We apply an optimisation algorithm to go back and update the weights of the network, to try to improve the neural networks performance. 

Iterate

We repeat this process over and over using Loops, checking each time if the loss is going down. 

Where is Deep Learning applied?

Self-driving cars.
Web page language translations.
Customer service chatbots.
Personalised Netflix recommendations.

Robot-hands-and-technology

Computer Programming

​To help you develop a tangible understanding of Deep Learning, I've included parts of a computer program below, that builds a basic neural network. This example uses a supervised machine learning model designed to predict apartment rent prices based on factors such as size in square feet.

# load dataset as a pandas dataframe

apartments_df = pd.read_csv
("streeteasy.csv")

# create a numpy array of the numeric columns

apartments_numpy = apartments_df[
['size_sqft', 'bedrooms',
'building_age_yrs']].values

# convert to an input tensor 

X = torch.tensor(apartments_numpy,
dtype=torch.float32) 

# Set a random seed – so that the model
behaves the same every time you run it

torch.manual_seed(42)

# define the neural network

model = nn.Sequential(
              nn.Linear(3,16),
              nn.ReLU(),
              nn.Linear(16,8),
              nn.ReLU(),
              nn.Linear(8,4),
              nn.ReLU(),
              nn.Linear(4,1)
     ) 

predicted_rent = model(X)

#Show output. Compare predicted rent
values to the actual rent values 

predicted_rent[:5]

Get In Contact 

Romi_Heer@RomaIntel.com | Instagram @Roma.Intel 

Opening Hours: 9.30am to 5.30pm - Monday to Friday 

Contact Us