/example-ml-apps

Example ML apps demonstrating the end-to-end pipeline: model training, delivery, and app integration.

Primary LanguageSwiftApache License 2.0Apache-2.0

Example ML Apps

We are committed to building a platform that integrates with popular Machine Learning (ML) training frameworks & on-device ML formats, to create the best possible user experience delivering models to the edge.

With the wide array of tools and technologies available, it is challenging to develop an end-to-end machine learning architecture for mobile ML deployment.

Overview

In this repository, we're assembling example workflows that demonstrate all parts of the end-to-end pipeline: model training, delivery, and mobile app integration.

Each example features:

Each example includes:

  • Model training code that can be run on Google Colab or on your local machine
  • A mobile app that that demonstrates model integration and delivery runnable in Xcode

Getting Started

First, clone this repo:

$ git clone git@github.com:skafos/example-ml-apps.git

Then, navigate to the example you want to try and checkout the README doc for further instruction:

$ cd example-ml-apps/TensorFlow/tflite/ios
$ more README.md

Available Examples

Our collection of example machine learning apps will continue to grow over time:

How To Best Use The Examples

Feel free to look around and explore as you wish! However we recommend following these steps for each example you try:

  1. Create a free Skafos account and login
  2. In the dashboard, create a new app integration and model for the example

  1. Go through the model training and upload example code
  2. Go through the app building steps to see the ML model in action and Skafos perform model updates

ML Training Frameworks

These are libraries you would use to train machine learning models: anything from neural networks to decision tree classifiers. This is absolutely NOT an exhaustive list. More will be documented here over time.

On-Device ML Formats

Once you've trained a machine learning model, you have to convert it to a format optimized for use on mobile. The two most popular formats are:


Questions? Need Help?

Please don't hesitate to reach out!