SlideShare a Scribd company logo
1 of 29
Download to read offline
🤖 Fun Machine Learning 🤖
🍎 Now on iOS 🍎
🎉 Yay 🎉
Machine Learning on iOS
with Core ML
@josephhosford
Developer w/ Music Loft Apps
musicloftapps.com
josephhosford.com
I make music apps
And dabble in image classification
in ML.
🤖 Machine Learning 🤖
🍎 ML on iOS 🍎
Two Parts
What is machine learning?
🤖
Great overview video
https://www.youtube.com/watch?v=NOjUaY0Qn3g
🤖
“Machine Learning is about making decision based
on trial and error …a more application oriented
version of statistics.
The basic idea is to make decisions based on
certain amount of information you have.“
-Anonymous via Quora
🤖
Let us break down some ML terms:
“ML got levels to it”
Kendrick LaML
Model
Neural Networks
Supervised & Unsupervised Learning
Common Tools & Libraries
🤖
Model
🤖
Neural Networks
If you want to learn more about the math behind NNs:
read ACC Coolen’s paper (link in the resources)
Modeled loosely on the human brain,a neural
net consists of thousands or even millions of
simple processing nodes that are densely
interconnected.
- MIT
For a more detailed and basic overview:
“A Quick Introduction to Neural Networks” (link in the resources)
🤖
Supervised & Unsupervised Learning
Supervised algorithms can apply what has been
learned in the past to new data.
Unsupervised algorithms can draw inferences
from datasets.
🤖
Common ML Tools & Libraries
🤖
Let us walkthrough building a basic
image classification ML model with Tensorflow
HT: Google Codelabs “Tensorflow for Poets”
and
Siraj Raval on YouTube
🤖
Conclusion:
Machine Learning is totes powerful…
a bit complicated…
and often requires training and patience.
🤖
Note: Machine Learning isn’t perfect.
Machine Learning on iOS
with Core ML
🍎
What is Core ML?
🍎
A Framework that allows us to use
ML Models in iOS 11 (an inference engine)
Built on low-level tech (e.g.Metal & Accelerate)
Utilizes ML Models with a new .MLModel file
Ability to convert models from popular ML libraries
Supported Libraries by CoreML
🍎
The ML Stack on iOS
🍎🍎
Models with .MLModel
🍎🍎
Models with .MLModel
🍎🍎
🍎🍎
Core ML
The Good
🍎🍎
Very little iOS code
Easy to implement
Potential for powerful mobile experiences
ML Tools and .MLModel Filetype are open source
🍎🍎
Requires lot of ML training
Only supports supervised learning
Not a lot of easy / beginner resources to
help in creating Core ML models
Almost all ML libraries are in Python
making it harder to just start experimenting
Core ML
The Bad
🍎🍎
No on device training of the model
.MLModel file is unencrypted
Potential for huge file sizes
No direct Tensorflow support (yet)
Core ML
The Ugly
For more detailed criticism see:
“Why Core ML will not work for your app (most likely)” (link in the resources)
🍎🍎
Core ML Models aren’t the only way
to do ML on iOS
You can roll your own ML with
Metal Performance Shaders and Accelerate.
There are open sources libraries that implement
ML on iOS.
Check out Alex Sosnovshchenko’s
frequently updated list:
“Machine Learning for iOS”
(link in resources)
Thanks for your time!
@josephhosford
RESOURCES
IOS ML
Machine Learning for iOS
(Curated ML list of resources for iOS developers)
http://alexsosn.github.io/ml/2015/11/05/iOS-ML.html
CORE ML
Core ML Product Page
https://developer.apple.com/machine-learning/
Core ML Python Tools
https://pypi.python.org/pypi/coremltools
Why Core ML will not work for your app (most likely)
http://alexsosn.github.io//ml/2017/06/09/Core-ML-will-not-Work-for-Your-
App.html
NEURAL NETWORKS
A Quick Introduction to Neural Networks
https://ujjwalkarn.me/2016/08/09/quick-intro-neural-networks/
A Beginner's Guide to the Mathematics of Neural Networks by ACC Coolen
http://citeseerx.ist.psu.edu/viewdoc/download?
doi=10.1.1.161.3556&rep=rep1&type=pdf
Explained: Neural networks [MIT]
http://news.mit.edu/2017/explained-neural-networks-deep-learning-0414
ML TUTORIALS
Tensorflow for Poets
https://codelabs.developers.google.com/codelabs/tensorflow-for-poets/
Building powerful image classification models using very little data
https://blog.keras.io/building-powerful-image-classification-models-using-
very-little-data.html
Learning AI if You Suck at Math
https://hackernoon.com/learning-ai-if-you-suck-at-math-8bdfb4b79037

