Skip to content

Conversation

@maniq227
Copy link

Title: IncDet‑EWC: add Huber EWC + Pseudo‑Annotation, tests, examples, and how‑to docs

Summary

  • Introduces HuberEWCPlugin and PseudoAnnotationPlugin for classification CL.
  • Adds unit + integration tests, runnable examples, and a GitBook how‑to guide.

Changes

  • Code: avalanche/training/plugins/incdet_ewc.py, avalanche/training/plugins/pseudo_annotation.py
  • Exports: avalanche/training/plugins/__init__.py
  • Tests: tests/plugins/test_incdet_ewc_plugin.py, tests/plugins/test_pseudo_annotation_plugin.py, tests/strategies/test_incdet_ewc_integration.py
  • Examples: examples/incdet_ewc_cifar.py, examples/incdet_ewc_splitmnist.py, run_incdet_ewc.py
  • Docs (GitBook): docs/gitbook/how-tos/incdet_ewc.md + link in docs/gitbook/SUMMARY.md

Motivation

  • Huber variant of EWC improves stability at larger regularization strengths.
  • Minimal pseudo‑annotation augments current experience with confident predictions on previously seen classes.
  • Adds a short, task‑oriented guide to complement API docs.

How to run

# SplitMNIST quickstart
python run_incdet_ewc.py --device auto --train_mb_size 64 --eval_mb_size 64 \
  --train_epochs 1 --lr 0.01 --momentum 0.9 --ewc_lambda 1000.0 --beta 0.5 \
  --confidence_thresh 0.95 --n_experiences 2 --seed 42

# CIFAR
python examples/incdet_ewc_cifar.py --benchmark cifar10 --use_huber 1 --train_mb_size 128 --train_epochs 2

Notes

  • Sphinx API doc already lists the plugins; this PR adds a GitBook how‑to (quickstart + minimal API snippet).
  • No breaking changes; plugins are opt‑in via plugins=[...].

Checklist

  • CI green
  • Docs build
  • Examples run
  • Review feedback addressed

@maniq227 maniq227 marked this pull request as ready for review September 16, 2025 11:25
@maniq227 maniq227 changed the title IncDet‑EWC how‑to (Huber EWC + Pseudo‑Annotation) IncDet‑EWC (Huber EWC + Pseudo‑Annotation) Sep 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant