From 89701f669282b7f0fbf2d75b9eb785eca0ad89a9 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Wed, 10 May 2023 08:08:02 +0000 Subject: automatic import of python-continuum --- .gitignore | 1 + python-continuum.spec | 501 ++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 503 insertions(+) create mode 100644 python-continuum.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..818419f 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/continuum-1.2.7.tar.gz diff --git a/python-continuum.spec b/python-continuum.spec new file mode 100644 index 0000000..ce9a44f --- /dev/null +++ b/python-continuum.spec @@ -0,0 +1,501 @@ +%global _empty_manifest_terminate_build 0 +Name: python-continuum +Version: 1.2.7 +Release: 1 +Summary: A clean and simple library for Continual Learning in PyTorch. +License: MIT License +URL: https://github.com/Continvvm/continuum +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/39/86/f3ab27dd5d2169e58a92fbf08717fbd584217342a4d5248cfe03fa3297fc/continuum-1.2.7.tar.gz +BuildArch: noarch + + +%description +
+ +# Continuum: Simple Management of Complex Continual Learning Scenarios + +[![PyPI version](https://badge.fury.io/py/continuum.svg)](https://badge.fury.io/py/continuum) [![Build Status](https://travis-ci.com/Continvvm/continuum.svg?branch=master)](https://travis-ci.com/Continvvm/continuum) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/c3a31475bebc4036a13e6048c24eb3e0)](https://www.codacy.com/gh/Continvvm/continuum?utm_source=github.com&utm_medium=referral&utm_content=Continvvm/continuum&utm_campaign=Badge_Grade) [![DOI](https://zenodo.org/badge/254864913.svg)](https://zenodo.org/badge/latestdoi/254864913) [![Documentation Status](https://readthedocs.org/projects/continuum/badge/?version=latest)](https://continuum.readthedocs.io/en/latest/?badge=latest) +[![coverage](coverage.svg)]() + +[![Doc](https://img.shields.io/badge/Documentation-link-blue)](https://continuum.readthedocs.io/) +[![Paper](https://img.shields.io/badge/arXiv-2102.06253-brightgreen)](https://arxiv.org/abs/2102.06253) +[![Youtube](https://img.shields.io/badge/Youtube-link-purple)](https://www.youtube.com/watch?v=ntSR5oYKyhM) +
+ +## A library for PyTorch's loading of datasets in the field of Continual Learning + +Aka Continual Learning, Lifelong-Learning, Incremental Learning, etc. + +Read the [documentation](https://continuum.readthedocs.io/en/latest/).
+Test Continuum on [Colab](https://colab.research.google.com/drive/1bRx3M1YFcol9RZxBZ51brxqGWrf4-Bzn?usp=sharing) ! + +### Example: + +Install from and PyPi: +```bash +pip3 install continuum +``` + +And run! +```python +from torch.utils.data import DataLoader + +from continuum import ClassIncremental +from continuum.datasets import MNIST +from continuum.tasks import split_train_val + +dataset = MNIST("my/data/path", download=True, train=True) +scenario = ClassIncremental( + dataset, + increment=1, + initial_increment=5 +) + +print(f"Number of classes: {scenario.nb_classes}.") +print(f"Number of tasks: {scenario.nb_tasks}.") + +for task_id, train_taskset in enumerate(scenario): + train_taskset, val_taskset = split_train_val(train_taskset, val_split=0.1) + train_loader = DataLoader(train_taskset, batch_size=32, shuffle=True) + val_loader = DataLoader(val_taskset, batch_size=32, shuffle=True) + + for x, y, t in train_loader: + # Do your cool stuff here +``` + +### Supported Types of Scenarios + +|Name | Acronym | Supported | Scenario | +|:----|:---|:---:|:---:| +| **New Instances** | NI | :white_check_mark: | [Instances Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#instance-incremental)| +| **New Classes** | NC | :white_check_mark: |[Classes Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#classes-incremental)| +| **New Instances & Classes** | NIC | :white_check_mark: | [Data Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#new-class-and-instance-incremental)| + +### Supported Datasets: + +Most dataset from [torchvision.dasasets](https://pytorch.org/docs/stable/torchvision/datasets.html) are supported, for the complete list, look at the documentation page on datasets [here](https://continuum.readthedocs.io/en/latest/_tutorials/datasets/dataset.html). + +Furthermore some "Meta"-datasets are can be create or used from numpy array or any torchvision.datasets or from a folder for datasets having a tree-like structure or by combining several dataset and creating dataset fellowships! + +### Indexing + +All our continual loader are iterable (i.e. you can for loop on them), and are +also indexable. + +Meaning that `clloader[2]` returns the third task (index starts at 0). Likewise, +if you want to evaluate after each task, on all seen tasks do `clloader_test[:n]`. + +### Example of Sample Images from a Continuum scenario + +**CIFAR10**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**MNIST Fellowship (MNIST + FashionMNIST + KMNIST)**: + +|||| +|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | + + +**PermutedMNIST**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**RotatedMNIST**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**TransformIncremental + BackgroundSwap**: + +|||| +|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | + +### Citation + +If you find this library useful in your work, please consider citing it: + +``` +@misc{douillardlesort2021continuum, + author={Douillard, Arthur and Lesort, Timothée}, + title={Continuum: Simple Management of Complex Continual Learning Scenarios}, + publisher={arXiv: 2102.06253}, + year={2021} +} +``` + + +### Maintainers + +This project was started by a joint effort from [Arthur Douillard](https://arthurdouillard.com/) & +[Timothée Lesort](https://tlesort.github.io/), and we are currently the two maintainers. + +Feel free to contribute! If you want to propose new features, please create an issue. + +Contributors: [Lucas Caccia](https://github.com/pclucas14) [Lucas Cecchi](https://github.com/Lucasc-99) [Pau Rodriguez](https://github.com/prlz77), [Yury Antonov](https://github.com/yantonov), +[psychicmario](https://github.com/psychicmario), [fcld94](https://github.com/fcdl94), [Ashok Arjun](https://github.com/ashok-arjun), [Md Rifat Arefin](https://github.com/rarefin), [DanieleMugnai](https://github.com/mugnaidaniele), [Xiaohan Zou](https://github.com/Renovamen), [Umberto Cappellazzo](https://github.com/umbertocappellazzo). + + +### On PyPi + +Our project is available on PyPi! + +```bash +pip3 install continuum +``` + +Note that previously another project, a CI tool, was using that name. It is now +there [continuum_ci](https://pypi.org/project/continuum_ci/). + + +%package -n python3-continuum +Summary: A clean and simple library for Continual Learning in PyTorch. +Provides: python-continuum +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-continuum +
+ +# Continuum: Simple Management of Complex Continual Learning Scenarios + +[![PyPI version](https://badge.fury.io/py/continuum.svg)](https://badge.fury.io/py/continuum) [![Build Status](https://travis-ci.com/Continvvm/continuum.svg?branch=master)](https://travis-ci.com/Continvvm/continuum) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/c3a31475bebc4036a13e6048c24eb3e0)](https://www.codacy.com/gh/Continvvm/continuum?utm_source=github.com&utm_medium=referral&utm_content=Continvvm/continuum&utm_campaign=Badge_Grade) [![DOI](https://zenodo.org/badge/254864913.svg)](https://zenodo.org/badge/latestdoi/254864913) [![Documentation Status](https://readthedocs.org/projects/continuum/badge/?version=latest)](https://continuum.readthedocs.io/en/latest/?badge=latest) +[![coverage](coverage.svg)]() + +[![Doc](https://img.shields.io/badge/Documentation-link-blue)](https://continuum.readthedocs.io/) +[![Paper](https://img.shields.io/badge/arXiv-2102.06253-brightgreen)](https://arxiv.org/abs/2102.06253) +[![Youtube](https://img.shields.io/badge/Youtube-link-purple)](https://www.youtube.com/watch?v=ntSR5oYKyhM) +
+ +## A library for PyTorch's loading of datasets in the field of Continual Learning + +Aka Continual Learning, Lifelong-Learning, Incremental Learning, etc. + +Read the [documentation](https://continuum.readthedocs.io/en/latest/).
+Test Continuum on [Colab](https://colab.research.google.com/drive/1bRx3M1YFcol9RZxBZ51brxqGWrf4-Bzn?usp=sharing) ! + +### Example: + +Install from and PyPi: +```bash +pip3 install continuum +``` + +And run! +```python +from torch.utils.data import DataLoader + +from continuum import ClassIncremental +from continuum.datasets import MNIST +from continuum.tasks import split_train_val + +dataset = MNIST("my/data/path", download=True, train=True) +scenario = ClassIncremental( + dataset, + increment=1, + initial_increment=5 +) + +print(f"Number of classes: {scenario.nb_classes}.") +print(f"Number of tasks: {scenario.nb_tasks}.") + +for task_id, train_taskset in enumerate(scenario): + train_taskset, val_taskset = split_train_val(train_taskset, val_split=0.1) + train_loader = DataLoader(train_taskset, batch_size=32, shuffle=True) + val_loader = DataLoader(val_taskset, batch_size=32, shuffle=True) + + for x, y, t in train_loader: + # Do your cool stuff here +``` + +### Supported Types of Scenarios + +|Name | Acronym | Supported | Scenario | +|:----|:---|:---:|:---:| +| **New Instances** | NI | :white_check_mark: | [Instances Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#instance-incremental)| +| **New Classes** | NC | :white_check_mark: |[Classes Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#classes-incremental)| +| **New Instances & Classes** | NIC | :white_check_mark: | [Data Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#new-class-and-instance-incremental)| + +### Supported Datasets: + +Most dataset from [torchvision.dasasets](https://pytorch.org/docs/stable/torchvision/datasets.html) are supported, for the complete list, look at the documentation page on datasets [here](https://continuum.readthedocs.io/en/latest/_tutorials/datasets/dataset.html). + +Furthermore some "Meta"-datasets are can be create or used from numpy array or any torchvision.datasets or from a folder for datasets having a tree-like structure or by combining several dataset and creating dataset fellowships! + +### Indexing + +All our continual loader are iterable (i.e. you can for loop on them), and are +also indexable. + +Meaning that `clloader[2]` returns the third task (index starts at 0). Likewise, +if you want to evaluate after each task, on all seen tasks do `clloader_test[:n]`. + +### Example of Sample Images from a Continuum scenario + +**CIFAR10**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**MNIST Fellowship (MNIST + FashionMNIST + KMNIST)**: + +|||| +|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | + + +**PermutedMNIST**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**RotatedMNIST**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**TransformIncremental + BackgroundSwap**: + +|||| +|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | + +### Citation + +If you find this library useful in your work, please consider citing it: + +``` +@misc{douillardlesort2021continuum, + author={Douillard, Arthur and Lesort, Timothée}, + title={Continuum: Simple Management of Complex Continual Learning Scenarios}, + publisher={arXiv: 2102.06253}, + year={2021} +} +``` + + +### Maintainers + +This project was started by a joint effort from [Arthur Douillard](https://arthurdouillard.com/) & +[Timothée Lesort](https://tlesort.github.io/), and we are currently the two maintainers. + +Feel free to contribute! If you want to propose new features, please create an issue. + +Contributors: [Lucas Caccia](https://github.com/pclucas14) [Lucas Cecchi](https://github.com/Lucasc-99) [Pau Rodriguez](https://github.com/prlz77), [Yury Antonov](https://github.com/yantonov), +[psychicmario](https://github.com/psychicmario), [fcld94](https://github.com/fcdl94), [Ashok Arjun](https://github.com/ashok-arjun), [Md Rifat Arefin](https://github.com/rarefin), [DanieleMugnai](https://github.com/mugnaidaniele), [Xiaohan Zou](https://github.com/Renovamen), [Umberto Cappellazzo](https://github.com/umbertocappellazzo). + + +### On PyPi + +Our project is available on PyPi! + +```bash +pip3 install continuum +``` + +Note that previously another project, a CI tool, was using that name. It is now +there [continuum_ci](https://pypi.org/project/continuum_ci/). + + +%package help +Summary: Development documents and examples for continuum +Provides: python3-continuum-doc +%description help +
+ +# Continuum: Simple Management of Complex Continual Learning Scenarios + +[![PyPI version](https://badge.fury.io/py/continuum.svg)](https://badge.fury.io/py/continuum) [![Build Status](https://travis-ci.com/Continvvm/continuum.svg?branch=master)](https://travis-ci.com/Continvvm/continuum) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/c3a31475bebc4036a13e6048c24eb3e0)](https://www.codacy.com/gh/Continvvm/continuum?utm_source=github.com&utm_medium=referral&utm_content=Continvvm/continuum&utm_campaign=Badge_Grade) [![DOI](https://zenodo.org/badge/254864913.svg)](https://zenodo.org/badge/latestdoi/254864913) [![Documentation Status](https://readthedocs.org/projects/continuum/badge/?version=latest)](https://continuum.readthedocs.io/en/latest/?badge=latest) +[![coverage](coverage.svg)]() + +[![Doc](https://img.shields.io/badge/Documentation-link-blue)](https://continuum.readthedocs.io/) +[![Paper](https://img.shields.io/badge/arXiv-2102.06253-brightgreen)](https://arxiv.org/abs/2102.06253) +[![Youtube](https://img.shields.io/badge/Youtube-link-purple)](https://www.youtube.com/watch?v=ntSR5oYKyhM) +
+ +## A library for PyTorch's loading of datasets in the field of Continual Learning + +Aka Continual Learning, Lifelong-Learning, Incremental Learning, etc. + +Read the [documentation](https://continuum.readthedocs.io/en/latest/).
+Test Continuum on [Colab](https://colab.research.google.com/drive/1bRx3M1YFcol9RZxBZ51brxqGWrf4-Bzn?usp=sharing) ! + +### Example: + +Install from and PyPi: +```bash +pip3 install continuum +``` + +And run! +```python +from torch.utils.data import DataLoader + +from continuum import ClassIncremental +from continuum.datasets import MNIST +from continuum.tasks import split_train_val + +dataset = MNIST("my/data/path", download=True, train=True) +scenario = ClassIncremental( + dataset, + increment=1, + initial_increment=5 +) + +print(f"Number of classes: {scenario.nb_classes}.") +print(f"Number of tasks: {scenario.nb_tasks}.") + +for task_id, train_taskset in enumerate(scenario): + train_taskset, val_taskset = split_train_val(train_taskset, val_split=0.1) + train_loader = DataLoader(train_taskset, batch_size=32, shuffle=True) + val_loader = DataLoader(val_taskset, batch_size=32, shuffle=True) + + for x, y, t in train_loader: + # Do your cool stuff here +``` + +### Supported Types of Scenarios + +|Name | Acronym | Supported | Scenario | +|:----|:---|:---:|:---:| +| **New Instances** | NI | :white_check_mark: | [Instances Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#instance-incremental)| +| **New Classes** | NC | :white_check_mark: |[Classes Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#classes-incremental)| +| **New Instances & Classes** | NIC | :white_check_mark: | [Data Incremental](https://continuum.readthedocs.io/en/latest/_tutorials/scenarios/scenarios.html#new-class-and-instance-incremental)| + +### Supported Datasets: + +Most dataset from [torchvision.dasasets](https://pytorch.org/docs/stable/torchvision/datasets.html) are supported, for the complete list, look at the documentation page on datasets [here](https://continuum.readthedocs.io/en/latest/_tutorials/datasets/dataset.html). + +Furthermore some "Meta"-datasets are can be create or used from numpy array or any torchvision.datasets or from a folder for datasets having a tree-like structure or by combining several dataset and creating dataset fellowships! + +### Indexing + +All our continual loader are iterable (i.e. you can for loop on them), and are +also indexable. + +Meaning that `clloader[2]` returns the third task (index starts at 0). Likewise, +if you want to evaluate after each task, on all seen tasks do `clloader_test[:n]`. + +### Example of Sample Images from a Continuum scenario + +**CIFAR10**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**MNIST Fellowship (MNIST + FashionMNIST + KMNIST)**: + +|||| +|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | + + +**PermutedMNIST**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**RotatedMNIST**: + +|||||| +|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | Task 3 | Task 4| + +**TransformIncremental + BackgroundSwap**: + +|||| +|:-------------------------:|:-------------------------:|:-------------------------:| +|Task 0 | Task 1 | Task 2 | + +### Citation + +If you find this library useful in your work, please consider citing it: + +``` +@misc{douillardlesort2021continuum, + author={Douillard, Arthur and Lesort, Timothée}, + title={Continuum: Simple Management of Complex Continual Learning Scenarios}, + publisher={arXiv: 2102.06253}, + year={2021} +} +``` + + +### Maintainers + +This project was started by a joint effort from [Arthur Douillard](https://arthurdouillard.com/) & +[Timothée Lesort](https://tlesort.github.io/), and we are currently the two maintainers. + +Feel free to contribute! If you want to propose new features, please create an issue. + +Contributors: [Lucas Caccia](https://github.com/pclucas14) [Lucas Cecchi](https://github.com/Lucasc-99) [Pau Rodriguez](https://github.com/prlz77), [Yury Antonov](https://github.com/yantonov), +[psychicmario](https://github.com/psychicmario), [fcld94](https://github.com/fcdl94), [Ashok Arjun](https://github.com/ashok-arjun), [Md Rifat Arefin](https://github.com/rarefin), [DanieleMugnai](https://github.com/mugnaidaniele), [Xiaohan Zou](https://github.com/Renovamen), [Umberto Cappellazzo](https://github.com/umbertocappellazzo). + + +### On PyPi + +Our project is available on PyPi! + +```bash +pip3 install continuum +``` + +Note that previously another project, a CI tool, was using that name. It is now +there [continuum_ci](https://pypi.org/project/continuum_ci/). + + +%prep +%autosetup -n continuum-1.2.7 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-continuum -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed May 10 2023 Python_Bot - 1.2.7-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..89f3d71 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +296344c53a87b9fb24782190b7aaddc8 continuum-1.2.7.tar.gz -- cgit v1.2.3