More Related Content

What's hot

Introduction to TensorFlow Lite
Introduction to TensorFlow Lite Introduction to TensorFlow Lite
Introduction to TensorFlow Lite Koan-Sin Tan
 
Découverte du Traitement Automatique des Langues
Découverte du Traitement Automatique des LanguesDécouverte du Traitement Automatique des Langues
Découverte du Traitement Automatique des LanguesEstelle Delpech
 
“Deploying PyTorch Models for Real-time Inference On the Edge,” a Presentatio...
“Deploying PyTorch Models for Real-time Inference On the Edge,” a Presentatio...“Deploying PyTorch Models for Real-time Inference On the Edge,” a Presentatio...
“Deploying PyTorch Models for Real-time Inference On the Edge,” a Presentatio...Edge AI and Vision Alliance
 
Retrieval Augmented Generation in Practice: Scalable GenAI platforms with k8s...
Retrieval Augmented Generation in Practice: Scalable GenAI platforms with k8s...Retrieval Augmented Generation in Practice: Scalable GenAI platforms with k8s...
Retrieval Augmented Generation in Practice: Scalable GenAI platforms with k8s...Mihai Criveti
 
Federated learning in brief
Federated learning in briefFederated learning in brief
Federated learning in briefShashi Perera
 
Hardware Acceleration for Machine Learning
Hardware Acceleration for Machine LearningHardware Acceleration for Machine Learning
Hardware Acceleration for Machine LearningCastLabKAIST
 
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...Databricks
 
Deep learning - what is it and why now?
Deep learning - what is it and why now?Deep learning - what is it and why now?
Deep learning - what is it and why now?Natalia Konstantinova
 
TensorFlow Lite for mobile & IoT
TensorFlow Lite for mobile & IoT   TensorFlow Lite for mobile & IoT
TensorFlow Lite for mobile & IoT Mia Chang
 
Introduction to MLflow
Introduction to MLflowIntroduction to MLflow
Introduction to MLflowDatabricks
 
The Deep Learning Compiler
The Deep Learning CompilerThe Deep Learning Compiler
The Deep Learning CompilerTae Young Lee
 
MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
 MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ... MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...Databricks
 
Modélisation de données pour MongoDB
Modélisation de données pour MongoDBModélisation de données pour MongoDB
Modélisation de données pour MongoDBMongoDB
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4jBoris Guarisma
 
DeBERTA : Decoding-Enhanced BERT with Disentangled Attention
DeBERTA : Decoding-Enhanced BERT with Disentangled AttentionDeBERTA : Decoding-Enhanced BERT with Disentangled Attention
DeBERTA : Decoding-Enhanced BERT with Disentangled Attentiontaeseon ryu
 
le NLP à l'ére de l'IA
le NLP à l'ére de l'IAle NLP à l'ére de l'IA
le NLP à l'ére de l'IAhabib200
 
Fine tune and deploy Hugging Face NLP models
Fine tune and deploy Hugging Face NLP modelsFine tune and deploy Hugging Face NLP models
Fine tune and deploy Hugging Face NLP modelsOVHcloud
 

