Summary and Setup

Welcome


This is a hands-on introduction to the first steps in deep learning, intended for researchers who are familiar with (non-deep) machine learning.

The use of deep learning has seen a sharp increase of popularity and applicability over the last decade. While deep learning can be a useful tool for researchers from a wide range of domains, taking the first steps in the world of deep learning can be somewhat intimidating. This introduction aims to cover the basics of deep learning in a practical and hands-on manner, so that upon completion, you will be able to train your first neural network and understand what next steps to take to improve the model.

We start with explaining the basic concepts of neural networks, and then go through the different steps of a deep learning workflow. Learners will learn how to prepare data for deep learning, how to implement a basic deep learning model in Python with Keras, how to monitor and troubleshoot the training process and how to implement different layer types such as convolutional layers.

Prerequisites

Learners are expected to have the following knowledge:

  • Basic Python programming skills and familiarity with the Pandas package.
  • Basic knowledge on machine learning, including the following concepts: Data cleaning, train & test split, type of problems (regression, classification), overfitting & underfitting, metrics (accuracy, recall, etc.).

Software Setup


Installing Python using Anaconda

Python is a popular language for scientific computing, and a frequent choice for machine learning as well. Installing all of its scientific packages individually can be a bit difficult, however, so we recommend the installer Anaconda which includes most (but not all) of the software you will need.

Regardless of how you choose to install it, please make sure you install Python version 3.x (e.g., 3.4 is fine). Also, please set up your python environment at least a day in advance of the workshop. If you encounter problems with the installation procedure, ask your workshop organizers via e-mail for assistance so you are ready to go as soon as the workshop begins.

Checkout the video tutorial or:

  1. Open https://www.anaconda.com/products/distribution with your web browser.
  2. Download the Python 3 installer for Windows.
  3. Double-click the executable and install Python 3 using MOST of the default settings. The only exception is to check the Make Anaconda the default Python option.

Checkout the video tutorial or:

  1. Open https://www.anaconda.com/products/distribution with your web browser.
  2. Download the Python 3 installer for OS X. Make sure to use the correct version for your hardware, i.e. choose the options with “(M1)” if yours is one of the more recent models containing Apple’s chip.
  3. Install Python 3 using all of the defaults for installation.

Note that the following installation steps require you to work from the shell. If you run into any difficulties, please request help before the workshop begins.

  1. Open https://www.anaconda.com/products/distribution with your web browser.
  2. Download the Python 3 installer for Linux.
  3. Install Python 3 using all of the defaults for installation.
    1. Open a terminal window.
    2. Navigate to the folder where you downloaded the installer
    3. Type

    BASH

    bash Anaconda3-
    and press tab. The name of the file you just downloaded should appear.
    1. Press enter.
    2. Follow the text-only prompts. When the license agreement appears (a colon will be present at the bottom of the screen) hold the down arrow until the bottom of the text. Type yes and press enter to approve the license. Press enter again to approve the default location for the files. Type yes and press enter to prepend Anaconda to your PATH (this makes the Anaconda distribution the default Python).

Installing the required packages


Conda is the package management system associated with Anaconda and runs on Windows, macOS and Linux. Conda should already be available in your system once you installed Anaconda successfully. Conda thus works regardless of the operating system.

  1. Make sure you have an up-to-date version of Conda running. See these instructions for updating Conda if required. {: .callout}

  2. To create a conda environment called dl_workshop with the required packages, open a terminal (Mac/Linux) or Anaconda prompt (Windows) and type the command:

BASH

conda create --name dl_workshop python jupyter 'seaborn>=13.0.0' scikit-learn pandas
  1. Activate the newly created environment:
conda activate dl_workshop
  1. After activating your environment, install tensorflow using pip (python’s package manager):

BASH

pip install tensorflow

Note that modern versions of Tensorflow make Keras available as a module. pip is the package management system for Python software packages. It is integrated into your local Python installation and runs regardless of your operating system too.

Python package installation troubleshooting

It is possible that Windows users will run into version conflicts. If you are on Windows and get errors running the command, you can try installing the packages using pip within a conda environment:

BASH

conda create -n dl_workshop python jupyter
conda activate dl_workshop
pip install tensorflow>=2.5 seaborn scikit-learn pandas

Newer Macs (from 2020 onwards) often have a different kind of chip, manufactured by Apple instead of Intel. This can lead to problems installing Tensorflow. If you get errors running the installation command or conda hangs endlessly, you probably need to change the version of Anaconda you have installed.

  1. Uninstall Anaconda
  2. Download the version of Anaconda for Apple chips (i.e. the version with “(M1)” in the name) and install it with the default settings
  3. Follow the instructions above to install the required packages

Starting Jupyter Lab


We will teach using Python in Jupyter lab, a programming environment that runs in a web browser. Jupyter requires a reasonably up-to-date browser, preferably a current version of Chrome, Safari, or Firefox (note that Internet Explorer version 9 and below are not supported). If you installed Python using Anaconda, Jupyter should already be on your system. If you did not use Anaconda, use the Python package manager pip (see the Jupyter website for details.)

To start jupyter lab, open a terminal (Mac/Linux) or Anaconda prompt (Windows) and type the command:

BASH

jupyter lab

To start the Python interpreter without jupyter lab, open a terminal (Mac/Linux) or Anaconda prompt (Windows) or git bash and type the command:

BASH

python

Check your setup


To check whether all packages installed correctly, start a jupyter notebook in jupyter lab as explained above. Run the following lines of code:

PYTHON

import sklearn
print('sklearn version: ', sklearn.__version__)

import seaborn
print('seaborn version: ', seaborn.__version__)

import pandas
print('pandas version: ', pandas.__version__)

import tensorflow
print('Tensorflow version: ', tensorflow.__version__)

This should output the versions of all required packages without giving errors. Most versions will work fine with this lesson, but: - For Keras and Tensorflow, the minimum version is 2.12.0 - For sklearn, the minimum version is 1.2.2

Fallback option: cloud environment


If a local installation does not work for you, it is also possible to run this lesson in Binder Hub. This should give you an environment with all the required software and data to run this lesson, nothing which is saved will be stored, please copy any files you want to keep. Note that if you are the first person to launch this in the last few days it can take several minutes to startup. The second person who loads it should find it loads in under a minute. Instructors who intend to use this option should start it themselves shortly before the workshop begins.

Alternatively you can use Google colab. If you open a jupyter notebook here, the required packages are already pre-installed. Note that google colab uses jupyter notebook instead of jupyter lab.

Downloading the required datasets


Download the weather dataset prediction csv and Dollar street dataset (4 files in total)