Skip to content

Latest commit

 

History

History
14 lines (14 loc) · 1.43 KB

README.md

File metadata and controls

14 lines (14 loc) · 1.43 KB


A lightweight framework for easy ML experiment tracking.

Ditto's purpose is to store the code you write, as you run experiments, such that you don't have to worry about keeping track of what you're doing and the effects on your results. All you have to do is experiment.


The intended workflow is as follows (and as shown in this repo):
  1. Define your experiment in any number of modules, such as get_data.py, train_model.py, and evaluate_model.py.
  2. For each module that you want to keep track of, decorate the main controller function of the module with the @ditto.track_function decorator.
  3. Define a function, in another module like controller.py or in your monolithic module, that controls the entire experiment from end-to-end. Decorate it with the @ditto.save_experiment decorator to keep track of the experiment and results. This function should return your results to be saved. It is also recommended to decorate it with @ditto.track_function second to keep track of the module.
  4. Run your main controller function and watch the experiment run!

An example like the above is shown in the modules in this repo and finally called in Example.ipynb.