IntelLabs / MART

Modular Adversarial Robustness Toolkit
BSD 3-Clause "New" or "Revised" License
16 stars 0 forks source link

Integration with other libraries #167

Open dxoigmn opened 1 year ago

dxoigmn commented 1 year ago

Right now MART does two things:

  1. There is a "outer" training loop that more-or-less executes the standard training loop that takes a model and fits/finds some parameters.
  2. There is an "inner" attack (training) loop that takes the same model and an input (with optional targets) and fits a perturbation to the model-input pair. This perturbation can then be composed with the input.

It would be nice to be able to take the 2nd part (attack generation loop) and use it in other libraries like https://github.com/openvinotoolkit/anomalib.

dxoigmn commented 1 year ago

It would be really interesting to see if one could use Adversary in an lightning Callback. That is, could we fit Adversary in Callback.on_train_batch_start. If we can, then we could make this callback a pip-installable package that would "automatically" enable adversarial training just by pip-installing that package. This is enabled via callback entry points.