Understand and build Deep Learning models for images, text, sound and more using Python and Keras
- To describe what Deep Learning is in a simple yet accurate way
- To explain how deep learning can be used to build predictive models
- To distinguish which practical applications can benefit from deep learning
- To install and use Python and Keras to build deep learning models
- To apply deep learning to solve supervised and unsupervised learning problems involving images, text, sound, time series and tabular data.
- To build, train and use fully connected, convolutional and recurrent neural networks
- To look at the internals of a deep learning model without intimidation and with the ability to tweak its parameters
- To train and run models in the cloud using a GPU
- To estimate training costs for large models
- To re-use pre-trained models to shortcut training time and cost (transfer learning)
- Knowledge of Python, familiarity with control flow (if/else, for loops) and pythonic constructs (functions, classes, iterables, generators)
- Use of bash shell (or equivalent command prompt) and basic commands to copy and move files
- Basic knowledge of linear algebra (what is a vector, what is a matrix, how to calculate dot product)
- Use of ssh to connect to a cloud computer
This course is designed to provide a complete introduction to Deep Learning. It is aimed at beginners and intermediate programmers and data scientists who are familiar with Python and want to understand and apply Deep Learning techniques to a variety of problems.
We start with a review of Deep Learning applications and a recap of Machine Learning tools and techniques. Then we introduce Artificial Neural Networks and explain how they are trained to solve Regression and Classification problems.
Over the rest of the course we introduce and explain several architectures including Fully Connected, Convolutional and Recurrent Neural Networks, and for each of these we explain both the theory and give plenty of example applications.
This course is a good balance between theory and practice. We don’t shy away from explaining mathematical details and at the same time we provide exercises and sample code to apply what you’ve just learned.
The goal is to provide students with a strong foundation, not just theory, not just scripting, but both. At the end of the course you’ll be able to recognize which problems can be solved with Deep Learning, you’ll be able to design and train a variety of Neural Network models and you’ll be able to use cloud computing to speed up training and improve your model’s performance.
- Software engineers who are curious about data science and about the Deep Learning buzz and want to get a better understanding of it
- Data scientists who are familiar with Machine Learning and want to develop a strong foundational knowledge of deep learning