KERAS: A VERSATILE MODELING
LAYER FOR DEEP LEARNING
Ananth Krishnamoorthy, Ph.D.
Outline Slides for Talk at AntHill 2017
25-Apr-2017
Summary
• As practitioners in Deep Learning, we often want to understand emerging areas
by prototyping and modeling. While there are many python libraries for deep
learning, Keras stands out for it’s simplicity in modeling.
• Keras is a high-level neural networks API, written in Python and capable of
running on top of either TensorFlow or Theano. It was developed with a focus on
enabling fast experimentation. It provides a deep learning library that (1) Allows
for easy and fast prototyping (2) Supports both convolutional networks and
recurrent networks, as well as combinations of the two, and (3) Runs seamlessly
on CPU and GPU.
• In this talk, we explore the basic elements of DL and different DL architectures
using Keras. To facilitate this discussion, we take three seemingly different
applications: (1) Image Recognition, (2) Control a Car (Simulation), and (3)
Speech Recognition
• The focus of this talk is on modelling, and that is where we shall spend the bulk of
our time. We will quickly discuss the basics and then look at applications,
stepping through the core Keras code visually, and do a few demos.
Intro to Deep Learning
• A few years ago, before the formalization of deep learning, areas like
image recognition, speech recognition, real time video analytics, etc.
were mutually exclusive, each having it’s own methods.
• With the advent of deep learning, there is finally a unified
methodology to tackle all these problems and more, within a single
paradigm
• Two of the popular models in Deep Learning are (Convolution Neural
Networks (CNN) and Recurrant Neural Networks (RNN)
• The above two models and their combinations can be used to create
powerful deep learning tools. Keras lets you accomplish this in a very
simple way.
What is a Deep Learning Architecture?
• Architecture is the scheme for combining various neural network
layers, into a deep learning machine
• In this section, we shall talk about popular architectures such as VGG
and Encoder-Decoder Network, just to get an idea behind these
Keras Basics
• We shall review the basic layers in Keras, with the goal of understanding
the modelling aspects only.
• This is not a deep dive, we need to pickup just enough to understand the
modelling.
Application 1: Image Recognition
• We will present model, visual-code walkthrough, and a
demo
(working on new code)
Image courtesy: https://www.tensorflow.org/tutorials/image_recognition
Application 2: Control a Car
• We will present model, visual-code walkthrough, and a
demo of a simulated car controlled by a CNN
https://www.youtube.com/watch?v=gpT9YhjdnnM&t
Application 3: Speech Recognition
• We will present model, visual-code walkthrough, and a
demo. This will illustrate an RNN based model.
Image courtesy: Adam Geitgey Blog, Medium

Keras: A versatile modeling layer for deep learning

  • 1.
    KERAS: A VERSATILEMODELING LAYER FOR DEEP LEARNING Ananth Krishnamoorthy, Ph.D. Outline Slides for Talk at AntHill 2017 25-Apr-2017
  • 2.
    Summary • As practitionersin Deep Learning, we often want to understand emerging areas by prototyping and modeling. While there are many python libraries for deep learning, Keras stands out for it’s simplicity in modeling. • Keras is a high-level neural networks API, written in Python and capable of running on top of either TensorFlow or Theano. It was developed with a focus on enabling fast experimentation. It provides a deep learning library that (1) Allows for easy and fast prototyping (2) Supports both convolutional networks and recurrent networks, as well as combinations of the two, and (3) Runs seamlessly on CPU and GPU. • In this talk, we explore the basic elements of DL and different DL architectures using Keras. To facilitate this discussion, we take three seemingly different applications: (1) Image Recognition, (2) Control a Car (Simulation), and (3) Speech Recognition • The focus of this talk is on modelling, and that is where we shall spend the bulk of our time. We will quickly discuss the basics and then look at applications, stepping through the core Keras code visually, and do a few demos.
  • 3.
    Intro to DeepLearning • A few years ago, before the formalization of deep learning, areas like image recognition, speech recognition, real time video analytics, etc. were mutually exclusive, each having it’s own methods. • With the advent of deep learning, there is finally a unified methodology to tackle all these problems and more, within a single paradigm • Two of the popular models in Deep Learning are (Convolution Neural Networks (CNN) and Recurrant Neural Networks (RNN) • The above two models and their combinations can be used to create powerful deep learning tools. Keras lets you accomplish this in a very simple way.
  • 4.
    What is aDeep Learning Architecture? • Architecture is the scheme for combining various neural network layers, into a deep learning machine • In this section, we shall talk about popular architectures such as VGG and Encoder-Decoder Network, just to get an idea behind these
  • 5.
    Keras Basics • Weshall review the basic layers in Keras, with the goal of understanding the modelling aspects only. • This is not a deep dive, we need to pickup just enough to understand the modelling.
  • 6.
    Application 1: ImageRecognition • We will present model, visual-code walkthrough, and a demo (working on new code) Image courtesy: https://www.tensorflow.org/tutorials/image_recognition
  • 7.
    Application 2: Controla Car • We will present model, visual-code walkthrough, and a demo of a simulated car controlled by a CNN https://www.youtube.com/watch?v=gpT9YhjdnnM&t
  • 8.
    Application 3: SpeechRecognition • We will present model, visual-code walkthrough, and a demo. This will illustrate an RNN based model. Image courtesy: Adam Geitgey Blog, Medium