SlideShare a Scribd company logo
1 of 34
Download to read offline
Open Source Lisbon 2018 - Filipe Barroso
Mobile with 150 IQ
“It is the end of Smartphones with dumb applications”
Artificial Intelligence?
Machine Learning?
“At its core, Machine Learning is simply a
way of achieving AI.”
https://medium.com/iotforall/the-difference-between-artificial-intelligence-machine-learning-and-deep-learn
ing-3aa67bff5991
https://machinelearningmastery.com/a-tour-of-machine-learning-algorithms
https://www.reddit.com/r/ProgrammerHumor/comments/9ityxi/thats_how_it_be/
How Can You Use Machine Learning?
Models Data
(1) Others Others
(2) Others Yours
(3) Yours Yours
How Can You Use Machine Learning?
Three ways, with varying complexity:
(1) Use a Cloud-based or Mobile API (Vision, Natural Language,
etc.)
How Can You Use Machine Learning?
Three ways, with varying complexity:
(1) Use a Cloud-based or Mobile API (Vision, Natural Language,
etc.)
(2) Use an existing model architecture, and retrain it or fine tune
on your dataset
How Can You Use Machine Learning?
Three ways, with varying complexity:
(1) Use a Cloud-based or Mobile API (Vision, Natural Language,
etc.)
(2) Use an existing model architecture, and retrain it or fine tune
on your dataset
(3) Develop your own machine learning models for new
problems
How Can You Use Machine Learning?
Three ways, with varying complexity:
(1) Use a Cloud-based or Mobile API (Vision, Natural Language,
etc.)
(2) Use an existing model architecture, and retrain it or fine tune
on your dataset
(3) Develop your own machine learning models for new
problems
More
flexible,
but more
effort
required
“An open source machine learning framework for
everyone.”
A multidimensional array.
A graph of operations.
14
https://twitter.com/karpathy/status/972295865187512320
Percent of ML papers that mention...
● Open source Machine
Learning library
● Especially useful for
Deep Learning
● For research and production
● Apache 2.0 license
Machine Learning Hello World
Image from https://github.com/mnielsen/neural-networks-and-deep-learning
?
What we see What the computer “sees”
Open Source Lisbon 2018 - Filipe Barroso
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
Architecture
● Core in C++
● Different front ends
○ Python and C++ today, community may add more
Core TensorFlow Execution System
CPU GPU Android iOS ...
C++ front end Python front end ...
Raspberry
Pi
DatacentersYour laptop Android iOS
Portable & Scalable
Making
recommendations
Personal marketing
Smart search
Image source: Play Music apps page.
23
Tensorflow Lite
For mobile and embedded devices.
TensorFlow Lite Design
Interpreter
Core
Operation
Kernels
Hardware acceleration
delegates
Converter
(to TensorFlow
Lite format)
Source: 2018 TensorFlow Developer Summit
Cross-Platform
Android App
(Java/C++ API)
iOS App
(C++ API)
Converter
(to TensorFlow
Lite format)
Trained
TensorFlow
Model
Linux (e.g. Raspberry Pi)
(Python/Java/C++ API)
Source: 2018 TensorFlow Developer Summit
iOS developers can also use CoreML
Android App
(Java/C++ API)
iOS App
(C++ API)
Converter
(to TensorFlow
Lite format)
Trained
TensorFlow
Model Linux (e.g. Raspberry Pi)
(Python/Java/C++ API)
iOS App
(Use CoreML runtime)
Converter
(to Core ML
format)
Source: 2018 TensorFlow Developer Summit
TensorFlow Lite in practice..
Get a
model
download or train
Convert
the model
to TensorFlow
Lite
Write ops
(If needed)
Write app
(Use client API)
Source: 2018 TensorFlow Developer Summit
● Latency: You don’t need to send a request over a network connection and
wait for a response. This can be critical for video applications that process
successive frames coming from a camera.
● Availability: The application runs even when outside of network coverage.
● Speed: New hardware specific to neural networks processing provide
significantly faster computation than with general-use CPU alone.
● Privacy: The data does not leave the device.
● Cost: No server farm is needed when all the computations are performed on
the device.
Benefits
https://developer.android.com/ndk/guides/neuralnetworks/
● System Utilization: Evaluating neural networks involve a lot of computation,
which could increase battery power usage.
● Application Size: Models may take up multiple megabytes of space.
Trade-offs
https://developer.android.com/ndk/guides/neuralnetworks/
tensorflow.org
tensorflow.org/lite/
github.com/tensorflow
Guides, codelabs, videos
MNIST for Beginners, goo.gl/tx8R2b
TF Learn Quickstart, goo.gl/uiefRn
TensorFlow for Poets, goo.gl/bVjFIL
ML Recipes, goo.gl/KewA03
TensorFlow and Deep Learning without a PhD, goo.gl/pHeXe7
Online
Various online courses in Coursera, Udacity...
Learning More
Hands-On Machine Learning with
Scikit-Learn and TensorFlow
https://www.oreilly.com/
Aug 13
https://goo.gl/nwV2Vq
TensorFlow 2.0 announcement
Support Your Local Communities
https://www.meetup.com
… Google Developer Group Organizer;
… Remote Developer;
… Speaker;
… Community Advocate;
… Mobile Developer
… Machine Learning Engineer;
… Standup Comedian;
Thank you
Filipe Barroso - Acceptto
Twitter @ABarroso
Ask Me Anything about Communities!

