class: center, middle # Ch0: Introduction to Deep Learning ### Clément Dombry .affiliations[ ![UBFC](images/logo-UBFC.jpg) ![M2S](images/logo-m2s.png) ![LmB](images/logo-lmb.jpg) ] .credits[ Based on the lecture notes and slides by Charles Ollion et Olivier Grisel [available on Github](https://github.com/m2dsupsdlclass/lectures-labs)
THANKS TO THEM ! ] --- # Goal of the class ## Understanding DL - When and where to use DL ? - Understand the most important models (MLP, CNN) - Understand the most important concepts (training, regularisation, transfer learning) -- ## Practice of DL - Implement using `Keras/Tensorflow` - Engineering for building and training DL --- # Short history: early ages - Back from 1950, the artificial intelligence community is trying to mimick the mechanisms in the brain with artificial neurons and neural networks. .center[
] - F. Rosenblatt (1958). The perceptron: a probabilistic model for information storage and organisation in the brain. - P. Werbos's PhD (1974) on the training of multilayer perceptron with backpropagation algorithm. - Allthough the theory was avalaible, practice was difficult and training of deep neural networks was not possible. --- # Short history: take-off - First successes in the 90’s, with applications in image and speech recognition (Yan LeCun). - 2009: Nvidia Graphical Processing Units (GPU) were used to train deep neural networks, speeding up training of a factor 100 (from weeks to hours or days). - 2012: ImageNet challenge - CNN outperformed current methods for large scale image classification.
Error rate: 25% in 2011, 16% in 2012, 4% in 2016.
- 2015: AlphaGo developped by Deepmind wins against the European champion, in 2017 against the world champion. - 2015: TensorFlow, free and open-source software for DL, was released under apache license by Google. In 2019, TensorFLow2/Keras provides a simple API making DL accessible. --- # What is Deep Learning ? .center[
] - Good old Neural Networks, with more layers/modules - Non-linear, hierarchical, abstract representations of data - Flexible models with any input/output type and size - Differentiable Functional Programming (Tensorflow) --- # Why Deep Learning Now? - Better algorithms & understanding - .grey[Computing power (GPUs, TPUs, ...)] - .grey[Data with labels] - .grey[Open source tools and models] .center[
] --- # Why Deep Learning Now? - Better algorithms & understanding - Computing power (GPUs, TPUs, ...) - .grey[Data with labels] - .grey[Open source tools and models] .center[
_GPU and TPU_
] --- # Why Deep Learning Now? - Better algorithms & understanding - Computing power (GPUs, TPUs, ...) - Data with labels - .grey[Open source tools and models] .center[
_Adapted from Andrew Ng_
] --- # Why Deep Learning Now? - Better algorithms & understanding - Computing power (GPUs, TPUs, ...) - Data with labels - Open source tools and models .center[
] --- # DL Today: Speech-to-Text .center[
] --- # DL Today: Vision .center[
] --- # DL Today: Vision .center[
] --- # DL Today: NLP .center[
] --- # DL Today: NLP .center[
] -- Most of chatbots claiming "AI" do not use Deep Learning (yet?) --- # DL Today: Vision + NLP .center[
] --- # DL Today: Image translation .center[
] --- # DL Today: Generative models .center[
Sampled celebrities [Nvidia 2017] ] --
.center[
StackGAN v2 [Zhang 2017] ] --- # DL Today: Generative models .center[
Sound generation with WaveNet [DeepMind 2017] ] --
Guess which one is generated? .center[
_Tacotron 2 Natural TTS Synthesis by Conditioning WaveNet on Mel Spectrogram Predictions, 2017_
] --- # Language / Image models Open-AI GPT-3, or DALL-E: https://openai.com/blog/dall-e/ .center[
] --- # DL in Science: Genomics .center[
] -- .center[
[AlphaFold by DeepMind](https://deepmind.com/blog/article/alphafold-a-solution-to-a-50-year-old-grand-challenge-in-biology)
] --- # DL in Science: Chemistry, Physics .center[
] --- # DL in Science: Chemistry, Physics .center[
] - Finite element simulator accelerated (~100 fold) by a 3D convolutional network --- # DL for AI in games .center[
] --
AlphaGo/Zero: Monte Carlo Tree Search, Deep Reinforcement Learning, self-play
--- # Outline of the class ## Course - Ch1: Linear regression and logistic regression revisited - Ch2: MLP (MultiLayer Perceptron) and backpropagation - Ch3: CNN (Convolution Neural Networks) and image classification - Ch4: Optimization and Regularization ## Labs - Mostly using 'Keras/Tensorflow' --- # Organisation and evaluation ## Organisation - 4x3h = 12h course (with Clément Dombry) - 4x3h = 12h lab (with Romain Pic) -- ## Evaluation - exam in January (50% of final mark) - project with defense in January (50%) --- # Beyond this course ## Recommended books - [Ian Goodfellow's book](http://www.deeplearningbook.org/): .small[math and main concepts] - [Francois Chollet's book](https://www.manning.com/books/deep-learning-with-python): .small[Keras programming] - [Aurélien Géron's book](https://www.oreilly.com/library/view/hands-on-machine-learning/9781492032632/): .small[Machine Learning with Scikit-learn and Deep Learning with TF/Keras] -- ## Recommended online courses - [Institut Polytechnique](https://github.com/m2dsupsdlclass/lectures-labs): .small[Master course on deep learning] - [Coursera course from Imperial College London](https://www.coursera.org/learn/getting-started-with-tensor-flow2): .small[Getting started with TensorFlow 2, Customizing your Models with TensorFlow2, Probabilistic Deep Learning with Tensorflow2]