Symphony is a framework for composing interactive machine learning interfaces with task-specific, data-driven components that can be used across platforms such as computational notebooks and web dashboards. See Symphony's documentation for more information.
This code accompanies the research paper:
Symphony: Composing Interactive Interfaces for Machine Learning
Alex Bäuerle*, Ángel Alexander Cabrera*, Fred Hohman, Megan Maher, David Koski, Xavier Suau, Titus Barik, Dominik Moritz
ACM Conference on Human Factors in Computing Systems (CHI), 2022.
Paper, Code, Preview, Video *Contributed equally
This repository consists of three main parts:
symphony_ui
: The main Symphony project, containing the framework.symphony_lib
: A library that is used by both the framework and components to share common code.widgets
: Widgets that we provide as components and extensions to the project.
To install Symphony, run:
pip install symphony_ui
You can then install individual components, for example:
pip install symphony_summary
Optionally, you can install all available components with:
pip install "symphony_ui[widgets]"
Symphony works great with DNIKit. You can use DNIKit to generate analysis data for Symphony, for example for the Familiarity and Duplicates components. If you want to run the precomputed Symphony example that uses DNIKit, run:
pip install "symphony_ui[examples]"
For information on how to use or contribute to Symphony, see the documentation.
When making contributions, refer to the CONTRIBUTING
guidelines and read the CODE OF CONDUCT
.
To cite our paper, please use:
@inproceedings{bauerle2022symphony,
title={Symphony: Composing Interactive Interfaces for Machine Learning},
author={Bäuerle, Alex and Cabrera, Ángel Alexander and Hohman, Fred and Maher, Megan and Koski, David and Suau, Xavier and Barik, Titus and Moritz, Dominik},
booktitle={Proceedings of the SIGCHI Conference on Human Factors in Computing Systems},
year={2022},
organization={ACM},
doi={10.1145/3491102.3502102}
}
This code is released under the LICENSE
terms.