This repo contains slides and datasets used in the 2023 course Introduction to deep learning for biologists. Material is released during the course week and will stay online a few months after the course.
Exercises are in the form of jupyter notebooks and can be either downloaded and run locally or explored online via platforms such as Binder, Google Colab (a free Google account is required) or Kaggle Notebooks (a free Kaggle account plus phone verification is required).
This section moved to the code-only repo bioinformateachers, which supports the bioinformatics-oriented educational website The Bioinformateachers.
Here you find all the slides used in the course (we upload them at the end of each day).
All codes used during the lessons plus some extra exercises and solutions are found in the various lab folders (e.g. lab_day1).
Day 1
- Lecture 0: Introducing the course,the instructors and the participants day1_block00 Introductions
- Lab 1: Introduction to Jupyter notebooks and Python libraries day1_code00 basic python
- Lecture 1: Introduction to deep learning day1_block01 Introduction to DL
- Lecture 2 + Lab 2: MNIST data problem
- Lecture 3: Supervised learning day1_block03 supervised_learning
- Lecture 4: Building blocks 1 day1_block04 Building blocks of DL
- Lecture 5: Introduction to Keras day1_block05 Keras
- Lab 3: Play with keras + Tensorflow Playground
Day 2
- Lab 2 recap: the MNIST functions explained day2_code00 keras_MNIST_detailed
- Lecture 6: Logistic regression day2_block01 logistic regression and binary classification
- Lab 4: Hands-on logistic regression [day2_code01 logistic regression iris [EXERCISE]](lab_day2/day2_code01 logistic regression iris [EXERCISE].ipynb)
- Lecture 7a: From logistic regression to neural networks day2_block02 Neural networks models
- Lecture 7b: Deep neural networks day2_block02 Neural networks models
- Lab 5: Hands-on neural networks models [day2_code02 keras shallow neural networks](lab_day2/day2_code02 keras shallow neural networks.ipynb)
- Students exercise: Neural networks models day2_code04 neural networks [EXERCISE]
- Quick snippet: Neural Networks for feature selection demo
Day 3
- Lecture 8: Multiclass classification and softmax regression day3_block01 Multiclass classification
- Lab 6: Multiclass classification and softmax regression day2_code03 keras multiclass classification
- Lecture 9: Cross-validation day3_block02 Crossvalidation
- Lab 7: Practical cross-validation with deep learning day3_code02 heart disease crossv.ipynb
- Lecture 10: Building blocks 2 day3_block03 Building blocks of DL #2
- Lab 8: Looking inside convolutions day3_code03 inside convolution.ipynb
- Exercise: Deep learning models day3_code03 heart disease crossv [EXERCISE].ipynb
- Day 3 wrap-up discussion day3_block04 day 3 wrap-up
Day 4
- Lecture 11 + Lab 9: Data generators and data augmentation
- Lecture 12: RNN theory - part 1 day4_block02 RNN models #1
- Lab 10: RNN models + time series data
- Lecture 13 Recipe for a good project day4_block03 The recipe for a good project
- Lab 11: Recap exercise day4_code03 chest x rays (data augm, regul) [EXERCISE]
- Lab 12: Under/Over fitting day4_code04_under_over_fitting.ipynb and Double descent day4_block04 Bias-Variance Trade-off and double descent
- Lab 13: Deep learning for regression day4_code05 keras regression [EXERCISE]
- Lab 14: Semi-automated hyperparameters-tuning day4_block05 day 4 wrap-up
Day 5
- Lecture 14 Transfer learning day5_block01 Architectures and transfer learning + day5_code01_chest_x_rays_models.ipynb
- Lecture 15: RNN theory - part 2 day5_block02 RNN models #2
- Lab 15: RNN lab
- Lecture 16: Segmentation + demo
- Final Quiz
- Wrap-up discussion