New metrics, extended DDP support and bug fixes
PyTorch-Ignite 0.4.5 - Release Notes
New Features
Metrics
- Added BLEU metric (#1834)
- Added ROUGE metric (#1772)
- Added MultiLabelConfusionMatrix metric (#1613)
- Added Cohen Kappa metric (#1690)
- Extended
sync_all_reduce
API (#1823) - Made
EpochMetric
more generic by extending the list of valid types (#1748) - Fixed issue with metric's output device (#2062)
- Added support for list of tensors as metric input (#2055)
- Implemented Jaccard Index shortcut for metrics (#1682)
- Updated Loss metric to use
required_output_keys
(#2027) - Added classification report metric (#1887)
- Added output detach for Canberra metric (#1820)
- Improved ROC AUC (#1762)
- Improved AveragePrecision metric and tests (#1756)
- Uniformly handling of metric types for all loggers (#2021)
- More DDP support for multiple contrib metrics (#1891, #1869, #1865, #1850, #1830, #1829, #1806, #1805, #1803)
Engine
- Added native
torch.cuda.amp
andapex
automatic mixed precision forcreate_supervised_trainer
andcreate_supervised_evaluator
(#1714, #1589) - Updated
state.batch/state.output
lifespan in Engine (#1919)
Distributed module
- Handled IterableDataset with
auto_dataloader
(#2028) - Updated Loss metric to use
required_output_keys
(#2027) - Enabled gpu support for gloo backend (#2016)
- Added
safe_mode
foridist
broadcast (#1839) - Improved
idist
to support differentinit_methods
(#1767)
Other improvements
- Added LR finder improvements, moved to core (#2045, #1998, #1996, #1987, #1981, #1961, #1951, #1930)
- Moved param handler to core (#1988)
- Added an option to store
EpochOutputStore
data onengine.state
, moved to core (#1982, #1974) - Set seed for xla in
ignite.utils.manual_seed
(#1970) - Fixed case for Precision/Recall in
multi_label
, not averaged configuration for DDP (#1646) - Updated
PolyaxonLogger
to handle v1 and v0 (#1625) - Added Arguments
*args
,**kwargs
toBaseLogger.attach method
(#2034) - Enabled metric ordering on
ProgressBar
(#1937) - Updated wandb logger (#1896)
- Fixed type hint for
ProgressBar
(#2079)
Bug fixes
- BC-breaking: Improved loggers to keep configuration (#1945)
- Fixed warnings in CI (#2023)
- Fixed Precision for all zero predictions (#2017)
- Renamed the default logger (#2006)
- Fixed Accumulation metric with Nvidia/Apex (#1978)
- Updated code to raise an error if SLURM is used with torch dist launcher (#1976)
- Updated
nltk-smooth2
for BLEU metric (#1911) - Added full read permissions to saved file (1876) (#1880)
- Fixed a bug with horovod
_do_manual_all_reduce
(#1848) - Fixed small bug in "Finetuning EfficientNet-B0 on CIFAR100" tutorial (#2073)
- Fixed f-string in
mnist_save_resume_engine.py
example (#2077) - Fixed an issue when rng states accidentaly on cuda for
DeterministicEngine
(#2081)
Housekeeping
A lot of PRs
- Test improvements (#2061, #2057, #2047, #1962, #1957, #1946, #1943, #1928, #1927, #1915, #1914, #1908, #1906, #1905, #1903, #1902, #1899, #1899, #1882, #1870, #1866, #1860, #1846, #1832, #1828, #1821, #1816, #1815, #1814, #1812, #1811, #1809, #1808, #1807, #1804, #1802, #1801, #1799, #1798, #1797, #1796, #1795, #1793, #1791, #1785, #1784, #1783, #1781, #1776, #1774, #1769, #1768, #1760, #1755, #1746, #1741, #1718, #1717, #1713, #1631)
- Documentation improvements and updates (#2058, #2024, #2005, #2003, #2001, #1993, #1990, #1933, #1893, #1849, #1780, #1770, #1727, #1726, #1722, #1686, #1685, #1672, #1671, #1661)
- Example improvements (#1924, #1918, #1890, #1827, #1771, #1669, #1658, #1656, #1652, #1642, #1633, #1632)
- CI updates (#2075, #2070, #2069, #2068, #2067, #2064, #2044, #2039, #2037, #2023, #1985, #1979, #1940, #1907, #1892, #1888, #1878, #1877, #1873, #1867, #1861, #1847, #1841, #1838, #1837, #1835, #1831, #1818, #1773, #1764, #1761, #1759, #1752, #1745, #1743, #1742, #1739, #1738, #1736, #1724, #1706, #1705, #1667, #1664, #1647)
- Code style improvements (#2050, #2014, #1817, #1749, #1747, #1740, #1734, #1732, #1731, #1707, #1703)
- Added docker image test script (#1733)
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):
@01-vyom, @Devanshu24, @Juddd, @KickItLikeShika, @Moh-Yakoub, @Muktan, @OBITORASU, @Priyansi, @afzal442, @ahmedo42, @aksg87, @aniezurawski, @cozek, @devrimcavusoglu, @fco-dv, @gucifer, @log-layer, @mouradmourafiq, @radekosmulski, @sahilg06, @sdesrozis, @sparkingdark, @thomasjpfan, @touqir14, @trsvchn, @vfdev-5, @ydcjeff