Skip to content
Turi Create simplifies the development of custom machine learning models.
Branch: master
Clone or download
znation Browser target for SFrame.explore (#2243)
* Browser target for SFrame.explore

* Adds support for the `browser` target for SFrame explore (table view).
* Adds proper data handling on the server, using POST requests and
  `boost::property_tree` for JSON decoding.
* Supports scrolling, jump to row, and accordion expansion.
* Refactors the table spec & data functions out of unity_sframe into
  visualization/server/table.
* Refactors empty_tz construction out of unity_sframe and into static
  local initialization within the escaping functions.
* Refactors image hover to load over HTTP from localhost, for both GUI
  and browser target explore. This appears to be much faster than the
  server queue/push-based approach, since now the client handles its own
  request queue and the server can respond on multiple threads.
Latest commit e87ab66 Aug 20, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmake CMake simplification & build speedup (#1413) Feb 18, 2019
deps Add external dependency: Node.js (#2231) Aug 15, 2019
scenario-tests Python 3.7 macOS Support (#2079) Aug 7, 2019
scripts Fix requirements.txt for darwin (#2246) Aug 16, 2019
src Browser target for SFrame.explore (#2243) Aug 20, 2019
test unity_sframe::append reorders sframe if needed (#2227) Aug 13, 2019
userguide Added note for beta. (#2225) Aug 12, 2019
.clang-format C-API of Activity Classifier fixes error in prediction (#1881) May 16, 2019
.gitignore Add external dependency: Node.js (#2231) Aug 15, 2019
.gitlab-ci.yml Python 3.7 macOS Support (#2079) Aug 7, 2019
.travis.yml Fixed travis Python 3.6 build (#2111) Aug 7, 2019
BUILD.md Update BUILD.md to reflect code restructuring (#2105) Jul 3, 2019
CMakeLists.txt API avaliability (#2179) Jul 31, 2019
CODE_OF_CONDUCT.md Adds Code of Conduct for Turi Create. (#1809) Apr 30, 2019
CONTRIBUTING.md Update CONTRIBUTING.md for Travis CI (#1210) Nov 12, 2018
Doxyfile Remove unused code plus minor cleanups (#233) Feb 12, 2018
INSTALL_ISSUES.md Minor Cleanups Jan 22, 2018
LICENSE.md Update license year Jan 2, 2018
LINUX_INSTALL.md Clarify runtime requirements and GLIBC version (#1823) May 2, 2019
LinuxGPU.md Doc updates for 5.0b1 (#616) Jun 4, 2018
README.md Python 3.7 macOS Support (#2079) Aug 7, 2019
build_capi.sh Fix iOS flag passed from build_capi.sh (#1223) Dec 1, 2018
build_python_wheel.sh 5.0b1 merge fixes (#625) Jun 4, 2018
configure Fully automated docker builds (#1750) Apr 27, 2019

README.md

Quick Links: Installation | Documentation | WWDC 2019 | WWDC 2018

Build Status PyPI Release Python Versions

Turi Create

Turi Create

Check out our talks at WWDC 2019 and at WWDC 2018!

Turi Create simplifies the development of custom machine learning models. You don't have to be a machine learning expert to add recommendations, object detection, image classification, image similarity or activity classification to your app.

  • Easy-to-use: Focus on tasks instead of algorithms
  • Visual: Built-in, streaming visualizations to explore your data
  • Flexible: Supports text, images, audio, video and sensor data
  • Fast and Scalable: Work with large datasets on a single machine
  • Ready To Deploy: Export models to Core ML for use in iOS, macOS, watchOS, and tvOS apps

With Turi Create, you can accomplish many common ML tasks:

ML Task Description
Recommender Personalize choices for users
Image Classification Label images
Drawing Classification Recognize Pencil/Touch Drawings and Gestures
Sound Classification Classify sounds
Object Detection Recognize objects within images
One Shot Object Detection Recognize 2D objects within images using a single example
Style Transfer Stylize images
Activity Classification Detect an activity using sensors
Image Similarity Find similar images
Classifiers Predict a label
Regression Predict numeric values
Clustering Group similar datapoints together
Text Classifier Analyze sentiment of messages

Example: Image classifier with a few lines of code

If you want your app to recognize specific objects in images, you can build your own model with just a few lines of code:

import turicreate as tc

# Load data 
data = tc.SFrame('photoLabel.sframe')

# Create a model
model = tc.image_classifier.create(data, target='photoLabel')

# Make predictions
predictions = model.predict(data)

# Export to Core ML
model.export_coreml('MyClassifier.mlmodel')

It's easy to use the resulting model in an iOS application:

Turi Create

Supported Platforms

Turi Create supports:

  • macOS 10.12+
  • Linux (with glibc 2.10+)
  • Windows 10 (via WSL)

System Requirements

Turi Create requires:

  • Python 2.7, 3.5, 3.6, 3.7 (macOS only)
  • x86_64 architecture
  • At least 4 GB of RAM

Installation

For detailed instructions for different varieties of Linux see LINUX_INSTALL.md. For common installation issues see INSTALL_ISSUES.md.

We recommend using virtualenv to use, install, or build Turi Create.

pip install virtualenv

The method for installing Turi Create follows the standard python package installation steps. To create and activate a Python virtual environment called venv follow these steps:

# Create a Python virtual environment
cd ~
virtualenv venv

# Activate your virtual environment
source ~/venv/bin/activate

Alternatively, if you are using Anaconda, you may use its virtual environment:

conda create -n virtual_environment_name anaconda
conda activate virtual_environment_name

To install Turi Create within your virtual environment:

(venv) pip install -U turicreate

Version 5.0 (New)

Turi Create 5.0 includes:

  • GPU Acceleration on Macs for:
    • Image Classification (macOS 10.13+)
    • Image Similarity (macOS 10.13+)
    • Object Detection (macOS 10.14+)
    • Activity Classification (macOS 10.14+)
  • New Task: Style Transfer
  • Recommender model deployment
  • Vision Feature Print model deployment

Documentation

The package User Guide and API Docs contain more details on how to use Turi Create.

GPU Support

Turi Create does not require a GPU, but certain models can be accelerated 9-13x when utilizing a GPU.

Turi Create automatically utilizes Mac GPUs for the following tasks:

  • Image Classification (macOS 10.13+)
  • Image Similarity (macOS 10.13+)
  • Object Detection (macOS 10.14+, discrete GPU only)
  • Activity Classification (macOS 10.14+, discrete GPU only)

For linux GPU support, see LinuxGPU.md.

Building From Source

If you want to build Turi Create from source, see BUILD.md.

Contributing

Prior to contributing, please review CONTRIBUTING.md and do not provide any contributions unless you agree with the terms and conditions set forth in CONTRIBUTING.md.

We want the Turi Create community to be as welcoming and inclusive as possible, and have adopted a Code of Conduct that we expect all community members, including contributors, to read and observe.

You can’t perform that action at this time.