Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementation of Anomaly Detection with VGG-16 model #1

Open
Danelrf opened this issue May 13, 2022 · 1 comment
Open

Implementation of Anomaly Detection with VGG-16 model #1

Danelrf opened this issue May 13, 2022 · 1 comment

Comments

@Danelrf
Copy link

Danelrf commented May 13, 2022

Hello and thank you for the great research!

I was wondering if it is possible to find an implementation of the anomaly detection KDE explanation used in the paper

"Explaining the Predictions of Unsupervised Learning Models" from the book "xxAI - Beyond Explainable AI"

There it is exemplified as identifying an anomalous slit within a picture of wood, trained with the VGG16 network.

In any case, thank you as well for the K-Means demo.

@jacobkauffmann
Copy link
Owner

jacobkauffmann commented Jun 30, 2022

Hi @Danelrf

The easiest way to get these results is to use d(a, uk) = a @ (a - uk).detach() - (uk @ (a - uk)).detach() as a distance function, and then use the gradient of $o(a)$ w.r.t. a. This gives you the relevance in VGG16 feature space.
You can then use zennit to propagate relevance through VGG16.

We are also working on implementing more elements in zennit directly (such as distance, LogMeanExp, and so on). I will come back at you, then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants