machinable is a modular configuration system for machine learning research. Using straight-forward conventions and a powerful configuration engine, it can help structuring your projects in a principled way to move quickly while enabling reuse and collaboration.
Ready to start?
$ pip install machinable
- YAML-based project-wide configuration files with expressive syntax
- Efficient configuration manipulation
- Modular code organisation to allow for encapsulation and re-use
- Import system to use 3rd party configuration and code without overhead
- 'Mixins' for horizontal inheritance structure
- Works with existing code
- Support for seamless cloud execution
- Automatic code backups
- Managed randomness and reproducibility
- Advanced hyperparameter tuning using Ray Tune
Effective result collection and analysis
- Logging, tabular record writer and storage API
- File system abstraction (in-memory, AWS S3, and more)
- Flat-file result database with SQL-like query interface
- Convenient configuration and result retrieval
Read the user guide to get started.