More Related Content

Recently uploaded

Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
FIDO Alliance
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
FIDO Alliance
 

Recently uploaded (20)

Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptx
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
 

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Saba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
Simplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

Open Source Lisbon 2018 - Filipe Barroso

  • 2. Mobile with 150 IQ “It is the end of Smartphones with dumb applications”
  • 4. “At its core, Machine Learning is simply a way of achieving AI.” https://medium.com/iotforall/the-difference-between-artificial-intelligence-machine-learning-and-deep-learn ing-3aa67bff5991
  • 7. How Can You Use Machine Learning? Models Data (1) Others Others (2) Others Yours (3) Yours Yours
  • 8. How Can You Use Machine Learning? Three ways, with varying complexity: (1) Use a Cloud-based or Mobile API (Vision, Natural Language, etc.)
  • 9. How Can You Use Machine Learning? Three ways, with varying complexity: (1) Use a Cloud-based or Mobile API (Vision, Natural Language, etc.) (2) Use an existing model architecture, and retrain it or fine tune on your dataset
  • 10. How Can You Use Machine Learning? Three ways, with varying complexity: (1) Use a Cloud-based or Mobile API (Vision, Natural Language, etc.) (2) Use an existing model architecture, and retrain it or fine tune on your dataset (3) Develop your own machine learning models for new problems
  • 11. How Can You Use Machine Learning? Three ways, with varying complexity: (1) Use a Cloud-based or Mobile API (Vision, Natural Language, etc.) (2) Use an existing model architecture, and retrain it or fine tune on your dataset (3) Develop your own machine learning models for new problems More flexible, but more effort required
  • 12. “An open source machine learning framework for everyone.”
  • 13. A multidimensional array. A graph of operations.
  • 15. ● Open source Machine Learning library ● Especially useful for Deep Learning ● For research and production ● Apache 2.0 license
  • 16. Machine Learning Hello World Image from https://github.com/mnielsen/neural-networks-and-deep-learning ?
  • 17. What we see What the computer “sees”
  • 19. 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
  • 20. Architecture ● Core in C++ ● Different front ends ○ Python and C++ today, community may add more Core TensorFlow Execution System CPU GPU Android iOS ... C++ front end Python front end ...
  • 23. 23 Tensorflow Lite For mobile and embedded devices.
  • 24. TensorFlow Lite Design Interpreter Core Operation Kernels Hardware acceleration delegates Converter (to TensorFlow Lite format) Source: 2018 TensorFlow Developer Summit
  • 25. Cross-Platform Android App (Java/C++ API) iOS App (C++ API) Converter (to TensorFlow Lite format) Trained TensorFlow Model Linux (e.g. Raspberry Pi) (Python/Java/C++ API) Source: 2018 TensorFlow Developer Summit
  • 26. iOS developers can also use CoreML Android App (Java/C++ API) iOS App (C++ API) Converter (to TensorFlow Lite format) Trained TensorFlow Model Linux (e.g. Raspberry Pi) (Python/Java/C++ API) iOS App (Use CoreML runtime) Converter (to Core ML format) Source: 2018 TensorFlow Developer Summit
  • 27. TensorFlow Lite in practice.. Get a model download or train Convert the model to TensorFlow Lite Write ops (If needed) Write app (Use client API) Source: 2018 TensorFlow Developer Summit
  • 28. ● Latency: You don’t need to send a request over a network connection and wait for a response. This can be critical for video applications that process successive frames coming from a camera. ● Availability: The application runs even when outside of network coverage. ● Speed: New hardware specific to neural networks processing provide significantly faster computation than with general-use CPU alone. ● Privacy: The data does not leave the device. ● Cost: No server farm is needed when all the computations are performed on the device. Benefits https://developer.android.com/ndk/guides/neuralnetworks/
  • 29. ● System Utilization: Evaluating neural networks involve a lot of computation, which could increase battery power usage. ● Application Size: Models may take up multiple megabytes of space. Trade-offs https://developer.android.com/ndk/guides/neuralnetworks/
  • 30. tensorflow.org tensorflow.org/lite/ github.com/tensorflow Guides, codelabs, videos MNIST for Beginners, goo.gl/tx8R2b TF Learn Quickstart, goo.gl/uiefRn TensorFlow for Poets, goo.gl/bVjFIL ML Recipes, goo.gl/KewA03 TensorFlow and Deep Learning without a PhD, goo.gl/pHeXe7 Online Various online courses in Coursera, Udacity... Learning More
  • 31. Hands-On Machine Learning with Scikit-Learn and TensorFlow https://www.oreilly.com/
  • 33. Support Your Local Communities https://www.meetup.com
  • 34. … Google Developer Group Organizer; … Remote Developer; … Speaker; … Community Advocate; … Mobile Developer … Machine Learning Engineer; … Standup Comedian; Thank you Filipe Barroso - Acceptto Twitter @ABarroso Ask Me Anything about Communities!