Skip to main content

Continual Transfer Learning Benchmark

The CTrL benchmark aims to help research by studying the transfer behaviour of different models in the Lifelong Learning context.

For a quick presentation of the benchmark, please check out this blog post.

For more details, the paper is available on arxiv.

Creating a Stream:

The TaskGenerator class is at the center of the implementation of the CTrL Benchmark. It gives access to a high-level API allowing to seamlessly generate a wide variety of streams with a loose coupling between the different components such as the underlying dataset(s), the strategy to generate the tasks (split, incremental, mixture of datasets, ...) and the processing to apply to each task.

The 3 main components of a Task Generator are:

  • A pool of concepts to select from to generate the tasks. It can be a few classes, a full dataset or even a mixture of datasets.
  • A pool of transformation that can be modified or combined to apply specific processing to the data for each task.
  • A Strategy, describing how to combine the conecpts and trasnformation over time to generate an actual stream.

Each of these components can be created by hand or using our automatic TaskGenerator creation tool using yaml configuration files.

For examples simply executing

import ctrl
task_gen = ctrl.get_stream('s_minus')

will return the corresponding task generator that be used either directy to generate tasks on the fly:

t1 = task_gen.add_task()
t2 = task_gen.add_task()
t3 = task_gen.add_task()
...

or as an iterator:

for t in task_gen:
    print(t)

Available streams:

In the current version, only the streams of the CTrL benchmark are directly available, they can be obtained by passing the following name arguments in ctrl.get_stream:

  • S+: "s_plus"
  • S-: "s_minus"
  • Sin: "s_in"
  • Sout: "s_out"
  • Spl: "s_pl"
  • Slong: "s_long"

More documentation and details on the internal components will be progressively added.

See the CONTRIBUTING file for how to help out.

LICENSE

See the LICENSE file.

Metadata

Release files for ctrl-benchmark 0.0.4

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

Source distribution (sdist)

Source distribution for ctrl-benchmark 0.0.4
File Size Uploaded Provenance Actions
ctrl-benchmark-0.0.4.tar.gz 33.6 kB Without provenance Details for ctrl-benchmark-0.0.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ctrl-benchmark 0.0.4
File Interpreter ABI Platform Actions
ctrl_benchmark-0.0.4-py3-none-any.whl Python 3 none any Details for ctrl_benchmark-0.0.4-py3-none-any.whl

Total release size: 84.6 kB

Release files / ctrl-benchmark-0.0.4.tar.gz

Download URL ctrl-benchmark-0.0.4.tar.gz
Size 33.6 kB
Tags Source
SHA-256 checksum
How to use checksums
bdea1617448468662b9ad99dbc6975adb7af1503fd62688d7b621af6c52670a4
BLAKE2b-256 checksum
How to use checksums
5882307fdbdf0f8b153ae4650561389aec4e51df1753f21f435d7fa0a2e20856
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/0.22 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.4

Release files / ctrl_benchmark-0.0.4-py3-none-any.whl

Download URL ctrl_benchmark-0.0.4-py3-none-any.whl
Size 51.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7897040cd73bb4000f30c959da968eeb9a5376c76c7244a06512f34c485362ed
BLAKE2b-256 checksum
How to use checksums
a66df910a12d5656820e2d7a4e795defdac0dd36e0e63565ef4316ccc1fbc7ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/0.22 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.4

Security for ctrl-benchmark 0.0.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.4 This release

2 release files No provenance

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