The Continual Transfer Learning Benchmark
Project description
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ctrl-benchmark-0.0.4.tar.gz
.
File metadata
- Download URL: ctrl-benchmark-0.0.4.tar.gz
- Upload date:
- Size: 33.6 kB
- Tags: Source
- Uploaded using 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
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bdea1617448468662b9ad99dbc6975adb7af1503fd62688d7b621af6c52670a4 |
|
MD5 | be39a21be5f7ab1e48e4129e740c1629 |
|
BLAKE2b-256 | 5882307fdbdf0f8b153ae4650561389aec4e51df1753f21f435d7fa0a2e20856 |
File details
Details for the file ctrl_benchmark-0.0.4-py3-none-any.whl
.
File metadata
- Download URL: ctrl_benchmark-0.0.4-py3-none-any.whl
- Upload date:
- Size: 51.0 kB
- Tags: Python 3
- Uploaded using 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
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7897040cd73bb4000f30c959da968eeb9a5376c76c7244a06512f34c485362ed |
|
MD5 | 6292d3b9f1762cbf3dd63de12b6e6e56 |
|
BLAKE2b-256 | a66df910a12d5656820e2d7a4e795defdac0dd36e0e63565ef4316ccc1fbc7ff |