Skip to content

A crash course in six episodes for software developers who want to become machine learning practitioners.

License

Notifications You must be signed in to change notification settings

dilshanfardil/tensorflow-without-a-phd

 
 

Repository files navigation

Featured code sample

tensorflow-planespotting
Code from the Google Cloud NEXT 2018 session "Tensorflow, deep learning and modern convnets, without a PhD". Other samples from the "Tensorflow without a PhD" series are in this repository too.
Tensorflow, deep
        learning and modern convnets, without a PhD

Tensorflow and deep learning without a PhD series by @martin_gorner.

A crash course in six episodes for software developers who want to learn machine learning, with examples, theoretical concepts, and engineering tips, tricks and best practices to build and train the neural networks that solve your problems.

Tensorflow and deep learning without a PhD

The basics of building neural networks for software engineers. Neural weights and biases, activation functions, supervised learning and gradient descent. Tips and best practices for efficient training: learning rate decay, dropout regularisation and the intricacies of overfitting. Dense and convolutional neural networks. This session starts with low-level Tensorflow and also has a sample of high-level Tensorflow code using layers and Datasets. Code sample: MNIST handwritten digit recognition with 99% accuracy. Duration: 55 min

What is batch normalisation, how to use it appropriately and how to see if it is working or not. Code sample: MNIST handwritten digit recognition with 99.5% accuracy. Duration: 25 min

The superpower: batch normalization
Tensorflow, deep learning and recurrent neural networks, without a PhD

RNN basics: the RNN cell as a state machine, training and unrolling (backpropagation through time). More complex RNN cells: LSTM and GRU cells. Application to language modeling and generation. Tensorflow APIs for RNNs. Code sample: RNN-generated Shakespeare play. Duration: 55 min

Convolutional neural network architectures for image processing. Convnet basics, convolution filters and how to stack them. Learnings from the Inception model: modules with parallel convolutions, 1x1 convolutions. A simple modern convnet architecture: Squeezenet. Convenets for detection: the YOLO (You Look Only Once) architecture. Full-scale model training and serving with Tensorflow's Estimator API on Google Cloud ML Engine and Cloud TPUs (Tensor Processing Units). Application: airplane detection in aerial imagery. Duration: 55 min

Tensorflow, deep learning and modern convnets, without a PhD
Tensorflow, deep learning and modern RNN architectures, without a PhD

Advanced RNN architectures for natural language processing. Word embeddings, text classification, bidirectional models, sequence to sequence models for translation. Attention mechanisms. This session also explores Tensorflow's powerful seq2seq API. Applications: toxic comment detection and langauge translation. Co-author: Nithum Thain. Duration: 55 min

A neural network trained to play the game of Pong from just the pixels of the game. Uses reinforcement learning and policy gradients. The approach can be generalized to other problems involving a non-differentiable step that cannot be trained using traditional supervised learning techniques. A practical application: neural architecture search - neural networks designing neural networks. Co-author: Yu-Han Liu. Duration: 40 min

Tensorflow and deep reinforcement learning, without a PhD



Quick access to all code samples:
tensorflow-mnist-tutorial
dense and convolutional neural network tutorial
tensorflow-rnn-tutorial
recurrent neural network tutorial using temperature series
tensorflow-rl-pong
"pong" with reinforcement learning
tensorflow-planespotting
airplane detection model
conversationai: attention-tutorial
Toxic comment detection with RNNs and attention



*Disclaimer: This is not an official Google product but sample code provided for an educational purpose*

About

A crash course in six episodes for software developers who want to become machine learning practitioners.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 79.4%
  • Python 17.8%
  • JavaScript 1.7%
  • Other 1.1%