What's hot (20)

Introduction to TensorFlow Lite
Introduction to TensorFlow Lite Introduction to TensorFlow Lite
Introduction to TensorFlow Lite
 
Découverte du Traitement Automatique des Langues
Découverte du Traitement Automatique des LanguesDécouverte du Traitement Automatique des Langues
Découverte du Traitement Automatique des Langues
 
“Deploying PyTorch Models for Real-time Inference On the Edge,” a Presentatio...
“Deploying PyTorch Models for Real-time Inference On the Edge,” a Presentatio...“Deploying PyTorch Models for Real-time Inference On the Edge,” a Presentatio...
“Deploying PyTorch Models for Real-time Inference On the Edge,” a Presentatio...
 
Retrieval Augmented Generation in Practice: Scalable GenAI platforms with k8s...
Retrieval Augmented Generation in Practice: Scalable GenAI platforms with k8s...Retrieval Augmented Generation in Practice: Scalable GenAI platforms with k8s...
Retrieval Augmented Generation in Practice: Scalable GenAI platforms with k8s...
 
Federated learning in brief
Federated learning in briefFederated learning in brief
Federated learning in brief
 
Hardware Acceleration for Machine Learning
Hardware Acceleration for Machine LearningHardware Acceleration for Machine Learning
Hardware Acceleration for Machine Learning
 
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
 
Deep learning - what is it and why now?
Deep learning - what is it and why now?Deep learning - what is it and why now?
Deep learning - what is it and why now?
 
TensorFlow Lite for mobile & IoT
TensorFlow Lite for mobile & IoT   TensorFlow Lite for mobile & IoT
TensorFlow Lite for mobile & IoT
 
Introduction to MLflow
Introduction to MLflowIntroduction to MLflow
Introduction to MLflow
 
The Deep Learning Compiler
The Deep Learning CompilerThe Deep Learning Compiler
The Deep Learning Compiler
 
MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
 MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ... MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
 
Modélisation de données pour MongoDB
Modélisation de données pour MongoDBModélisation de données pour MongoDB
Modélisation de données pour MongoDB
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4j
 
DeBERTA : Decoding-Enhanced BERT with Disentangled Attention
DeBERTA : Decoding-Enhanced BERT with Disentangled AttentionDeBERTA : Decoding-Enhanced BERT with Disentangled Attention
DeBERTA : Decoding-Enhanced BERT with Disentangled Attention
 
le NLP à l'ére de l'IA
le NLP à l'ére de l'IAle NLP à l'ére de l'IA
le NLP à l'ére de l'IA
 
MLOps with Kubeflow
MLOps with Kubeflow MLOps with Kubeflow
MLOps with Kubeflow
 
Transformer Zoo
Transformer ZooTransformer Zoo
Transformer Zoo
 
Fine tune and deploy Hugging Face NLP models
Fine tune and deploy Hugging Face NLP modelsFine tune and deploy Hugging Face NLP models
Fine tune and deploy Hugging Face NLP models
 
What is MLOps
What is MLOpsWhat is MLOps
What is MLOps
 

Similar to Machine Learning on iOS with Core ML

The State of ML for iOS: On the Advent of WWDC 2018 🕯
The State of ML for iOS: On the Advent of WWDC 2018 🕯The State of ML for iOS: On the Advent of WWDC 2018 🕯
The State of ML for iOS: On the Advent of WWDC 2018 🕯Meghan Kane
 
Add Machine Learning to your iOS 11 App Using Core ML
Add Machine Learning to your iOS 11 App Using Core MLAdd Machine Learning to your iOS 11 App Using Core ML
Add Machine Learning to your iOS 11 App Using Core MLJean-Luc David
 
Machine Learning in iOS_ Core ML and its Applications.pptx
Machine Learning in iOS_ Core ML and its Applications.pptxMachine Learning in iOS_ Core ML and its Applications.pptx
Machine Learning in iOS_ Core ML and its Applications.pptxMegataskWeb
 
