SlideShare a Scribd company logo
Intro to Deep Learning and
TensorFlow
H2O AI/DL 01/22/2019
East Bay Meetup (Berkeley)
Oswald Campesato
ocampesato@yahoo.com
Highlights/Overview
 intro to AI/ML/DL/NNs
 Hidden layers/Initialization/Neurons per layer
 cost function/gradient descent/learning rate
 Dropout rate
 Activation function
 Linear Regression
 What are CNNs
 Filters/ReLU/MaxPooling
 Keras and CNNs
 TensorFlow 1.x
The Data/AI Landscape
Use Cases for Deep Learning
computer vision
speech recognition
image processing
bioinformatics
social network filtering
drug design
Recommendation systems
Bioinformatics
Mobile Advertising
Many others
NN 3 Hidden Layers: Classifier
NN: 2 Hidden Layers (Regression)
Titanic Dataset (portion)
Classification and Deep Learning
Euler’s Function (e: 2.71828. . .)
The sigmoid Activation Function
The tanh Activation Function
The ReLU Activation Function
The softmax Activation Function
Activation Functions in Python
import numpy as np
...
# Python sigmoid example:
z = 1/(1 + np.exp(-np.dot(W, x)))
...
# Python tanh example:
z = np.tanh(np.dot(W,x));
# Python ReLU example:
z = np.maximum(0, np.dot(W, x))
What’s the “Best” Activation Function?
Initially: sigmoid was popular
Then: tanh became popular
Now: RELU is preferred (better results)
Softmax: for FC (fully connected) layers
NB: sigmoid and tanh are used in LSTMs
Linear Regression
One of the simplest models in ML
Fits a line (y = m*x + b) to data in 2D
Finds best line by minimizing MSE:
m = slope of the best-fitting line
b = y-intercept of the best-fitting line
Which is Good for Linear Regression?
Linear Regression in 2D: example
Example #1: MSE = ?
Example #2: MSE = ?
Example #3 (Random Points)
Sample Cost Function #1 (MSE)
Linear Regression: example #1
One feature (independent variable):
X = number of square feet
Predicted value (dependent variable):
Y = cost of a house
A very “coarse grained” model
We can devise a much better model
Linear Regression: example #2
Multiple features:
X1 = # of square feet
X2 = # of bedrooms
X3 = # of bathrooms (dependency?)
X4 = age of house
X5 = cost of nearby houses
X6 = corner lot (or not): Boolean
a much better model (6 features)
Linear Multivariate Analysis
General form of multivariate equation:
Y = w1*x1 + w2*x2 + . . . + wn*xn + b
w1, w2, . . . , wn are numeric values
x1, x2, . . . , xn are variables (features)
Properties of variables:
Can be independent (Naïve Bayes)
weak/strong dependencies can exist
Sample Cost Function #1 (MSE)
Sample Cost Function #2
Sample Cost Function #3
Types of Optimizers
SGD
rmsprop
Adagrad
Adam
Others
http://cs229.stanford.edu/notes/cs229-notes1.pdf
Deep Neural Network: summary
 input layer, multiple hidden layers, and output layer
 nonlinear processing via activation functions
 perform transformation and feature extraction
 gradient descent algorithm with back propagation
 each layer receives the output from previous layer
 results are comparable/superior to human experts
