Sign inSign up

vanvalenlab/kiosk

By vanvalenlab

•Updated over 6 years ago

The Van Valen Lab (Caltech) Deepcell Cluster Provisioner

Image
0

4.6K

vanvalenlab/kiosk repository overview

⁠DeepCell Kiosk: A Scalable and User-Friendly Environment for Biological Image Analysis

Build Status Read the Docs Apache 2.0

The DeepCell Kiosk is the entry point for users to spin up an end-to-end DeepCell environment in the cloud using Kubernetes⁠. It is designed to allow researchers to easily deploy and scale a deep learning platform for biological image analysis. Once launched, users can drag-and-drop images to be processed in parallel using publicly available, or custom-built, TensorFlow models. To train custom models, please refer to DeepCell-TF⁠, which was designed to facilitate model development and export these models for use with the DeepCell Kiosk.

The scalability of the DeepCell Kiosk software is enabled by cloud computing⁠. At present, the Kiosk is only compatible with Google Cloud⁠.

A running example of the DeepCell Kiosk is live at DeepCell.org⁠.

⁠Features

  • Cloud-based deployment of deep-learning models
  • Scalable platform that minimizes cost and inference time
  • Drag and drop interface for running predictions
⁠Example
Raw Image Tracked Image
Raw Image Tracked Image

⁠Getting Started

Start a terminal shell and install the DeepCell Kiosk wrapper script:

docker run -e DOCKER_TAG=1.1.0 vanvalenlab/kiosk:1.1.0 | sudo bash

To start the kiosk, just run kiosk from the terminal shell.

Check out our docs⁠ for more information on how to start your own kiosk.

⁠Software Architecture

Kiosk Architecture

  • Frontend⁠: API for creating and managing jobs, and a React-based web interface for the DeepCell Kiosk.

  • Consumer⁠: Retrieves items from the Job Queue and handles the processing pipeline for that item. Each consumer only works on one item at a time.

  • Model Server⁠: Serves models over a gRPC API, allowing consumers to send data and get back predictions.

  • GPU Autoscaler⁠: Automatically and efficiently scales Kubernetes GPU resources.

  • Not pictured above:

    • Bucket Monitor⁠: Purges the bucket of uploaded and processed files that are older than AGE_THRESHOLD, 3 days by default.

    • Janitor⁠: Monitors in-progress items and makes sure no jobs get left un-finished.

⁠Contribute

We welcome contributions to the kiosk. If you are interested, please refer to our Developer Documentation⁠, Code of Conduct⁠ and Contributing Guidelines⁠.

⁠Support

Issues are managed through Github⁠. Documentation is hosted on Read the Docs⁠. A FAQ⁠ page is also available.

⁠License

This software is license under a modified APACHE2⁠. See LICENSE⁠ for full details.

⁠Trademarks

All other trademarks referenced herein are the property of their respective owners.

⁠Credits

Caltech Logo

This kiosk was developed with Cloud Posse, LLC⁠. They can be reached at [email protected]⁠

Copyright © 2018-2020 The Van Valen Lab⁠ at the California Institute of Technology (Caltech), with support from the Paul Allen Family Foundation, Google, & National Institutes of Health (NIH) under Grant U24CA224309-01. All rights reserved.

Tag summary

Content type

Image

Digest

Size

593.6 MB

Last updated

over 6 years ago

docker pull vanvalenlab/kiosk