Object Oriented Programming : A Brief History and its significance
Object Oriented Programming : A Brief History and its significanceObject Oriented Programming : A Brief History and its significance
Object Oriented Programming : A Brief History and its significanceGajesh Bhat
 
Machine Learning for SEOs - MozCon 2018
Machine Learning for SEOs - MozCon 2018Machine Learning for SEOs - MozCon 2018
Machine Learning for SEOs - MozCon 2018Britney Muller
 
Introduction To TensorFlow
Introduction To TensorFlowIntroduction To TensorFlow
Introduction To TensorFlowSpotle.ai
 
Collaborative Ontology Building Project
Collaborative Ontology Building Project  Collaborative Ontology Building Project
Collaborative Ontology Building Project Jie Bao
 
Intro to deep learning
Intro to deep learning Intro to deep learning
Intro to deep learning David Voyles
 
Using CoreML to Push the Limits of your App
Using CoreML to Push the Limits of your AppUsing CoreML to Push the Limits of your App
Using CoreML to Push the Limits of your AppMugunth Kumar
 
Shortcut in learning iOS
Shortcut in learning iOSShortcut in learning iOS
Shortcut in learning iOSJoey Rigor
 
Semantic web, python, construction industry
Semantic web, python, construction industrySemantic web, python, construction industry
Semantic web, python, construction industryReinout van Rees
 
Demystifying Ml, DL and AI
Demystifying Ml, DL and AIDemystifying Ml, DL and AI
Demystifying Ml, DL and AIGreg Werner
 
Beware the monolith
Beware the monolithBeware the monolith
Beware the monolithDee Wilcox
 
THE MECHANICS AND APPLICATIONS OF LARGE LANGUAGE MODELS.pptx
THE MECHANICS AND APPLICATIONS OF LARGE LANGUAGE MODELS.pptxTHE MECHANICS AND APPLICATIONS OF LARGE LANGUAGE MODELS.pptx
THE MECHANICS AND APPLICATIONS OF LARGE LANGUAGE MODELS.pptxUditJain51042
 
Fantastic four machine_learning_java_libraries
Fantastic four machine_learning_java_librariesFantastic four machine_learning_java_libraries
Fantastic four machine_learning_java_librariesAegis Software Canada
 
CMSC 131 Discussion 08-31-2011
CMSC 131 Discussion  08-31-2011CMSC 131 Discussion  08-31-2011
CMSC 131 Discussion 08-31-2011daslerpc
 
Nautral Langauge Processing - Basics / Non Technical
Nautral Langauge Processing - Basics / Non Technical Nautral Langauge Processing - Basics / Non Technical
Nautral Langauge Processing - Basics / Non Technical Dhruv Gohil
 

Similar to Machine Learning on iOS with Core ML (20)

The State of ML for iOS: On the Advent of WWDC 2018 🕯
The State of ML for iOS: On the Advent of WWDC 2018 🕯The State of ML for iOS: On the Advent of WWDC 2018 🕯
The State of ML for iOS: On the Advent of WWDC 2018 🕯
 
Add Machine Learning to your iOS 11 App Using Core ML
Add Machine Learning to your iOS 11 App Using Core MLAdd Machine Learning to your iOS 11 App Using Core ML
Add Machine Learning to your iOS 11 App Using Core ML
 
Core ML
Core MLCore ML
Core ML
 
Machine Learning in iOS_ Core ML and its Applications.pptx
Machine Learning in iOS_ Core ML and its Applications.pptxMachine Learning in iOS_ Core ML and its Applications.pptx
Machine Learning in iOS_ Core ML and its Applications.pptx
 
Object Oriented Programming : A Brief History and its significance
Object Oriented Programming : A Brief History and its significanceObject Oriented Programming : A Brief History and its significance
Object Oriented Programming : A Brief History and its significance
 
