Welcome to Masterful: The Training Platform for Computer Vision Models ====================================================================== Intro ----- Masterful is the training platform for computer vision models. Masterful supports most types of classification, detection, and segmentation. Masterful is designed with three objectives. 1. Training a more accurate model through comprehensive regularization and semi-supervised learning (e.g. learning from raw, unlabeled images). 2. Reduce developer time spent on hyperparameter tuning through high-speed metalearning. It's a waste of developer time to guess-and-check of hyperparameters or do long runs with a black box optimizer. 3. Train models using the minimum compute resources (GPU-hours and wall clock time), which is achieved through high-speed metalearning to discover ideal optimization hyperparameters. Currently available for Tensorflow2, with PyTorch support coming soon. Getting Started --------------- Install with ``pip install --upgrade pip; pip install masterful``. For detailed installation instructions, visit the :doc:`tutorials/tutorial_installation`. Then execute your first training run with Masterful with the :doc:`notebooks/tutorial_quickstart`. Finally, visualize Masterful's performance with the :doc:`tutorials/tutorial_frontend`. .. raw:: html Where Masterful Fits -------------------- Users define the two inputs to Masterful: * Model architecture * Data Masterful processes these inputs through four modules: * Regularization, which improves accuracy from the existing information * Semi-supervised learning (SSL), which improves accuracy by learning from raw, unlabeled images * Optimization, which minimizes GPU-hours to train * Meta-learning, which minimizes developer "guessing and checking" or long-runs for black box optimization. Masterful returns a train model (e.g. model weights). .. image:: _static/arch.png Citing This Work ---------------- If you use Masterful for academic research, you are encouraged to cite the following technical report: :: @article{wookeyhorikert2022masterful, title={Masterful: A Training Platform for Computer Vision Models}, author={Wookey, Samuel and Ho, Yaoshiang and Rikert, Tom}, year={2022} } Documentation ------------- The rest of the documentation is organized into the following sections: Image Classification, Detection, and Segmentation Code examples to help you get started with the Masterful AutoML platform. Semi-Supervised Learning Code examples exploring Semi-Supervised learning using Masterful. Advanced Topics Code examples for advanced use cases. Concepts The theory and thinking behind Masterful. API Reference Documenting the classes, methods, and functions. FAQ Frequently Asked Questions Release Notes Changes in each release. .. toctree:: :maxdepth: 1 :caption: Getting Started :hidden: :includehidden: Installation Quickstart Tutorial Visualizing the Results .. toctree:: :maxdepth: 1 :caption: Image Classification, Detection, and Segmentation :hidden: :includehidden: Classification Object Detection Semantic Segmentation .. toctree:: :maxdepth: 1 :caption: Semi-Supervised Learning :hidden: :includehidden: Introduction to SSL Using Unlabeled Data Part 1 Using Unlabeled Data Part 2 Simple Semi-Supervised Learning Recipe Unsupervised Pre-Training .. toctree:: :maxdepth: 1 :caption: Advanced Topics :hidden: :includehidden: Data Input Types Batch Size and Learning Rate Finder Transfer Learning Ensembling Distillation .. toctree:: :maxdepth: 2 :caption: Concepts :hidden: :includehidden: The Concepts Within the Masterful AutoML Platform Architecture And Data Params .. toctree:: :maxdepth: 3 :caption: API Reference :hidden: :includehidden: masterful.architecture masterful.data masterful.enums masterful.evaluation masterful.optimization masterful.register masterful.regularization masterful.ssl masterful.training .. toctree:: :maxdepth: 3 :caption: FAQ :hidden: :includehidden: faq/faq .. toctree:: :maxdepth: 3 :caption: Release Notes :hidden: :includehidden: release_notes/release_notes