CNNs versus RNNs
CNNs (Convolutional NNs):
Good for image processing
2000: CNNs processed 10-20% of all checks
=> Approximately 60% of all NNs
RNNs (Recurrent NNs):
Good for NLP and audio
Used in hybrid networks
CNNs: Convolution, ReLU, and Max Pooling
CNNs: Convolution Calculations
https://docs.gimp.org/en/plug-in-convmatrix.html
CNNs: Convolution Matrices (examples)
Sharpen:
Blur:
CNNs: Convolution Matrices (examples)
Edge detect:
Emboss:
CNNs: Max Pooling Example
GANs: Generative Adversarial Networks
GANs: Generative Adversarial Networks
Make imperceptible changes to images
Can consistently defeat all NNs
Can have extremely high error rate
Some images create optical illusions
https://www.quora.com/What-are-the-pros-and-cons-
of-using-generative-adversarial-networks-a-type-of-
neural-network
GANs: Generative Adversarial Networks
Create your own GANs:
https://www.oreilly.com/learning/generative-adversarial-networks-for-
beginners
https://github.com/jonbruner/generative-adversarial-networks
GANs from MNIST:
http://edwardlib.org/tutorials/gan
GANs and Capsule networks?
CNN in Python/Keras (fragment)
 from keras.models import Sequential
 from keras.layers.core import Dense, Dropout, Activation
 from keras.layers.convolutional import Conv2D, MaxPooling2D
 from keras.optimizers import Adadelta
 input_shape = (3, 32, 32)
 nb_classes = 10
 model = Sequential()
 model.add(Conv2D(32,(3, 3),padding='same’,
input_shape=input_shape))
 model.add(Activation('relu'))
 model.add(Conv2D(32, (3, 3)))
 model.add(Activation('relu'))
 model.add(MaxPooling2D(pool_size=(2, 2)))
 model.add(Dropout(0.25))
What is TensorFlow?
An open source framework for ML and DL
A “computation” graph
Created by Google (released 11/2015)
Evolved from Google Brain
Linux and Mac OS X support (VM for Windows)
TF home page: https://www.tensorflow.org/
What is TensorFlow?
Support for Python, Java, C++
Desktop, server, mobile device (TensorFlow Lite)
CPU/GPU/TPU support
Visualization via TensorBoard
Can be embedded in Python scripts
Installation: pip install tensorflow
TensorFlow cluster:
https://www.tensorflow.org/deploy/distributed
TensorFlow Use Cases (Generic)
Image recognition
Computer vision
Voice/sound recognition
Time series analysis
Language detection
Language translation
Text-based processing
Handwriting Recognition
Aspects of TensorFlow
Graph: graph of operations (DAG)
Sessions: contains Graph(s)
lazy execution (default)
operations in parallel (default)
Nodes: operators/variables/constants
Edges: tensors
=> graphs are split into subgraphs and executed in
parallel (or multiple CPUs)
TensorFlow Graph Execution
Execute statements in a tf.Session() object
Invoke the “run” method of that object
“eager” execution is available (>= v1.4)
included in the mainline (v1.7)
Installation: pip install tensorflow
What is a Tensor?
TF tensors are n-dimensional arrays
TF tensors are very similar to numpy ndarrays
scalar number: a zeroth-order tensor
vector: a first-order tensor
matrix: a second-order tensor
3-dimensional array: a 3rd order tensor
https://dzone.com/articles/tensorflow-simplified-
examples
TensorFlow “primitive types”
tf.constant:
+ initialized immediately
+ immutable
tf.placeholder (a function):
+ initial value is not required
+ can have variable shape
+ assigned value via feed_dict at run time
+ receive data from “external” sources
TensorFlow “primitive types”
tf.Variable (a class):
+ initial value is required
+ updated during training
+ maintain state across calls to “run()”
+ in-memory buffer (saved/restored from disk)
+ can be shared in a distributed environment
+ they hold learned parameters of a model
TensorFlow: constants (immutable)
 import tensorflow as tf
 aconst = tf.constant(3.0)
 print(aconst)
# output: Tensor("Const:0", shape=(), dtype=float32)
 sess = tf.Session()
 print(sess.run(aconst))
# output: 3.0
 sess.close()
 # => there's a better way
TensorFlow: constants
import tensorflow as tf
aconst = tf.constant(3.0)
print(aconst)
Automatically close “sess”
with tf.Session() as sess:
 print(sess.run(aconst))