Machine Learning for SEOs - MozCon 2018
Machine Learning for SEOs - MozCon 2018Machine Learning for SEOs - MozCon 2018
Machine Learning for SEOs - MozCon 2018
 
Introduction To TensorFlow
Introduction To TensorFlowIntroduction To TensorFlow
Introduction To TensorFlow
 
Collaborative Ontology Building Project
Collaborative Ontology Building Project  Collaborative Ontology Building Project
Collaborative Ontology Building Project
 
Intro to deep learning
Intro to deep learning Intro to deep learning
Intro to deep learning
 
Using CoreML to Push the Limits of your App
Using CoreML to Push the Limits of your AppUsing CoreML to Push the Limits of your App
Using CoreML to Push the Limits of your App
 
Shortcut in learning iOS
Shortcut in learning iOSShortcut in learning iOS
Shortcut in learning iOS
 
Semantic web, python, construction industry
Semantic web, python, construction industrySemantic web, python, construction industry
Semantic web, python, construction industry
 
Journey of Generative AI
Journey of Generative AIJourney of Generative AI
Journey of Generative AI
 
Demystifying Ml, DL and AI
Demystifying Ml, DL and AIDemystifying Ml, DL and AI
Demystifying Ml, DL and AI
 
Beware the monolith
Beware the monolithBeware the monolith
Beware the monolith
 
THE MECHANICS AND APPLICATIONS OF LARGE LANGUAGE MODELS.pptx
THE MECHANICS AND APPLICATIONS OF LARGE LANGUAGE MODELS.pptxTHE MECHANICS AND APPLICATIONS OF LARGE LANGUAGE MODELS.pptx
THE MECHANICS AND APPLICATIONS OF LARGE LANGUAGE MODELS.pptx
 
Fantastic four machine_learning_java_libraries
Fantastic four machine_learning_java_librariesFantastic four machine_learning_java_libraries
Fantastic four machine_learning_java_libraries
 
Aspects of NLP Practice
Aspects of NLP PracticeAspects of NLP Practice
Aspects of NLP Practice
 
CMSC 131 Discussion 08-31-2011
CMSC 131 Discussion  08-31-2011CMSC 131 Discussion  08-31-2011
CMSC 131 Discussion 08-31-2011
 
Nautral Langauge Processing - Basics / Non Technical
Nautral Langauge Processing - Basics / Non Technical Nautral Langauge Processing - Basics / Non Technical
Nautral Langauge Processing - Basics / Non Technical
 

Recently uploaded

Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

Recently uploaded (20)

Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

