Sacredboard
Sacredboard is a web dashboard for the Sacred machine learning experiment management tool.
It connects to the MongoDB database used by Sacred
and displays a list of experiments, their state, Sacred configuration and
the standard output from the running program.
Python 3.5 and a modern web browser are required for it to work properly.
Project Background (is Sacredboard dead?)
Sacredboard was written as a part of a master's thesis at Czech Technical University in 2016 and 2017. Supervised by the main developer of Sacred (Klaus Greff from the Swiss AI Lab IDSIA), who promoted Sacredboard on the Sacred homepage and at the end of his talk at the SciPy 2017 Python conference, it has become used by more people that I expected.
Unfortunately, the days I was full-time working on the tool as a student writing his thesis are gone. Sacredboard is now a side project, updated rather once in a while than on a regular basis, mainly because of its active users that deserve their requests for improvements and bugfixes to be addressed.
Please consider trying Omniboard, a new (and actively developed!) Sacredboard alternative by Vivek Ratnavel Subramanian and Yusaku Sako.
A big thanks to everyone who has helped improving Sacredboad!
Features in version 0.4.2
- Get an overview of running and finished experiments in a table, such as experiment name, machine on which it runs etc.
- Filter experiments
- Get detailed information of the experiment, such as the text output produced by the experiment.
- Run Tensorboard directly from the web console in order to see detailed information, charts and Tensorflow graph visualisations, provided that the experiment uses Sacred's Integration with Tensorflow
- Visualise Metrics in a chart.
- Use the MongoDB and newly also FileStorage backend (experimental, thanks to Gideon Dresdner)
- Delete experiments from the UI
Roadmap
Further Versions (maybe…)
- Deleting experiments including related records, such as artifacts
- Customized formatting of the result column
- Write wiki for developers :-)
- TBD
Screenshots
Screenshots are available on a separate Screenshots page.
Installation and Running Sacredboard
Install sacredboard using pip
:
pip install sacredboard
To install the latest development version with new features, run:
pip install https://github.com/chovanecm/sacredboard/archive/develop.zip
Dependencies
Sacredboard may require additional dependencies to install, especilly Python3 development files and a C compiler:
On Ubuntu/Debian:
libpython3-dev
build-essential
Running
Sacredboard can be run simply by typing sacredboard
to connect to
a local MongoDB database listening on port 27017, database name sacred
.
To connect to another machine or database name, specifiy the connection string
using the -m host:port:db
option.
sacredboard -m sacred
or, if you wish to connect to another machine and/or use a non-default
name of the Sacred runs collection (-mc
):
sacredboard -m 192.168.1.1:27017:sacred -mc default.runs
For setting more advanced connection properties, use the -mu
option
together with the Sacred database name ("sacred" in the example):
sacredboard -mu mongodb://user:pwd@host/admin?authMechanism=SCRAM-SHA-1 sacred
See MongoDB Connection String for more information.
The web browser with Sacredboard should open automatically.
To display help, run
sacredboard --help
Contributing
Contributions to Sacred are welcome (see issues for inspiration).
The project tries to follow the git-flow workflow. Therefore,
contributions of new features should be developed against the develop
branch. Thank you!
References
Feel free to open new issues in case of requests or bugs found.
Maintainer / Developer: Martin Chovanec, chovamar@fit.cvut.cz