Aprendizaje automático aplicado utilizando TensorFlow

35
Aprendizaje automático aplicado utilizando TensorFlow Nicolas Bortolotti @nickbortolotti

Transcript of Aprendizaje automático aplicado utilizando TensorFlow

Page 1: Aprendizaje automático aplicado utilizando TensorFlow

Aprendizaje automático aplicado utilizando TensorFlow

Nicolas Bortolotti@nickbortolotti

Page 2: Aprendizaje automático aplicado utilizando TensorFlow

Comunicación

@nickbortolotti

G+ - Linkedin - Facebook

Agenda

● Visión General TensorFlow● Computer Vision Stories, TensorFlow

Object Detection API ● Recursos sobre TensorFlow● Preguntas

Page 3: Aprendizaje automático aplicado utilizando TensorFlow

Story

Object Detection, dinner with friends.

TensorFlow Object Detection in videos, avoiding pizza, donuts and cakes.

TensorFlow Object Detection, an overview of Facebook publications.

TensorFlow Photo x-Ray Object Detection with App Engine.

Tensor Flow Object Detection over Telegram Bot, my breakfast, fruits and an interactive conversation.

ref: https://github.com/tensorflow/models/tree/master/object_detection

Page 4: Aprendizaje automático aplicado utilizando TensorFlow

Story [spanish]

TensorFlow Object Detection API, cena con amigos

TensorFlow Object Detection en videos, basta de pizza, donuts y cakes…

TensorFlow Object Detection, una mirada a las publicaciones en Facebook

TensorFlow radiografía de imágenes utilizando Object Detection con App Engine

TensorFlow Object Detection sobre Telegram Bot, mi desayuno, frutas y una conversación interactiva.

ref: https://github.com/tensorflow/models/tree/master/object_detection

Page 5: Aprendizaje automático aplicado utilizando TensorFlow

Recursos Tensor Flow

Videos:

TensorFlow: Machine Learning for Everyone

TensorFlow Dev Summit 2017

Machine Learning Recipes with Josh Gordon

