A Graphical Tool for Designing and Training Deep Neural Networks

Barista is an open-source graphical high-level interface for the Caffe deep learning framework written in Python. While Caffe is one of the most popular frameworks for training DNNs, editing prototxt files in order to specify the net architecture and hyper parameters can become a cumbersome and error-prone task. Instead, Barista offers a fully graphical user interface with a graph-based net topology editor.

Barista was featured in a podcast on the nextPlatform.


Download tar

Git Repository

Read Documentation

If you use Barista in your research, please cite the following paper:

S. Klemm, A. Scherzinger, D. Drees, and X. Jiang. "Barista - A Graphical Tool for Designing and Training Deep Neural Networks". CoRR (2018). arXiv preprint: 1802.04626.

© pria

Barista is designed on top of the Caffe infrastructure. As such, it provides the user with lists of Caffe's layers, available layer parameters, as well as all of the solver options Caffe offers. Barista is designed to support all Caffe development branches that provide a valid caffe.proto file and Python interface.

At the heart of Barista's user interface is the network editor. Here you can generate your Deep Neural Networks (DNNs) as graph-like structures, allowing a quick and less error-prone design. Your network can be exported as a prototxt file to share it with others or run it on machines without a Barista installation. All of your existing Caffe nets can be imported so that you can start to speed up your machine learning tasks right away.

© pria

You can train your nets on multiple machines in parallel, so you can evaluate different hyper parameters including network topology or just perform rapid cross validation without setting up orchestration tools or installing additional software.

Features at a glance:

  • Supporting all Caffe branches with a valid caffe.proto file and PyCaffe implementation

  • Runs on Linux, Windows and MacOS due to platform independence of python and PyQt

  • Training on multiple Caffe instances on multiple machines

  • Realtime training analysis through a plotting module

  • Realtime weight visualisation

  • Comfortable import and export functions

  • Database manager supporting all database types supported by Caffe

Barista is still under development, so do not expect it to be free from bugs. However, we are confident that it will already speed up your deep learning research and make it more comfortable than ever before.

Feel free to download the current version from our Repository, use it and contact us for problem reports, improvement suggestions or features you would like to see in future releases.