New Features
Engine and Events
- Added `before` and `after` events filters (2727)
- Can mix `every` and `before`/`after` event filters (2860)
- `once` event filter can accept a sequence of int (2858)
python
"once" event filter
engine.on(Events.ITERATION_STARTED(once=[50, 60]))
def call_once(engine):
do something on 50th and 60th iterations
"before" and "after" event filter
engine.on(Events.EPOCH_STARTED(after=10, before=30))
def call_after_and_before(engine):
do something in 11 to 29 epoch
Mixing "every" and "before" / "after" event filters
engine.on(Events.EPOCH_STARTED(every=5, after=8, before=25))
def call_after_and_before_every(engine):
do something on 9, 14, 19, 24 epochs
- Improved deterministic engine (2756)
- Grad accumulation should not effect value of loss (2737)
- Added `model_transform` in `create supervised trainer` (2848)
Distributed module
- Updated `idist.all_gather` to take `group` arg (2715)
- Updated `idist.all_reduce` to take `group` arg (2712)
- Added `idist.new_group` method (2711)
Metrics and handlers
- Updated `LRFinder` to have more than one parameter (2704)
- Added `get_param` method to `ParamGroupScheduler` (2720)
- Updated Polyaxon_logger (2776)
- Dropped `TrainsLoger` and `TrainsSaver` also removed the BC code (2742)
- Refactored PSNR and SSIM (2797)
- **[BC-breaking]** Aligned SSIM output with PSNR output, both give tensors (2794)
- Added distributed support to `RocCurve` (2802)
- Refactored `EpochMetric` and made it idempotent (2800)
Bug fixes
- Fixed device issue with metric tests SSIM, updated PSNR (2796)
- Fixed `LRScheduler` issue and fixed CI (2780)
- Fixed the code and now raise `ModuleNotFoundError` instead of `RuntimeError` (2750)
- Fixed `sync_all_reduce` to cover update->compute->update case (2803)
Housekeeping (docs, CI, examples, tests, etc)
- 2875, 2872, 2871, 2869, 2868, 2867, 2866, 2864, 2863, 2854, 2852, 2840, 2849, 2844, 2839, 2838, 2835, 2826, 2822, 2820, 2807, 2805, 2795, 2788, 2787, 2798, 2793, 2790, 2786, 2778, 2777, 2765, 2760, 2759, 2757, 2751, 2750, 2748, 2741, 2739, 2736, 2730, 2729, 2726, 2724, 2722, 2721, 2719, 2718, 2717, 2706, 2705, 2701, 2432
- Drop python 3.7 from CI (2836)
Acknowledgments
π Thanks to our community and all our contributors for the issues, PRs and π βοΈ π !
π― We really appreciate your implication into the project (in alphabetical order):
DeepC004, JakubDz2208, Moh-Yakoub, RishiKumarRay, abhi-glitchhg, crj1998, guptaaryan16, louis-she, pacificdragon, puhuk, sadra-barikbin, sallycaoyu, soma2000-lang, theory-in-progress, vfdev-5, ydcjeff
New Contributors
* JakubDz2208 made their first contribution in https://github.com/pytorch/ignite/pull/2704
* soma2000-lang made their first contribution in https://github.com/pytorch/ignite/pull/2742
* guptaaryan16 made their first contribution in https://github.com/pytorch/ignite/pull/2786
* RishiKumarRay made their first contribution in https://github.com/pytorch/ignite/pull/2790
* crj1998 made their first contribution in https://github.com/pytorch/ignite/pull/2794
* abhi-glitchhg made their first contribution in https://github.com/pytorch/ignite/pull/2835
* sallycaoyu made their first contribution in https://github.com/pytorch/ignite/pull/2849
* DeepC004 made their first contribution in https://github.com/pytorch/ignite/pull/2858
* pacificdragon made their first contribution in https://github.com/pytorch/ignite/pull/2863