TensorFlow Arithmetic
import tensorflow as tf
a = tf.add(4, 2)
b = tf.subtract(8, 6)
c = tf.multiply(a, 3)
d = tf.div(a, 6)
with tf.Session() as sess:
print(sess.run(a)) # 6
print(sess.run(b)) # 2
print(sess.run(c)) # 18
print(sess.run(d)) # 1
TF placeholders and feed_dict
import tensorflow as tf
a = tf.placeholder("float")
b = tf.placeholder("float")
c = tf.multiply(a,b)
# initialize a and b:
feed_dict = {a:2, b:3}
# multiply a and b:
with tf.Session() as sess:
print(sess.run(c, feed_dict))
TensorFlow: Simple Equation
import tensorflow as tf
# W and x are 1d arrays
W = tf.constant([10,20], name='W')
X = tf.placeholder(tf.int32, name='x')
b = tf.placeholder(tf.int32, name='b')
Wx = tf.multiply(W, x, name='Wx')
y = tf.add(Wx, b, name='y') OR
y2 = tf.add(tf.multiply(W,x),b)
TensorFlow fetch/feed_dict
with tf.Session() as sess:
print("Result 1: Wx = ",
sess.run(Wx, feed_dict={x:[5,10]}))
print("Result 2: y = ",
sess.run(y,feed_dict={x:[5,10],b:[15,25]}))
 Result 1: Wx = [50 200]
 Result 2: y = [65 225]
Saving Graphs for TensorBoard
import tensorflow as tf
x = tf.constant(5,name="x")
y = tf.constant(8,name="y")
z = tf.Variable(2*x+3*y, name="z")
init = tf.global_variables_initializer()
with tf.Session() as session:
writer = tf.summary.FileWriter("./tf_logs",session.graph)
session.run(init)
print 'z = ',session.run(z) # => z = 34
# launch: tensorboard –logdir=./tf_logs
TensorFlow Eager Execution
An imperative interface to TF
Fast debugging & immediate run-time errors
Eager execution is “mainline” in v1.7 of TF
=> requires Python 3.x (not Python 2.x)
TensorFlow Eager Execution
integration with Python tools
Supports dynamic models + Python control flow
support for custom and higher-order gradients
Supports most TensorFlow operations
=> Default mode in TensorFlow 2.0 (2019)
https://research.googleblog.com/2017/10/eager-
execution-imperative-define-by.html
TensorFlow Eager Execution
import tensorflow as tf
import tensorflow.contrib.eager as tfe
tfe.enable_eager_execution()
x = [[2.]]
m = tf.matmul(x, x)
print(m)
# tf.Tensor([[4.]], shape=(1, 1), dtype=float32)
What is tensorflow.js?
 an ecosystem of JS tools for machine learning
 TensorFlow.js also includes a Layers API
 a library for building machine learning models
 tools to port TF SavedModels & Keras HDF5 models
 => https://js.tensorflow.org/
What is tensorflow.js?
 tensorflow.js evolved from deeplearn.js
 deeplearn.js is now called TensorFlow.js Core
 TensorFlow.js Core: a flexible low-level API
 TensorFlow.js Layers:
a high-level API similar to Keras
 TensorFlow.js Converter:
