Git Product home page Git Product logo

willump-simple's Introduction

Welcome to Willump!

Willump is a Stanford-built system and research project for maximizing the performance of feature computation in machine learning inference. Many machine learning applications have to process raw data into numerical features before they can make predictions with a machine learning model. Willump optimizes these applications to selectively compute those features, making them much faster--in some of our experiments, almost 5x faster:

chart-1

At a high level, Willump works by identifying a set of high-value, low-cost features and training an approximate model on them. Then, when predicting a data input, it first predicts with the approximate model, but only returns that prediction if it is very confident, otherwise cascading to the original model. With some algorithmic tricks that we describe in our explanation notebook and paper, Willump can reliably choose features and parameters that maximize inference performance without losing accuracy.

Willump is a research prototype and is not ready for production use, but it's still a system you can use and play with! This repository is a self-contained Python package, so to install Willump, simply run:

python3 setup.py install --user

To optimize an ML application with Willump, all you have to do is write it as a Python function following an easy-to-parse format and then follow a few steps that we describe in our tutorial notebook. If you're interested in how Willump works, please see our explanation notebook, or, for even more detail, our paper. We've also written a blog post to provide an introduction to the project.

If you're wondering why this repository is called Willump-Simple, it's because this is a rewrite of the original Willump system designed to be simpler and easier to use. We've released it for Willump's demo at VLDB 2020.

willump-simple's People

Contributors

kraftp avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.