James L. Weaver
Developer Advocate
 


jweaver@pivotal.io
JavaFXpert.com

@JavaFXpert

Katharine Beaumont
Developer / Mathematician

 


kbe@voxxed.com
voxxed.com

@KatharineCodes

Machine Learning

Understanding Machine Learning

About Presenter Katharine Beaumont

Writer and editor for Voxxed, interviewer for Devoxx and Voxxed Days, developer for fun :-)

@KatharineCodes

Perpetual student, wandering into software development from maths, science, publishing, politics, law...

Developer / Mathematician / Writer / Speaker -  Voxxed

About Presenter James Weaver

Java Champion, JavaOne Rockstar, plays well with others, etc :-)

@JavaFXpert

Author of several Java/JavaFX/RaspPi books

Developer Advocate & International Speaker for Pivotal

@JavaFXpert

You are cordially invited to ...

From introductory video in Machine Learning course (Stanford University & Coursera) taught by Andrew Ng.

@KatharineCodes  @JavaFXpert

Self-driving cars

@KatharineCodes  @JavaFXpert

Generating image descriptions

@KatharineCodes  @JavaFXpert

Supervised Learning

@KatharineCodes  @JavaFXpert

S​upervised learning regression problem

@KatharineCodes  @JavaFXpert

Unsupervised Learning

@KatharineCodes  @JavaFXpert

Unsupervised learning finds structure in unlabeled data

(e.g. market segment discovery, and social network analysis)

@KatharineCodes  @JavaFXpert

Reinforcement Learning

@KatharineCodes  @JavaFXpert

AlphaGo is a recent reinforcement learning success story

@KatharineCodes  @JavaFXpert

Supervised Learning

(Let's dive in now)

@KatharineCodes  @JavaFXpert

S​upervised learning regression problem

@KatharineCodes  @JavaFXpert

Supervised learning classification problem

(using the classic Iris flower data set)

@KatharineCodes  @JavaFXpert

@KatharineCodes  @JavaFXpert

Visualizing Iris dataset with TensorFlow tool

@KatharineCodes  @JavaFXpert

Lab Exercise:

@KatharineCodes  @JavaFXpert

  1. Select the Circle dataset icon and only the X1 & X2 features.
  2. Using a total of six neurons allocated among any number of hidden layers, modify the hyperparameters in such a way that minimizes the number of Epochs required to make the Test loss and Training loss each <= 0.009
  3. Tweet screenshot with your lowest Epochs result using #MachineLearningExposed and presenters' Twitter IDs

Practice tuning neural network hyperparameters

Is Optimizing your Neural Network a Dark Art ?

Excellent article by Preetham V V on neural networks and choosing hyperparameters

@KatharineCodes  @JavaFXpert

Convolutional neural networks

Recognizing images

@KatharineCodes  @JavaFXpert

Convolutional neural network architecture

@KatharineCodes  @JavaFXpert

Peeking into a convolutional neural network

@KatharineCodes  @JavaFXpert

Time series prediction with neural networks

What is happening?  What is most likely to happen next?

@KatharineCodes  @JavaFXpert

This is a job for a Recurrent Neural Network

What is happening?  What is most likely to happen next?

@KatharineCodes  @JavaFXpert

Music composition with an RNN

@KatharineCodes  @JavaFXpert

Predicting the most likely next note

@KatharineCodes  @JavaFXpert

Playing a duet with neural networks

@KatharineCodes  @JavaFXpert

Playing a duet with neural networks

@KatharineCodes  @JavaFXpert

Unsupervised Learning

@KatharineCodes  @JavaFXpert

(Let's dive in now)

Using unsupervised learning to map artworks

@KatharineCodes  @JavaFXpert

Reinforcement Learning

(Let's dive in now)

@KatharineCodes  @JavaFXpert

Using BURLAP for Reinforcement Learning

@KatharineCodes  @JavaFXpert

Learning to Navigate a Grid World with Q-Learning

@KatharineCodes  @JavaFXpert

Rules of this Grid World

  • Agent may move left, right, up, or down (actions)
  • Reward is 0 for each move
  • Reward is 5 for reaching top right corner (terminal state)
  • Agent can't move into a wall or off-grid
  • Agent doesn't have a model of the grid world.  It must discover as it interacts.

Challenge: Given that there is only one state that gives a reward, how can the agent work out what actions will get it to the reward?

(AKA the credit assignment problem)

Goal of an episode is to maximize total reward

@KatharineCodes  @JavaFXpert

This Grid World's MDP (Markov Decision Process)

In this example, all actions are deterministic

@KatharineCodes  @JavaFXpert

Agent learns optimal policy from interactions with the environment (s, a, r, s')

@KatharineCodes  @JavaFXpert

Through the Eyes of a Self-Driving Tesla

@KatharineCodes  @JavaFXpert

Summary of links

@KatharineCodes  @JavaFXpert

James L. Weaver
Developer Advocate
 


jweaver@pivotal.io
JavaFXpert.com

@JavaFXpert

Katharine Beaumont
Developer / Mathematician

 


kbe@voxxed.com
voxxed.com

@KatharineCodes

Machine Learning

Introduction to Machine Learning

Machine Learning Exposed: Understanding Machine Learning

By javafxpert

Machine Learning Exposed: Understanding Machine Learning

Shedding light on machine learning, being gentle with the math.

  • 3,169