IsoMax#

class scio.scores.IsoMax(*, act_norm=None, mode='raw', entropic_scale=10.0, dist_norm=2.0, lr=0.1, n_steps=1000)[source]#

Bases: BaseScoreClassif

Isomax for classification.

The authors propose to train networks with modified logits, learning “prototypes”. Since retraining is not allowed in our setup, we propose to simply optimize the so-called “prototypes” a posteriori for the given pretrained network, minimizing the associated proposed function. We then use the same scoring function.

Parameters:
  • entropic_scale (float) – Scaling factor for the entropy computation. Defaults to 10.

  • dist_norm (float) – Order of the vector norm used in the prototypes space. Defaults to 2.0.

  • lr (float) – Learning rate for prototypes optimization, passed to torch.optim.Adam. Defaults to 0.1.

  • n_steps (int) – Number of learning steps for prototypes optimization for torch.optim.Adam. Defaults to 1000.

  • mode – See BaseScoreClassif.

  • act_norm – See BaseScore.

References

[MRZ+22]

David Macêdo, Tsang Ing Ren, Cleber Zanchettin, Adriano L. I. Oliveira, and Teresa Ludermir. Entropic Out-of-Distribution detection: seamless detection of unknown examples. IEEE Transactions on Neural Networks and Learning Systems, 33(6):2350–2364, 2022. doi:10.1109/TNNLS.2021.3112897.

Hint

Below this point, the documentation is meant for development purposes only. Manual use of any listed member is highly discouraged. For usage, see Inferring with Confidence.

Useful methods defined here

modified_logits(logits)

Negative \(L^p\) distance to prototype, with scale.

modified_logits(logits)[source]#

Negative \(L^p\) distance to prototype, with scale.