Machine and deep learning are some of those quantitative analysis skills that differentiate the data scientist from the other members of the team. The field of machine learning is the driving force of artificial intelligence. This course will teach you how to leverage deep learning and neural networks from this powerful tool for the purposes of data science. We will be doing this with TensorFlow.

preview the course

for FREE!

Create a free account and start learning data science today.

create free accountIn this introductory part of the course, we will discuss why you will need machine learning when working as a data scientist, what you will see in the following chapters of this training, and what the best way to take the course is.

Welcome to Machine Learning

What does the course cover

The basic logic behind training an algorithm involves four ingredients - data, model, objective function, and an optimization algorithm. In this part of the course, we describe each of them and build a solid foundation that allows you to understand the idea behind using neural networks. After completing this chapter, you will know what the various types of machine learning are, how to train a machine learning model, and understand terms like objective function, L2-norm loss, cross-entropy loss, one gradient descent, and n-parameter gradient descent

Introduction to neural networks

Training the model

Types of machine learning

The linear model

Graphical representation

The objective function

L2-norm loss

Cross-entropy loss

Show all lessons

One-parameter gradient descent

N-parameter gradient descent

Show fewer lessons

Here, we will show you how to install the Jupyter Notebook (the environment we will use to code in Python) and how to import the relevant libraries. Because this course is based in Python, we will be working with several popular libraries – NumPy, SciPy, scikit-learn and TensorFlow.

Setting up the environment - Do not skip, please!

Why Python and why Jupyter

Installing Anaconda

Jupyter Dashboard - Part 1

Jupyter Dashboard - Part 2

Installing the TensorFlow package

It is time to build your first machine learning algorithm. We will show you how to import the relevant libraries, how to generate random input data for the model to train on, how to create the targets the model will aim at, and how to plot the training data. The mechanics of this model exemplify how all regressions you’ve run in different packages (scikit-learn) or software (Excel) work. This is an iterative method aiming to find the best fitting line.

Outline

Generating the data (optional)

Initializing the variables

Training the model

In this section we will introduce the TensorFlow framework – a deep learning library developed by Google. It allows you to construct fairly sophisticated models with little coding. This intro section teaches you what are tensors and why the TensorFlow framework is one of the preferred tools of data scientists in 2019.

TensorFlow outline

TensorFlow introduction

Types of file formats used in TensorFlow

Laying down the model

Laying down the optimizers

Output

From this section on, we will explore deep neural networks. Most real-life dependencies cannot be modelled with a simple linear combination (as we have done so far). And because we want to be better forecasters, we need better models. Most of the time, this means working with a model that is more sophisticated than a liner model. In this section, we will talk about concepts like deep nets, non-linearities, activation functions, softmax activation, and backpropagation. Sounds a bit complex, but we have made it easy for you!

The layer

What is a deep net

Really understand deep nets

Why do we need non-linearities

Activation functions

Softmax activation

Backpropagation

Backpropagation - intuition

Some of the most common pitfalls you can have when creating predictive models, and especially in deep learning is to either underfit or overfit your data. This means to either take less advantage of the machine learning algorithm than you could have due to insufficient training (underfitting), or alternatively create a model that fits the training data too much (over-train the model) that it is not suitable for a different sample (overfitting).

Underfitting and overfitting

Underfitting and overfitting. A classification example

Train vs validation

Train vs validation vs test

N-fold cross validation

Early stopping - motivation and types

Initialization is the process in which we set the initial values of weights and it's an important aspect of building a machine learning model. In this section, you will learn how initialize the weights of your model and how to apply Xavier initialization.

Initializaiton

Types of simple initializations

Xavier's initialization

The gradient descent iterates over the whole training set before updating the weights. Every iteration updates the weights in a relatively small way. Here, you will learn common pitfalls related to this method and how to boost them, using stochastic gradient descent, momentum, learning rate schedules, and adaptive learning rates.

SGD&Batching

Local minima pitfalls

Momentum

Learning rate schedules

Learning rate schedules. A picture

Adaptive learning schedules

Adaptive moment estimation

A large part of the effort data scientists make when creating a new model is related to preprocessing. This process refers to any manipulation we apply to the dataset before running it and training the model. Learning how to preprocess data is fundamental for anyone who wants to be able to create machine learning models, as no meaningful framework can simply take raw data and provide an answer. In this part of the course, we will show you how to prepare your data for analysis and modeling.

Preprocessing

Basic preprocessing

Standardization

Dealing with categorical data

One-hot vs binary

All the lessons so far will have given you a solid preparation for what we're about to start doing: writing code. The problem we will solve here is the “Hello, world” of machine learning. It is called MNIST classification and consists of 70,000 hand written digits. Together, we will create an algorithm that takes as input an image and then correctly determines, which number is shown in that image.

MNIST dataset

How to tackle the MNIST dataset

MNIST - Importing libraries and data

MNIST - Outlining the model

MNIST - Declaring the loss

Accuracy of a model

Early stopping and batching preparation

Optimization

Show all lessons

Commenting on the results

Show fewer lessons

In this section, we will solve a real-life business case, such as the ones data scientists solve on the job. You will build a model that will determine how likely is it that a specific client will come back and buy another product from a company selling audiobooks. This is a great example of how machine learning can help a company optimize its marketing efforts and ultimately grow its bottom line results.

The dataset

Outlining the solution

Balancing a dataset

Preprocessing the data

Creating the batching class

Outlining the model

Optimizing the algorithm

Running the code

Show all lessons

Test

Homework

Show fewer lessons

This section is designed to help you continue your specialization and data science journey. In this section, we discuss what is further out there in the machine learning world, how Google’s DeepMind uses machine learning, what are RNNs, and what non-NN approaches are there.

Summary

Whats more out there

An overview of CNNs

An overview of RNNs

Non-NN approaches

MODULE 3

This course is part of Module 3 of the 365 Data Science Program. The complete training consists of four modules, each building up on your knowledge from the previous one. Expanding on your statistical and programming skills from Modules 1 and 2, Module 3 is designed to improve your programming skills and develop your advanced statistical thinking. You will learn how to build complete linear and logistic regression models, how to cluster data, and how to build deep learning models with TensorFlow 2.0.

See All ModulesReal-life project and data. Solve them on your own computer as you would in the office.

Our expert instructors are happy to help. Post a question and get a personal answer by one of our instructors.

Earn a verifiable certificate after each completed course. Celebrate your successes and share your progress with your professional network!

Sign up today for FREE!

Whether you want to scale your career or transition into a new field, data science is the number one skillset employers look for. Grow your analytics expertise and get hired as a data scientist!