tools to import a TF SavedModel to TensorFlow.js
async keyword
keyword placed before JS functions
For functions that return a Promise
Trivial example:
async function f() {
return 1;
}
await keyword
Works only inside async JS functions
Trivial example:
let value = await mypromise;
async/await example
async function f() {
let promise = new Promise((resolve, reject) => {
setTimeout(() => resolve("done!"), 1000)
});
// wait till the promise resolves
let result = await promise
alert(result)
}
f()
Tensorflow.js Samples
1) tfjs-example.html (linear regression)
2) js.tensorflow.org (home page)
3) https://github.com/tensorflow/tfjs-examples-master
a)cd mnist-core
b) yarn
c) yarn watch
Deep Learning and Art/”Stuff”
“Convolutional Blending” images:
=> 19-layer Convolutional Neural Network
www.deepart.io
https://www.fastcodesign.com/90124942/this-google-
engineer-taught-an-algorithm-to-make-train-footage-
and-its-hypnotic
About Me: Recent Books
1) TensorFlow Pocket Primer (WIP: TR?)
2) Python for TensorFlow (WIP: TR?)
3) C Programming Pocket Primer (2019)
4) RegEx Pocket Primer (2018)
5) Data Cleaning Pocket Primer (2018)
6) Angular Pocket Primer (2017)
7) Android Pocket Primer (2017)
8) CSS3 Pocket Primer (2016)
9) SVG Pocket Primer (2016)
10) Python Pocket Primer (2015)
11) D3 Pocket Primer (2015)
12) HTML5 Mobile Pocket Primer (2014)
13) jQuery Pocket Primer (2013)
What I do (Training)
Instructor at UCSC (Santa Clara):
Machine Learning Introduction (01/18/2019)
Deep Learning with TensorFlow (02/02/2019)
Deep Learning with Keras (ETA 04/2019)
Deep Learning with TensorFlow (ETA 05/2019)
Reinforcement Learning Intro (ETA 05/2019)
Deep Learning with TF 2 (ETA 07/2019)
Introduction to NLP (ETA 07/2019)
Adv DL & Deep RL (Survey) (ETA 07/2019)
UCSC link:
https://www.ucsc-extension.edu/certificate-program/offering/deep-
learning-and-artificial-intelligence-tensorflow
=> Android for Beginners (multi-day workshops)

More Related Content

PPTX
Introduction to Deep Learning, Keras, and Tensorflow
PPTX
Introduction to TensorFlow 2 and Keras
PPTX
Working with tf.data (TF 2)
PPTX
Introduction to TensorFlow 2
PPTX
Introduction to TensorFlow 2
PPTX
TensorFlow in Your Browser
PPTX
Deep Learning and TensorFlow
PPTX
Introduction to Deep Learning and TensorFlow
Introduction to Deep Learning, Keras, and Tensorflow
Introduction to TensorFlow 2 and Keras
Working with tf.data (TF 2)
Introduction to TensorFlow 2
Introduction to TensorFlow 2
TensorFlow in Your Browser
Deep Learning and TensorFlow
Introduction to Deep Learning and TensorFlow

What's hot (20)

PPTX
Intro to Deep Learning, TensorFlow, and tensorflow.js
PPTX
Machine Learning - Introduction to Tensorflow
PPTX
Deep Learning in Your Browser
PDF
TensorFlow example for AI Ukraine2016
PPTX
TensorFlow for IITians
PDF
Google TensorFlow Tutorial
PPTX
Tensorflow - Intro (2017)
PPTX
Introduction To TensorFlow | Deep Learning Using TensorFlow | CloudxLab
PPTX
Introduction to Tensorflow
PPTX
TensorFlow
PPTX
Deep Learning in your Browser: powered by WebGL
PDF
Tensor board
PDF
Introduction to TensorFlow, by Machine Learning at Berkeley
PPTX
Tensor flow (1)
PPTX
Introduction to Machine Learning with TensorFlow
PDF
TensorFlow Tutorial
PDF
"PyTorch Deep Learning Framework: Status and Directions," a Presentation from...
PDF
Rajat Monga at AI Frontiers: Deep Learning with TensorFlow
KEY
Numpy Talk at SIAM
Intro to Deep Learning, TensorFlow, and tensorflow.js
Machine Learning - Introduction to Tensorflow
Deep Learning in Your Browser
TensorFlow example for AI Ukraine2016
TensorFlow for IITians
Google TensorFlow Tutorial
Tensorflow - Intro (2017)
Introduction To TensorFlow | Deep Learning Using TensorFlow | CloudxLab
Introduction to Tensorflow
TensorFlow
Deep Learning in your Browser: powered by WebGL
Tensor board
Introduction to TensorFlow, by Machine Learning at Berkeley
Tensor flow (1)
Introduction to Machine Learning with TensorFlow
TensorFlow Tutorial
"PyTorch Deep Learning Framework: Status and Directions," a Presentation from...
Rajat Monga at AI Frontiers: Deep Learning with TensorFlow
Numpy Talk at SIAM
Ad

