March 19, 2020

436 words 3 mins read

Vadikus/practicalDL

Vadikus/practicalDL

A Practical Guide to Deep Learning with TensorFlow 2.0 and Keras materials for Frontend Masters course

repo name Vadikus/practicalDL
repo link https://github.com/Vadikus/practicalDL
homepage
language Jupyter Notebook
size (curr.) 3453 kB
stars (curr.) 40
created 2019-11-13
license Apache License 2.0

github.com/Vadikus/practicalDL

Educational materials for Frontend Masters course “A Practical Guide to Deep Learning with TensorFlow 2.0 and Keras”

Setup

Prerequisite: Python

To use Jupyter Notebooks on your computer - please follow the installation instructions. Note: Anaconda installation is recommended if you are not familiar with other Python package management systems.

Guided Steps

  • Install dependencies

    pip install -r requirements.txt
    
  • Run jupyter notebook

    jupyter notebook
    

Agenda/Curriculum

00) Introductions:

  • πŸ™‹β€β™‚οΈ About myself
  • About this course/workshop - quick demo & tools overview
    • 🎨 Whiteboard drawings
    • πŸ“ Jupyter Notebooks
    • πŸ‘¨πŸ»β€πŸ’» Terminal commands (pip, jupyter -> !cmd, pyenv & conda)
    • πŸ’» GitHub repos (for class, TFJS -> πŸŽ₯ pose demo πŸ•Ί, books repos, TF/Keras demos)
    • πŸ•Έ Websites (TF, TF-hub)
    • πŸ“š Books: books
      • “Deep Learning with Python” by FranΓ§ois Chollet
      • “Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems” by AurΓ©lien GΓ©ron
      • “Hands-On Neural Networks with TensorFlow 2.0” by Paolo Galeone
  • (plot) What is the difference between Statistics / Machine Learning / Deep Learning / Artificial Intelligence? @matvelloso. Shoes size example. Information reduction.
  • (plot) Compute + Algorithm + IO
  • (plot) Why now, AI? Chronological retrospective.
  • (plot) Hardware advances: SIMD, Tensor Cores, TPU, FPGA, Quantum Computing
  • (plot) HW, compilers, TensorFlow and Keras -> computational graph, memory allocation

0) Don’t be scared of Linear Regressions - it does not “byte”!.. Basic Terminology:

  • Linear regression Notebook
  • 🐡🧠 (plot) What is neuron? What is activation function?

1) πŸ‘€ Computer Vision:

  • ✍🏻 Handwritten digits (MNIST) recognized with fully connected neural network
  • πŸ“Έ (plot) One-hot encoding
  • πŸ‘ Information theory and representation: MNIST Principal Component Analysis
  • πŸ™ˆ (plot) Fully connected vs. convolutional neural network
  • πŸ“· (plot + Notebook) Convolutions, pooling, dropouts
  • πŸ›’ (plot) Transfer learning and different topologies
  • 🎨 Style transfer
  • 🧐 (Convolutional) Neural Network attention - ML explainability

2) Text Analytics - Natural Language Processing (NLP):

  • 🀬 Toxicity demo
  • πŸ“ (plot) How to represent text as numbers? Text vectorization: one-hot encoding, tokenization, word embeddings
  • πŸ™Š IMDB movies review dataset prediction with hot-encoding in Keras
  • 🀯 Word embeddings and Embedding Projector
  • πŸ—’ Embedding vs hot-encoding and Fully Connected Neural Network for IMDB
  • πŸ“’ Can LSTM guess the author?

3) Can Robot juggle? Reinforcement Learning:

  • 🎭 (plot) Actors and environment
  • Reinforcement learning

4) Operationalization, aka “10 ways to put your slapdash code into production…”

  • (plot) Data - Training - Deployment aka MLOps or CI/CD for Data Scientists

5) Summary

  • Quick recap what we learned so far
comments powered by Disqus