Welcome to the fascinating world of Class-Incremental Learning through FACIL! This framework is designed to reproduce the results from the renowned paper: Class-incremental learning: survey and performance evaluation. Let’s dive into how you can effectively utilize FACIL for your projects.
What is FACIL?
FACIL originated from research by Marc Masana and colleagues, presenting a structured approach to incremental learning.
This framework is crafted with the community in mind, aiming to expand approaches and tools for developer experimentation and analysis.
Key Features
FACIL provides a robust framework that supports both class-incremental and task-incremental learning. The experiments yield results for both task-aware and task-agnostic evaluations, with different configurations for various datasets and learning tasks. Here’s a quick insight on what you can accomplish:
Setting | Task-ID at Train Time | Task-ID at Test Time | # of Tasks |
---|---|---|---|
Class-incremental Learning | Yes | No | ≥1 |
Task-incremental Learning | Yes | Yes | ≥1 |
Non-incremental Supervised Learning | Yes | Yes | 1 |
Current available approaches include:
- Finetuning
- Freezing
- Joint
- LwF
- iCaRL
- EWC
- PathInt
- MAS
- RWalk
- EEIL
- LwM
- DMC
- BiC
- LUCIR
- IL2M
How To Use FACIL
Using FACIL is straightforward. Here’s a step-by-step guide:
- Clone the GitHub repository:
git clone https://github.com/mmasana/FACIL.git
cd FACIL
- Using a requirements file:
python3 -m pip install -r requirements.txt
conda env create --file environment.yml --name FACIL
Note: Remember to set the appropriate version of your CUDA driver in environment.yml.
conda activate FACIL
python3 -u src/main_incremental.py
More options can be explored in the src
directory, which includes GridSearch usage, loggers, datasets, and networks.
Scripts Available
FACIL provides scripts to reproduce specific scenarios proposed in the research. For instance, experiments with:
- CIFAR-100 (10 tasks) with ResNet-32 without exemplars
- CIFAR-100 (10 tasks) with ResNet-32 with fixed and growing memory
- More scenarios are coming soon!
All scripts run 10 times to calculate the mean and standard deviation of results, which you can find in the scripts
folder.
License
Please check the MIT license included in the repository for more details.
Troubleshooting Ideas
If you face issues while setting up or using FACIL, consider the following steps:
- Ensure all dependencies are accurately installed based on the
requirements.txt
orenvironment.yml
. - Verify your environment is activated correctly before running the scripts.
- Consult GitHub issues and documentation for similar experiences and solutions.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.