Machine Learning on iOS with Core ML

  • 1. 🤖 Fun Machine Learning 🤖 🍎 Now on iOS 🍎 🎉 Yay 🎉
  • 2. Machine Learning on iOS with Core ML @josephhosford Developer w/ Music Loft Apps musicloftapps.com josephhosford.com
  • 3. I make music apps And dabble in image classification in ML.
  • 4. 🤖 Machine Learning 🤖 🍎 ML on iOS 🍎 Two Parts
  • 5. What is machine learning? 🤖 Great overview video https://www.youtube.com/watch?v=NOjUaY0Qn3g
  • 6. 🤖 “Machine Learning is about making decision based on trial and error …a more application oriented version of statistics. The basic idea is to make decisions based on certain amount of information you have.“ -Anonymous via Quora
  • 7. 🤖 Let us break down some ML terms: “ML got levels to it” Kendrick LaML Model Neural Networks Supervised & Unsupervised Learning Common Tools & Libraries
  • 9. 🤖 Neural Networks If you want to learn more about the math behind NNs: read ACC Coolen’s paper (link in the resources) Modeled loosely on the human brain,a neural net consists of thousands or even millions of simple processing nodes that are densely interconnected. - MIT For a more detailed and basic overview: “A Quick Introduction to Neural Networks” (link in the resources)
  • 10. 🤖 Supervised & Unsupervised Learning Supervised algorithms can apply what has been learned in the past to new data. Unsupervised algorithms can draw inferences from datasets.
  • 11. 🤖 Common ML Tools & Libraries
  • 12. 🤖 Let us walkthrough building a basic image classification ML model with Tensorflow HT: Google Codelabs “Tensorflow for Poets” and Siraj Raval on YouTube
  • 13. 🤖 Conclusion: Machine Learning is totes powerful… a bit complicated… and often requires training and patience.
  • 14. 🤖 Note: Machine Learning isn’t perfect.
  • 15. Machine Learning on iOS with Core ML 🍎
  • 16. What is Core ML? 🍎 A Framework that allows us to use ML Models in iOS 11 (an inference engine) Built on low-level tech (e.g.Metal & Accelerate) Utilizes ML Models with a new .MLModel file Ability to convert models from popular ML libraries
  • 17. Supported Libraries by CoreML 🍎
  • 18. The ML Stack on iOS 🍎🍎
  • 22. Core ML The Good 🍎🍎 Very little iOS code Easy to implement Potential for powerful mobile experiences ML Tools and .MLModel Filetype are open source
  • 23. 🍎🍎 Requires lot of ML training Only supports supervised learning Not a lot of easy / beginner resources to help in creating Core ML models Almost all ML libraries are in Python making it harder to just start experimenting Core ML The Bad
  • 24. 🍎🍎 No on device training of the model .MLModel file is unencrypted Potential for huge file sizes No direct Tensorflow support (yet) Core ML The Ugly For more detailed criticism see: “Why Core ML will not work for your app (most likely)” (link in the resources)
  • 25. 🍎🍎 Core ML Models aren’t the only way to do ML on iOS You can roll your own ML with Metal Performance Shaders and Accelerate. There are open sources libraries that implement ML on iOS. Check out Alex Sosnovshchenko’s frequently updated list: “Machine Learning for iOS” (link in resources)
  • 26. Thanks for your time! @josephhosford
  • 28. IOS ML Machine Learning for iOS (Curated ML list of resources for iOS developers) http://alexsosn.github.io/ml/2015/11/05/iOS-ML.html CORE ML Core ML Product Page https://developer.apple.com/machine-learning/ Core ML Python Tools https://pypi.python.org/pypi/coremltools Why Core ML will not work for your app (most likely) http://alexsosn.github.io//ml/2017/06/09/Core-ML-will-not-Work-for-Your- App.html
  • 29. NEURAL NETWORKS A Quick Introduction to Neural Networks https://ujjwalkarn.me/2016/08/09/quick-intro-neural-networks/ A Beginner's Guide to the Mathematics of Neural Networks by ACC Coolen http://citeseerx.ist.psu.edu/viewdoc/download? doi=10.1.1.161.3556&rep=rep1&type=pdf Explained: Neural networks [MIT] http://news.mit.edu/2017/explained-neural-networks-deep-learning-0414 ML TUTORIALS Tensorflow for Poets https://codelabs.developers.google.com/codelabs/tensorflow-for-poets/ Building powerful image classification models using very little data https://blog.keras.io/building-powerful-image-classification-models-using- very-little-data.html Learning AI if You Suck at Math https://hackernoon.com/learning-ai-if-you-suck-at-math-8bdfb4b79037

Editor's Notes

  1. curl -O https://raw.githubusercontent.com/tensorflow/tensorflow/r1.1/tensorflow/examples/image_retraining/retrain.py tensorboard --logdir training_summaries & python retrain.py \ --bottleneck_dir=bottlenecks \ --how_many_training_steps=500 \ --model_dir=inception \ --summaries_dir=training_summaries/basic \ --output_graph=retrained_graph.pb \ --output_labels=retrained_labels.txt \ —image_dir=star_wars