Similar to H2 o berkeleydltf (20)

PDF
Introduction to Deep Learning, Keras, and TensorFlow
PPTX
Deep Learning, Scala, and Spark
PPTX
Deep Learning and TensorFlow
PPTX
D3, TypeScript, and Deep Learning
PPTX
C++ and Deep Learning
PPTX
D3, TypeScript, and Deep Learning
PPTX
Java and Deep Learning (Introduction)
PPTX
TypeScript and Deep Learning
PPTX
Scala and Deep Learning
PPTX
Introduction to Deep Learning and Tensorflow
PPTX
Java and Deep Learning
PPTX
Deep Learning, Keras, and TensorFlow
PPTX
Angular and Deep Learning
PDF
Introduction to Tensor Flow for Optical Character Recognition (OCR)
PPTX
Deep Learning: R with Keras and TensorFlow
PDF
Towards Safe Automated Refactoring of Imperative Deep Learning Programs to Gr...
PPTX
Introduction to Deep Learning
PDF
Language translation with Deep Learning (RNN) with TensorFlow
 
PPTX
Chapter 02 functions -class xii
PPTX
Tensorflow in practice by Engineer - donghwi cha
Introduction to Deep Learning, Keras, and TensorFlow
Deep Learning, Scala, and Spark
Deep Learning and TensorFlow
D3, TypeScript, and Deep Learning
C++ and Deep Learning
D3, TypeScript, and Deep Learning
Java and Deep Learning (Introduction)
TypeScript and Deep Learning
Scala and Deep Learning
Introduction to Deep Learning and Tensorflow
Java and Deep Learning
Deep Learning, Keras, and TensorFlow
Angular and Deep Learning
Introduction to Tensor Flow for Optical Character Recognition (OCR)
Deep Learning: R with Keras and TensorFlow
Towards Safe Automated Refactoring of Imperative Deep Learning Programs to Gr...
Introduction to Deep Learning
Language translation with Deep Learning (RNN) with TensorFlow
 
Chapter 02 functions -class xii
Tensorflow in practice by Engineer - donghwi cha
Ad

Recently uploaded (20)

PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Getting Started with Data Integration: FME Form 101
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
TLE Review Electricity (Electricity).pptx
PDF
Mushroom cultivation and it's methods.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Heart disease approach using modified random forest and particle swarm optimi...
Encapsulation_ Review paper, used for researhc scholars
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Getting Started with Data Integration: FME Form 101
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
TLE Review Electricity (Electricity).pptx
Mushroom cultivation and it's methods.pdf
NewMind AI Weekly Chronicles - August'25-Week II
Group 1 Presentation -Planning and Decision Making .pptx
Building Integrated photovoltaic BIPV_UPV.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
OMC Textile Division Presentation 2021.pptx
Univ-Connecticut-ChatGPT-Presentaion.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Programs and apps: productivity, graphics, security and other tools
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Heart disease approach using modified random forest and particle swarm optimi...

