Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

ABLATOR

A distributed experiment execution framework for ablation studies. ABLATOR provides a wrapper for your model and a Trainer class for you to prototype on your method and scale to thousands of experimental trials with 1 code change.

Ablation studies are experiments used to identify the causal effects on a method performance. For example, does your novel layer really improve performance?

What are Ablators?

Ablators are materials that are depleted during operation (NASA). An experimental ABLATOR should not interfere with the experimental result.

Why ABLATOR?

  1. Strictly typed configuration system prevents errors.
  2. Seamless prototyping to production
  3. Stateful experiment design. Stop, Resume, Share your experiments
  4. Automated analysis artifacts
  5. Template Training

What is the difference with using xxx

Comparison table with existing framework:

Framework HPO Configuration Training Tuning Analysis
Ray :white_check_mark: :x: :x: :white_check_mark: :x:
Lighting :x: :x: :white_check_mark: :x: :x:
Optuna :white_check_mark: :x: :x: :x: :white_check_mark:
Hydra :x: :white_check_mark: :x: :x: :x:
ABLATOR :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:

Features compared, hyperparameter selection (HPO), removing boilerplate code for configuring experiments (Configuration), removing boiler plate code for running experiments at scale (Tuning) and performing analysis on the hyperparameter selection (Analysis).

Using:

  1. Ray: You will need to write boiler-plate code for integrating with a configuration system (i.e. Hydra), saving experiments artifacts or logging (i.e. integrate with Wandb).

  2. Lighting: You will need to write boiler-plate code for HPO (i.e. using Optuna), Configuring experiments (i.e. Hydra) and horizontal distributed execution (i.e. integrate with Ray)

  3. Hydra: The configuration system is not strongly typed (ABLATOR), and does not provide support for common ML use-cases where configuration attributes are Derived (inferred during run-time) or Stateless (change between trials). Additionally, ABLATOR provides support for custom objects that are dynamically inferred and initialized during execution.

  4. ABLATOR: Combines Ray back-end, with Optuna for HPO and removes boiler-plate code for fault tollerant strategies, training, and analyzing the results.

Integrating different tools, for distributed execution, fault tollerance, training, checkpointing and analysis is error prone! Poor compatibility between tools, verisioning errors will lead to errors in your analysis.

You can use ABLATOR with any other library i.e. PyTorch Lighting. Just wrap a Lighting model with ModelWrapper. For examples please look examples

Spend more time in the creative process of ML research and less time on dev-ops.

Pre-Release - Phase

The library is under active development and a lot of the API endpoints will be removed / renamed or their functionality changed without notice.

Install

Use a python virtual enviroment to avoid version conflicts.

pip install git+https://github.com/fostiropoulos/ablator.git

For Development

  1. git clone git@github.com:fostiropoulos/ablator.git
  2. cd ablator
  3. pip install -e .[dev]

Metadata

Release files for ablator-ken-test 0.0.1b2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ablator-ken-test 0.0.1b2
File Size Uploaded
ablator_ken_test-0.0.1b2.tar.gz 83.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ablator-ken-test 0.0.1b2
File Interpreter ABI Platform
ablator_ken_test-0.0.1b2-py3-none-any.whl Python 3 none any Details

Total release size: 180.5 kB

Release files / ablator_ken_test-0.0.1b2.tar.gz

Download URL ablator_ken_test-0.0.1b2.tar.gz
Size 83.9 kB
Tags Source
SHA-256 checksum
How to use checksums
5c4f937da6c3793221488f75a2749611539942ef9e332c8c211408e2135e53a2
BLAKE2b-256 checksum
How to use checksums
3b497b5fe19797e68525ed83bb700706723b71e885c49299f2283195edd29164
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.11

Release files / ablator_ken_test-0.0.1b2-py3-none-any.whl

Download URL ablator_ken_test-0.0.1b2-py3-none-any.whl
Size 96.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e944775425d72568c0bc24ccc95e9f29d7913ea100743c22351be233794f7477
BLAKE2b-256 checksum
How to use checksums
508a242f1f7f416b4bdf63e8766d8b3bbfc8cc07d9292a68adc7bbd6a7cef47d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.11

Release history Release notifications | RSS feed

This release

0.0.1b2 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page