My journey into AI and ML as an app developer: • how I got started • learning resources I used • a few subjects I learned • modern deep learning tools for you get started 3 2016 getting started 2017 online courses 2018 knowledge sharing
interested in AI/ML • Developing apps that showcase ML • Presenting at conferences - “Making Android Apps with Intelligence” • Curious about how AI/ML works and decided to study 6
for prerequisites Unlike app development, getting started with ML and deep learning has more pre-requisites... • Python programming - Learn Python (Code Academy) • Linear algebra, statistics and calculus - for deep learning ◦ I took Linear Algebra Refresher (Udacity) and learned both ▪ linear algebra & ▪ python programming • Intro to Descriptive Statistics (Udacity) • Intro to Inferential Statistics (Udacity) 7
courses • Intro to ML - on both Udacity & Coursera and I highly recommend the ML Foundations course by UW on Coursera • Udacity AI Nanodegree • Udacity Deep Learning Nanodegree • Coursera Deep Learning Specialization ◦ What I learned from Andrew Ng’s Deep Learning Specialization 9
A subset of Artificial Intelligence • Study of algorithms • Learn from examples and experience (instead of hard-coded programming rules) • Example of supervised learning, classification: Source: ML Recipes #1 by Google Developers - https://www.youtube.com/watch?v=cKxRvEZd3Mw 13 Use model to predict Train a model Collect training data
Why CNN? -- With a CNN we can reduce the network parameters which is very useful in computer vision. One of my homework assignment was to create a dog breed classifier using transfer learning 15
With an RNN, we can do translation, generate TV scripts, shakespeare play etc. One of my homework assignment was to generate Jazz music with LSTM (RNN) 16
& fairness Neural networks also has biases because of the data fed into the network For example, you give the word “man” and “woman”, you may get “man as a doctor, woman as a babysitter”, something like that. In Dr. Andrew Ng’s class, I learned techniques to reduce the biases in gender, ethnicity etc in the machine learning models. A few references: • Google Cloud Platform podcast: ML Bias and Fairness with Timnit Gebru & Margaret Mitchell (link) • ML Fairness site by Google (link) • Why we desperately need women to design AI (link) 17
events, blog posts & talks Best way to learn is by knowledge sharing: • Write blog posts ◦ I wrote about my learnings from TF Dev Summit 2018 ◦ AI/ML learning resources monthly newsletter • Organize ML related events • Give talks - like this one! 19
ML events We have quite a few upcoming AI/ML events • End to End ML with TensorFlow on Google Cloud • Machine Learning Study Jam • Action on Google It’s all about AI/ML this year! 22
tools So that was my journey, what would yours look like? These days studying AI/ML is much easier than 2 years ago Now I’d like to share with you some modern tools for you to get started 24
Learning Before: setup Anaconda, Jupter Notebook, install TensorFlow & Keras Now: zero setup by using Colab - created by Google research: • VM running on Google Cloud • You can even train model in GPU! • Expect most of the TensorFlow tutorials to be on Colab 25
both researchers and engineers • Low level APIs - great for research • High level APIs or libraries for you to easily get started: ◦ TensorFlow hub (new, just announced from the TF Dev Summit) ◦ tf.Keras - great for prototyping ◦ Estimators - premade and custom estimators ◦ AutoML ◦ TensorToTensor • TensorFlow Lite - for mobile applications 27
TensorFlow • TensorFlow blog - http://blog.tensorflow.org/ • #AskTensorFlow • All things TensorFlow (on YouTube) I’m sure we will hear more news on TensorFlow at I/O! 28
learning resources! • Udacity School of AI (link) • Coursera Deep Learning Specialization • Google (lots and lots of learning resources by Google…) ◦ Learn with Google AI (link) ◦ ML Crash Course with TernsorFlow APIs ◦ ML with TensorFlow on Google Cloud Platform on Coursera (link) • Fast.ai - hands on quickly pick up deep learning knowledge • Kaggle’s Learn (link) • Kadenze - Creative Applications of Deep Learning with TensorFlow • Microsoft Professional Program in AI • Siraj’s school of AI 29