Open Source TensorFlow Models (Google I/O

'17)

Books:

“Hello World” en TensorFlow (free + spanish)

Hands-On Machine Learning with Scikit-Learn

and TensorFlow

Building Machine Learning Projects with

TensorFlow

Code Labs:

TensorFlow for poets 1/2

https://www.tensorflow.org/

Page 6: Aprendizaje automático aplicado utilizando TensorFlow

El espectro del Aprendizaje Automático

TensorFlow Cloud Machine Learning Machine Learning APIs

Industry / applications

Academic / research

credits: Kaz Sato

Page 7: Aprendizaje automático aplicado utilizando TensorFlow

La librería open source de Google para

aprendizaje inteligente.

tensorflow.org se lanzó en Nov 2015

La segunda generación utilizada por muchos proyectos de producción ML

Que es TensorFlow?

credits: Kaz Sato

Page 8: Aprendizaje automático aplicado utilizando TensorFlow

Que es TensorFlow?

Tensor: Arreglo N-dimensional

Flow: data flow computation framework (like MapReduce)

*Para Machine Learning y Deep Learning

o cualquier aplicación de HPC (High Performance Computing)

credits: Kaz Sato

Page 9: Aprendizaje automático aplicado utilizando TensorFlow

www.tensorflow.org

https://www.tensorflow.org/

Page 10: Aprendizaje automático aplicado utilizando TensorFlow

Linkcredits: Jeff Dean

Page 11: Aprendizaje automático aplicado utilizando TensorFlow

TensorFlow: Expressing High-Level ML Computations

● Different front ends for specifying/driving

the computation

○ Python and C++ today, easy to add

more

Core TensorFlow Execution System

CPU GPU Android iOS ...

C++ front end Python front end ...

credits: Jeff Dean

● Core in C++

○ Very low overhead

Page 12: Aprendizaje automático aplicado utilizando TensorFlow

MatMul

Add Relu

biases

weights

examples

labels

Xent

Graph of Nodes, also called Operations or ops.

Computation is a dataflow graph

credits: Jeff Dean

Page 13: Aprendizaje automático aplicado utilizando TensorFlow

with tensors

MatMul

Add Relu

biases

weights

examples

labels

Xent

Edges are N-dimensional arrays: Tensors

Computation is a dataflow graph

credits: Jeff Dean

Page 14: Aprendizaje automático aplicado utilizando TensorFlow

with state

Add Mul

biases

...

learning rate

−=...

'Biases' is a variable −= updates biasesSome ops compute gradients

Computation is a dataflow graph

credits: Jeff Dean

Page 15: Aprendizaje automático aplicado utilizando TensorFlow

GPU 0 CPU

Add Mul

biases

learning rate

AssignSub

......

distributedComputation is a dataflow graph

credits: Jeff Dean

Page 16: Aprendizaje automático aplicado utilizando TensorFlow

Hours

2.6 hours vs. 79.3 hours (30.5X)

10 GPUs50 GPUs

1 GPU

Image Model Training Time

credits: Jeff Dean

Page 17: Aprendizaje automático aplicado utilizando TensorFlow

TensorBoard: herramienta de visualización

credits: Kaz Sato

Page 18: Aprendizaje automático aplicado utilizando TensorFlow

Portable

● Training on:

○ Data Center

○ CPUs, GPUs and etc

● Running on:

○ Mobile phones

○ IoT devices

credits: Kaz Sato

Page 19: Aprendizaje automático aplicado utilizando TensorFlow

Tensor Processing Unit

ASIC for TensorFlow

Designed by Google

10x better perf / watt

latency and efficiency

bit quantization

credits: Kaz Sato

Page 20: Aprendizaje automático aplicado utilizando TensorFlow

Use Cases

Page 21: Aprendizaje automático aplicado utilizando TensorFlow

signalfor Search ranking,

out of hundreds

improvementto ranking quality

in 2+ years

#3 #1

Search

machine learning for search engines

RankBrain: a deep neural network for search ranking

Page 22: Aprendizaje automático aplicado utilizando TensorFlow

[glacier]

Google Photos

22

Smart reply in Inbox by Gmail

10%of all responses sent on mobile

Page 23: Aprendizaje automático aplicado utilizando TensorFlow

Google Translate with Neural Machine Translation

ref: https://research.googleblog.com/2016/09/a-neural-network-for-machine.html

Page 24: Aprendizaje automático aplicado utilizando TensorFlow

AlphaGo

Page 25: Aprendizaje automático aplicado utilizando TensorFlow

Saved Data Center cooling energy for 40%Improved Power Usage Effectiveness (PUE) for 15%

Page 26: Aprendizaje automático aplicado utilizando TensorFlow

Detection of Diabetic disease: better than doctors

ref: https://research.googleblog.com/2016/11/deep-learning-for-detection-of-diabetic.html

Page 27: Aprendizaje automático aplicado utilizando TensorFlow

WaveNet by

DeepMind

ref: https://deepmind.com/blog/wavenet-generative-model-raw-audio/

Page 28: Aprendizaje automático aplicado utilizando TensorFlow

AndroidAppsGmailMapsPhotosSpeechSearchTranslationYouTubeand many others ...

Used across products:

2012 2013 2014 2015

Deep Learning usage at Google

Page 29: Aprendizaje automático aplicado utilizando TensorFlow

Machine Learning Languages

Page 30: Aprendizaje automático aplicado utilizando TensorFlow

Startups and Machine Learning

Page 31: Aprendizaje automático aplicado utilizando TensorFlow

Models

References: https://github.com/tensorflow/models

● object_detection: localizing and identifying multiple objects in a single image.● inception: deep convolutional networks for computer vision.● im2txt: image-to-text neural network for image captioning.● audioset: Models and supporting code for use with AudioSet.● syntaxnet: neural models of natural language syntax.● video_prediction: predicting future video frames with neural advection.● ...

Page 33: Aprendizaje automático aplicado utilizando TensorFlow

Story [spanish]

TensorFlow Object Detection API, cena con amigos

TensorFlow Object Detection en videos, basta de pizza, donuts y cakes…

TensorFlow Object Detection, una mirada a las publicaciones en Facebook

TensorFlow radiografía de imágenes utilizando Object Detection con App Engine

TensorFlow Object Detection sobre Telegram Bot, mi desayuno, frutas y una conversación interactiva.

Page 34: Aprendizaje automático aplicado utilizando TensorFlow

Recursos Tensor Flow

Videos:

TensorFlow: Machine Learning for Everyone

TensorFlow Dev Summit 2017

Machine Learning Recipes with Josh Gordon

Open Source TensorFlow Models (Google I/O

'17)

Books:

“Hello World” en TensorFlow (free + spanish)

Hands-On Machine Learning with Scikit-Learn

and TensorFlow

Building Machine Learning Projects with

TensorFlow

Code Labs:

TensorFlow for poets 1/2

https://www.tensorflow.org/

Page 35: Aprendizaje automático aplicado utilizando TensorFlow

Thanks!