H2 o berkeleydltf

  • 1. Intro to Deep Learning and TensorFlow H2O AI/DL 01/22/2019 East Bay Meetup (Berkeley) Oswald Campesato [email protected]
  • 2. Highlights/Overview  intro to AI/ML/DL/NNs  Hidden layers/Initialization/Neurons per layer  cost function/gradient descent/learning rate  Dropout rate  Activation function  Linear Regression  What are CNNs  Filters/ReLU/MaxPooling  Keras and CNNs  TensorFlow 1.x
  • 4. Use Cases for Deep Learning computer vision speech recognition image processing bioinformatics social network filtering drug design Recommendation systems Bioinformatics Mobile Advertising Many others
  • 5. NN 3 Hidden Layers: Classifier
  • 6. NN: 2 Hidden Layers (Regression)
  • 9. Euler’s Function (e: 2.71828. . .)
  • 14. Activation Functions in Python import numpy as np ... # Python sigmoid example: z = 1/(1 + np.exp(-np.dot(W, x))) ... # Python tanh example: z = np.tanh(np.dot(W,x)); # Python ReLU example: z = np.maximum(0, np.dot(W, x))
  • 15. What’s the “Best” Activation Function? Initially: sigmoid was popular Then: tanh became popular Now: RELU is preferred (better results) Softmax: for FC (fully connected) layers NB: sigmoid and tanh are used in LSTMs
  • 16. Linear Regression One of the simplest models in ML Fits a line (y = m*x + b) to data in 2D Finds best line by minimizing MSE: m = slope of the best-fitting line b = y-intercept of the best-fitting line
  • 17. Which is Good for Linear Regression?
  • 18. Linear Regression in 2D: example
  • 23. Linear Regression: example #1 One feature (independent variable): X = number of square feet Predicted value (dependent variable): Y = cost of a house A very “coarse grained” model We can devise a much better model
  • 24. Linear Regression: example #2 Multiple features: X1 = # of square feet X2 = # of bedrooms X3 = # of bathrooms (dependency?) X4 = age of house X5 = cost of nearby houses X6 = corner lot (or not): Boolean a much better model (6 features)
  • 25. Linear Multivariate Analysis General form of multivariate equation: Y = w1*x1 + w2*x2 + . . . + wn*xn + b w1, w2, . . . , wn are numeric values x1, x2, . . . , xn are variables (features) Properties of variables: Can be independent (Naïve Bayes) weak/strong dependencies can exist
  • 30. Deep Neural Network: summary  input layer, multiple hidden layers, and output layer  nonlinear processing via activation functions  perform transformation and feature extraction  gradient descent algorithm with back propagation  each layer receives the output from previous layer  results are comparable/superior to human experts
  • 31. CNNs versus RNNs CNNs (Convolutional NNs): Good for image processing 2000: CNNs processed 10-20% of all checks => Approximately 60% of all NNs RNNs (Recurrent NNs): Good for NLP and audio Used in hybrid networks
  • 32. CNNs: Convolution, ReLU, and Max Pooling
  • 34. CNNs: Convolution Matrices (examples) Sharpen: Blur:
  • 35. CNNs: Convolution Matrices (examples) Edge detect: Emboss:
  • 36. CNNs: Max Pooling Example
  • 38. GANs: Generative Adversarial Networks Make imperceptible changes to images Can consistently defeat all NNs Can have extremely high error rate Some images create optical illusions https://www.quora.com/What-are-the-pros-and-cons- of-using-generative-adversarial-networks-a-type-of- neural-network
  • 39. GANs: Generative Adversarial Networks Create your own GANs: https://www.oreilly.com/learning/generative-adversarial-networks-for- beginners https://github.com/jonbruner/generative-adversarial-networks GANs from MNIST: http://edwardlib.org/tutorials/gan GANs and Capsule networks?
  • 40. CNN in Python/Keras (fragment)  from keras.models import Sequential  from keras.layers.core import Dense, Dropout, Activation  from keras.layers.convolutional import Conv2D, MaxPooling2D  from keras.optimizers import Adadelta  input_shape = (3, 32, 32)  nb_classes = 10  model = Sequential()  model.add(Conv2D(32,(3, 3),padding='same’, input_shape=input_shape))  model.add(Activation('relu'))  model.add(Conv2D(32, (3, 3)))  model.add(Activation('relu'))  model.add(MaxPooling2D(pool_size=(2, 2)))  model.add(Dropout(0.25))
  • 41. What is TensorFlow? An open source framework for ML and DL A “computation” graph Created by Google (released 11/2015) Evolved from Google Brain Linux and Mac OS X support (VM for Windows) TF home page: https://www.tensorflow.org/
  • 42. What is TensorFlow? Support for Python, Java, C++ Desktop, server, mobile device (TensorFlow Lite) CPU/GPU/TPU support Visualization via TensorBoard Can be embedded in Python scripts Installation: pip install tensorflow TensorFlow cluster: https://www.tensorflow.org/deploy/distributed
  • 43. TensorFlow Use Cases (Generic) Image recognition Computer vision Voice/sound recognition Time series analysis Language detection Language translation Text-based processing Handwriting Recognition
  • 44. Aspects of TensorFlow Graph: graph of operations (DAG) Sessions: contains Graph(s) lazy execution (default) operations in parallel (default) Nodes: operators/variables/constants Edges: tensors => graphs are split into subgraphs and executed in parallel (or multiple CPUs)
  • 45. TensorFlow Graph Execution Execute statements in a tf.Session() object Invoke the “run” method of that object “eager” execution is available (>= v1.4) included in the mainline (v1.7) Installation: pip install tensorflow
  • 46. What is a Tensor? TF tensors are n-dimensional arrays TF tensors are very similar to numpy ndarrays scalar number: a zeroth-order tensor vector: a first-order tensor matrix: a second-order tensor 3-dimensional array: a 3rd order tensor https://dzone.com/articles/tensorflow-simplified- examples
  • 47. TensorFlow “primitive types” tf.constant: + initialized immediately + immutable tf.placeholder (a function): + initial value is not required + can have variable shape + assigned value via feed_dict at run time + receive data from “external” sources
  • 48. TensorFlow “primitive types” tf.Variable (a class): + initial value is required + updated during training + maintain state across calls to “run()” + in-memory buffer (saved/restored from disk) + can be shared in a distributed environment + they hold learned parameters of a model
  • 49. TensorFlow: constants (immutable)  import tensorflow as tf  aconst = tf.constant(3.0)  print(aconst) # output: Tensor("Const:0", shape=(), dtype=float32)  sess = tf.Session()  print(sess.run(aconst)) # output: 3.0  sess.close()  # => there's a better way
  • 50. TensorFlow: constants import tensorflow as tf aconst = tf.constant(3.0) print(aconst) Automatically close “sess” with tf.Session() as sess:  print(sess.run(aconst))
  • 51. TensorFlow Arithmetic import tensorflow as tf a = tf.add(4, 2) b = tf.subtract(8, 6) c = tf.multiply(a, 3) d = tf.div(a, 6) with tf.Session() as sess: print(sess.run(a)) # 6 print(sess.run(b)) # 2 print(sess.run(c)) # 18 print(sess.run(d)) # 1
  • 52. TF placeholders and feed_dict import tensorflow as tf a = tf.placeholder("float") b = tf.placeholder("float") c = tf.multiply(a,b) # initialize a and b: feed_dict = {a:2, b:3} # multiply a and b: with tf.Session() as sess: print(sess.run(c, feed_dict))
  • 53. TensorFlow: Simple Equation import tensorflow as tf # W and x are 1d arrays W = tf.constant([10,20], name='W') X = tf.placeholder(tf.int32, name='x') b = tf.placeholder(tf.int32, name='b') Wx = tf.multiply(W, x, name='Wx') y = tf.add(Wx, b, name='y') OR y2 = tf.add(tf.multiply(W,x),b)
  • 54. TensorFlow fetch/feed_dict with tf.Session() as sess: print("Result 1: Wx = ", sess.run(Wx, feed_dict={x:[5,10]})) print("Result 2: y = ", sess.run(y,feed_dict={x:[5,10],b:[15,25]}))  Result 1: Wx = [50 200]  Result 2: y = [65 225]
  • 55. Saving Graphs for TensorBoard import tensorflow as tf x = tf.constant(5,name="x") y = tf.constant(8,name="y") z = tf.Variable(2*x+3*y, name="z") init = tf.global_variables_initializer() with tf.Session() as session: writer = tf.summary.FileWriter("./tf_logs",session.graph) session.run(init) print 'z = ',session.run(z) # => z = 34 # launch: tensorboard –logdir=./tf_logs
  • 56. TensorFlow Eager Execution An imperative interface to TF Fast debugging & immediate run-time errors Eager execution is “mainline” in v1.7 of TF => requires Python 3.x (not Python 2.x)
  • 57. TensorFlow Eager Execution integration with Python tools Supports dynamic models + Python control flow support for custom and higher-order gradients Supports most TensorFlow operations => Default mode in TensorFlow 2.0 (2019) https://research.googleblog.com/2017/10/eager- execution-imperative-define-by.html
  • 58. TensorFlow Eager Execution import tensorflow as tf import tensorflow.contrib.eager as tfe tfe.enable_eager_execution() x = [[2.]] m = tf.matmul(x, x) print(m) # tf.Tensor([[4.]], shape=(1, 1), dtype=float32)
  • 59. What is tensorflow.js?  an ecosystem of JS tools for machine learning  TensorFlow.js also includes a Layers API  a library for building machine learning models  tools to port TF SavedModels & Keras HDF5 models  => https://js.tensorflow.org/
  • 60. What is tensorflow.js?  tensorflow.js evolved from deeplearn.js  deeplearn.js is now called TensorFlow.js Core  TensorFlow.js Core: a flexible low-level API  TensorFlow.js Layers: a high-level API similar to Keras  TensorFlow.js Converter: tools to import a TF SavedModel to TensorFlow.js
  • 61. async keyword keyword placed before JS functions For functions that return a Promise Trivial example: async function f() { return 1; }
  • 62. await keyword Works only inside async JS functions Trivial example: let value = await mypromise;
  • 63. async/await example async function f() { let promise = new Promise((resolve, reject) => { setTimeout(() => resolve("done!"), 1000) }); // wait till the promise resolves let result = await promise alert(result) } f()
  • 64. Tensorflow.js Samples 1) tfjs-example.html (linear regression) 2) js.tensorflow.org (home page) 3) https://github.com/tensorflow/tfjs-examples-master a)cd mnist-core b) yarn c) yarn watch
  • 65. Deep Learning and Art/”Stuff” “Convolutional Blending” images: => 19-layer Convolutional Neural Network www.deepart.io https://www.fastcodesign.com/90124942/this-google- engineer-taught-an-algorithm-to-make-train-footage- and-its-hypnotic
  • 66. About Me: Recent Books 1) TensorFlow Pocket Primer (WIP: TR?) 2) Python for TensorFlow (WIP: TR?) 3) C Programming Pocket Primer (2019) 4) RegEx Pocket Primer (2018) 5) Data Cleaning Pocket Primer (2018) 6) Angular Pocket Primer (2017) 7) Android Pocket Primer (2017) 8) CSS3 Pocket Primer (2016) 9) SVG Pocket Primer (2016) 10) Python Pocket Primer (2015) 11) D3 Pocket Primer (2015) 12) HTML5 Mobile Pocket Primer (2014) 13) jQuery Pocket Primer (2013)
  • 67. What I do (Training) Instructor at UCSC (Santa Clara): Machine Learning Introduction (01/18/2019) Deep Learning with TensorFlow (02/02/2019) Deep Learning with Keras (ETA 04/2019) Deep Learning with TensorFlow (ETA 05/2019) Reinforcement Learning Intro (ETA 05/2019) Deep Learning with TF 2 (ETA 07/2019) Introduction to NLP (ETA 07/2019) Adv DL & Deep RL (Survey) (ETA 07/2019) UCSC link: https://www.ucsc-extension.edu/certificate-program/offering/deep- learning-and-artificial-intelligence-tensorflow => Android for Beginners (multi-day workshops)