introduction to machine learning with tensorflow
TRANSCRIPT
Introduction to Machine Learning with TensorFlow
Paolo Tomeo
Open source Machine Learning library
Especially useful for Deep Learning
For research and production
Apache 2.0 license
Machine LearningComputer algorithms for learning to do something
- learning to complete a task- make accurate predictions- to behave intelligently
The focus is on automatic methods: learning without any human intervention
Hello World
Image from https://github.com/mnielsen/neural-networks-and-deep-learning
?
What we see What the computer “sees”
Complete code
import tensorflow as tf
mnist = tf.contrib.learn.datasets.load_dataset('mnist')
classifier = tf.learn.LinearClassifier(n_classes=10)
classifier.fit(mnist.train.images, mnist.train.labels)
score = metrics.accuracy_score(mnist.test.labels,
classifier.predict(mnist.test.images))
print('Accuracy: {0:f}'.format(score))
Biologically Inspired Artificial Neural Network
Image from https://visualstudiomagazine.com/articles/2014/06/01/deep-neural-networks.aspx
Deep Neural Network (DNN)
Iris Dataset
Deep Learning Classifier for Iris Dataset (1/3)
Tutorial from https://www.tensorflow.org/versions/r0.11/tutorials/tflearn/index.html#tf-contrib-learn-quickstart
import tensorflow as tfimport numpy as np
# Data setsIRIS_TRAINING = "iris_training.csv“IRIS_TEST = "iris_test.csv"
# Load datasets.training_set = tf.contrib.learn.datasets.base.load_csv(filename=IRIS_TRAINING,
target_dtype=np.int)
test_set = tf.contrib.learn.datasets.base.load_csv(filename=IRIS_TEST,
target_dtype=np.int)
Deep Learning Classifier for Iris Dataset (2/3)
Tutorial from https://www.tensorflow.org/versions/r0.11/tutorials/tflearn/index.html#tf-contrib-learn-quickstart
# Specify that all features have real-value datafeature_columns = [tf.contrib.layers.real_valued_column("", dimension=4)]
# Build 3 layer DNN with 10, 20, 10 units respectively.classifier = tf.contrib.learn.DNNClassifier(feature_columns=feature_columns, hidden_units=[10, 20, 10],
n_classes=3,model_dir="/tmp/iris_model")
# Fit model.classifier.fit(x=training_set.data, y=training_set.target,
steps=2000)
Deep Learning Classifier for Iris Dataset (3/3)
Tutorial from https://www.tensorflow.org/versions/r0.11/tutorials/tflearn/index.html#tf-contrib-learn-quickstart
# Evaluate accuracy.accuracy_score = classifier.evaluate(x=test_set.data, y=test_set.target)["accuracy"]
print('Accuracy: {0:f}'.format(accuracy_score))
# Classify two new flower samples.new_samples = np.array([[6.4, 3.2, 4.5, 1.5], [5.8, 3.1, 5.0, 1.7]], dtype=float)
y = classifier.predict(new_samples)
print('Predictions: {}'.format(str(y)))
Getting Started Exercises
Lots of tutorials at tensorflow.org
Codelab - goo.gl/xGsB9d Video - goo.gl/B2zYWN
TensorFlow for Poets
Mobile TensorFlow
Claude Monet - Bouquet of SunflowersImages from the Metropolitan Museum of Art (with permission) Image by @random_forests
A little more TensorFlow
A multidimensional array.
A graph of operations.
Data Flow Graphs
Computation is defined as a directed acyclic graph (DAG) to optimize an objective function
Graph is defined in high-level language (Python)
Graph is compiled and optimized
Graph is executed (in parts or fully) on available low level devices (CPU, GPU)
Data (tensors) flow through the graph
TensorFlow can compute gradients automatically
ArchitectureCore in C++
Front ends: Python and C++ today, community may add more
Core TensorFlow Execution System
CPU GPU Android iOS ...
C++ front end Python front end ...
tf.contrib.learn
TensorFlow’s high-level machine learning API
Easy to configure, train, and evaluate a variety of machine learning models
Datasets available in tf.contrib.learn.datasets
Warning: any code in tf.contrib is not officially supported, and may change or be removed at any time without notice.
tf.contrib.learn
TensorFlow’s high-level machine learning API
Easy to configure, train, and evaluate a variety of machine learning models
Datasets available in tf.contrib.learn.datasets
Warning: any code in tf.contrib is not officially supported, and may change or be removed at any time without notice.
Questions?
tensorflow.orggithub.com/tensorflow
Want to learn more?Udacity class on Deep Learning, goo.gl/iHssII
Guides, codelabs, videosMNIST for Beginners, goo.gl/tx8R2bTF Learn Quickstart, goo.gl/uiefRnTensorFlow for Poets, goo.gl/bVjFILML Recipes, goo.gl/KewA03TensorFlow and Deep Learning without a PhD, goo.gl/pHeXe7
What's Next