Home

Awesome

<table width="100%"> <tr> <td width="50%"> <H2>Featured code sample</H2> <b><a href="tensorflow-planespotting">tensorflow-planespotting</a></b><br/> 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. <td width="50%"><a href="https://youtu.be/KC4201o83W0"><img alt="Tensorflow, deep learning and modern convnets, without a PhD" src="tensorflow-planespotting/img/next2018thumb.jpg"/></a></td> </tr> </table> <br/>

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.

<table width="100%"> <tr> <td width="50%"><img alt="Tensorflow and deep learning without a PhD" src="docs/images/flds1.png"/></td> <td width="50%"> <div align="center"> <a href="https://youtu.be/u4alGiomYP4">video</a> | <a href="https://docs.google.com/presentation/d/1TVixw6ItiZ8igjp6U17tcgoFrLSaHWQmMOwjlgQY9co/pub?slide=id.p">slides</a> | <a href="https://codelabs.developers.google.com/codelabs/cloud-tensorflow-mnist/#0">codelab</a> | <a href="tensorflow-mnist-tutorial">code</a><br/><br/></div> <p>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</p></td> </tr> <tr> <td width="50%"><div align="center"> <a href="https://youtu.be/vq2nnJ4g6N0?t=76m">video</a> | <a href="https://docs.google.com/presentation/d/18MiZndRCOxB7g-TcCl2EZOElS5udVaCuxnGznLnmOlE/pub?slide=id.g1245051c73_0_25">slides</a> | <a href="tensorflow-mnist-tutorial/README_BATCHNORM.md">code</a><br/><br/></div> <p>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</p></td> <td width="50%"><img alt="The superpower: batch normalization" src="docs/images/flds2.png"/></td> </tr> <tr> <td border=0 width="50%"><img alt="Tensorflow, deep learning and recurrent neural networks, without a PhD" src="docs/images/flds3.png"/></td> <td border=0 width="50%"> <div align="center"> <a href="https://youtu.be/fTUwdXUFfI8">video</a> | <a href="https://docs.google.com/presentation/d/18MiZndRCOxB7g-TcCl2EZOElS5udVaCuxnGznLnmOlE/pub?slide=id.p">slides</a> | <a href="tensorflow-rnn-tutorial">codelab</a> | <a href="https://github.com/martin-gorner/tensorflow-rnn-shakespeare">code</a><br/><br/></div> <p> 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</p></td> </tr> <tr> <td width="50%"><div align="center"> <a href="https://youtu.be/KC4201o83W0">video</a> | <a href="https://docs.google.com/presentation/d/19u0Tm0JHL5tpzyarLILvy4qLSuDBFNNx2hwSvZsFPI0/pub">slides</a> | <a href="tensorflow-planespotting">code</a><br/><br/></div> <p>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</p></td> <td width="50%"><img alt="Tensorflow, deep learning and modern convnets, without a PhD" src="docs/images/flds4.png"/></td> </tr> <tr> <td border=0 width="50%"><img alt="Tensorflow, deep learning and modern RNN architectures, without a PhD" src="docs/images/flds5.png"/></td> <td border=0 width="50%"> <div align="center"> <a href="https://youtu.be/pzOzmxCR37I">video</a> | <a href="https://docs.google.com/presentation/d/17gLPozfb-l3WCR8FnejNJD9tEI_igTq1YqIXzCtOR14/pub">slides</a> | <a href="https://github.com/conversationai/conversationai-models/tree/master/attention-tutorial">code</a><br/><br/></div> <p>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</p></td> </tr> <tr> <td width="50%"><div align="center"> <a href="https://youtu.be/t1A3NTttvBA">video</a> | <a href="https://docs.google.com/presentation/d/1qLVvgKxZlM6_oOZ4-ZoOAB0wTh2IdhbFvuBhsMvmK9I/pub">slides</a> | <a href="tensorflow-rl-pong">code</a><br/><br/></div> <p> 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</p></td> <td width="50%"><img alt="Tensorflow and deep reinforcement learning, without a PhD" src="docs/images/flds6.png"/></td> </tr> </table> <br/> <br/> <br/> <table width="75%"> <tr><td colspan="4">Quick access to all code samples:</td></tr> <tr> <td width="33%"> <b><a href="tensorflow-mnist-tutorial">tensorflow-mnist-tutorial</a></b><br/> dense and convolutional neural network tutorial </td> <td width="33%"> <b><a href="tensorflow-rnn-tutorial">tensorflow-rnn-tutorial</a></b><br/> recurrent neural network tutorial using temperature series </td> <td width="33%"> <b><a href="tensorflow-rl-pong">tensorflow-rl-pong</a></b><br/> "pong" with reinforcement learning </td> </tr> <tr> <td width="33%"> <b><a href="tensorflow-planespotting">tensorflow-planespotting</a></b><br/> airplane detection model </td> <td width="33%"> <b><a href="https://github.com/conversationai/conversationai-models/tree/master/attention-tutorial">conversationai: attention-tutorial</a></b><br/> Toxic comment detection with RNNs and attention </td> </tr> </table> <br/> <br/> <br/> *Disclaimer: This is not an official Google product but sample code provided for an educational purpose*