MART v0.5.0
What's Changed
Improve Adversary
using LightningModule
and Trainer
from Lightning
- Configuring optimization hyper-params in Perturber by @mzweilin in #91
- Remove
NoAdversary
by @dxoigmn in #102 - Decorate initializers
__call__
withtorch.no_grad
instead of usingtensor.data
by @dxoigmn in #107 - Decorate projectors
__call__
withtorch.no_grad
instead of usingtensor.data
by @dxoigmn in #108 - Enforcing threat models by @mzweilin in #92
- Make IterativeGenerator a Trainer by @dxoigmn in #113
- Remove BatchComposer in favor of batch-aware Composer by @dxoigmn in #121
- Remove BatchEnforcer in favor of batch-aware Enforcer by @dxoigmn in #122
- Make Enforcer modality-aware by @mzweilin in #124
- Add
MaskAdditive
composer. by @mzweilin in #129 - Make Projector batch aware by @dxoigmn in #120
- Update GradientModifier to be an in-place operation by @dxoigmn in #123
- Replace tuple with Iterable[torch.Tensor] by @dxoigmn in #134
- Better Perturber by @dxoigmn in #146
- Better Optimizer by @dxoigmn in #147
- Adversary as
pl.LightningModule
by @dxoigmn in #103 - Improve Adversary's progress bar by @mzweilin in #161
- Move load_state_dict into LitModular by @dxoigmn in #145
- Allow
LitModular
to load from checkpoints with states ofAdversary
by @mzweilin in #160 - Add gradient monitor callback by @dxoigmn in #144
- Add Image initializer by @dxoigmn in #142
- Make the Adversary Trainer accept loggers. by @mzweilin in #164
- Hide parameters of
Adversary
'sPerturber
from DDP by @mzweilin in #166
Improve LitModular
and mart.nn
- Allow modules to skip CallWith by @dxoigmn in #106
- Allow
LitModular.*_step_log
to be a dictionary by @dxoigmn in #168 - Let loss/preds/target output keys be configurable in
LitModular
by @dxoigmn in #169 - Remove
*_step_end
fromLitModular
by @dxoigmn in #170 - Make
SequentialDict
return outputs from all modules asDotDict
by @dxoigmn in #171 - Don't lookup non-str keys in
SequentialDict
by @dxoigmn in #174 - Enable overriding of special args in
SequentialDict.forward
by @dxoigmn in #175 - Add
_train_mode_
and_inference_mode_
special args toSequentialDict
by @dxoigmn in #176 - Add
_call_
special arg toSequentialDict
by @dxoigmn in #184 - Allow
LitModular
'sload_state_dict
to accept a str by @dxoigmn in #189
Update dependency
Improve performance
Move non-essential functionalities to examples
- Fix the autoattack wrapper by @mzweilin in #80
- Remove test on RobustBench. by @mzweilin in #179
- Purge tests on RobustBench by @mzweilin in #181
- Move RobustBench and Carla stuff from
mart
toexamples
by @mzweilin in #183 - Move ART to extras by @dxoigmn in #186
- Move ART Wrapper to examples by @mzweilin in #195
Improve datamodule
- Make input a dictionary for multi-modal object detection by @mzweilin in #95
- Quantize datamodule input by @mzweilin in #112
Miscellaneous
- Fix source header license by @mzweilin in #99
- Fix source header license in tests by @mzweilin in #100
Full Changelog: v0.4.1...v0.5.0