LRP
Attribute
- Forward
- Forward + Backward
_compute_output_and_change_weights
1) Weight_hooks
2) _run_forward
3) reg_pre_hooks
Torch: Layer.reg_forward_hook -- вызывается каждый раз после forward
Просто forward_func
1) register_forward_hooks
2) normalized_relevances = self.gradient_func
3) Relevances
Convergence delta
GradientAttribution
self.gradient_func = compute_gradients
from captum._utils.gradient import compute_gradients
return grads = torch.autograd.grad(torch.unbind(outputs), inputs)
Methods for interpreting and understanding deep neural networks
Taylor Decomposition: дккомпозиция значения функции f(x) в relevance scores
Relevance scores: идентификация terms taylor expansion в root point
Taylor expansion
First order -- только одна производная
3Blue1Brown: 1. Только для approximation 2. Non-polinomial function в polinomial (с polinomial легче работать)
- Должна быть равна в точке, но лучше если такой же slope (производная)
- Negative second derivative
- More control = more terms
- Quadratic approx может быть лучшим cubic approx
- Факториал из-за power rule
8, Разложение в 0 всегда контролируется одним коэффициентом (0 -- потому что полином)
- (x-п) -- потому что нужно сдвинуть к 0 (П будет работать как 0) (nice cancellation)
- Смысл: 1. Берем информацию о производных в точке 2. Получаем информацию о функции в окрестности точки
Всего 1 input но много функций
Лучше: делить на факториал отдельно
Relevance: коэффициенты в Taylor
Но тогда relevance производных а не точек? (степени одной точки)
Root Point: чтобы f(x)=0
Другое понимание: root point f(x) = 0, поэтому информация позитивного класса убрана из input
Не учитываются higher order terms: не очень точно
Если ReLU и нет bias -- то точно (всегда можно найти root point около origin)
click to edit
Relevance: sensitivity * saliency
That is, an input feature is relevant if it is both present in the data, and if the model positively reacts to it, as illustrated
Декомпозиция в единичные производные для каждой точки
the decomposition can be coarsened by pooling relevance scores over groups of features I
Lapuschkin: coarse: насколько влияет объект vs контекст
Все еще нужно понять, что Taylor (как описан в статье) дает правильные attribution
Large amount of negative relevance
Root point может быть слишком далеко?
Backward propagation
Можно фильтровать ненужные нейроны
Multitask learning: специальные нейроны для каждых тасков
🔥 Возможный эксперимент: 1. Тренировка на всех данных одной модели с маскингом нейронов. 2. LRP общего и частного
🔥 Entangled multiple components of explanation
LRP
Просто backprop technique
Deep Taylor Decomposition
- Forward pass + collect activations
- Backward через rules
Активация только Positive и monotonically increasing?
LRP ab -- разные ab == разные результаты
a=1: только positive relevance
a=2: появляется negative relevance 5%
a=3: random negative relevance 30%
ajwjk -- а j -- это просто input
Просто итеративный Taylor для каждого слоя
Relu: relevance neuron is linear on its activated domain: поэтому нет 2-й производной?
explanation not of a single input image, but of multiple slightly translated versions of the image.
Нужны комбинации heatmap
uniform application of this rule to the whole neural network produces an explanation that is equivalent to Gradient×Input