pulsatrix
Loading...
Searching...
No Matches
lrp_rule_config.hpp File Reference

Selects which LRP rule variant a Module::propagate_relevance() call uses. More...

#include <string>
Include dependency graph for lrp_rule_config.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  pulsatrix::LRPRuleConfig
 Configuration for LRP relevance propagation: which rule a module applies and its hyperparameters. A module that does not implement the requested rule throws (see Module::supports_lrp_rule()) – the rule is never silently substituted. More...
 

Namespaces

namespace  pulsatrix
 

Enumerations

enum class  pulsatrix::LRPRule { pulsatrix::Epsilon , pulsatrix::Gamma , pulsatrix::AlphaBeta , pulsatrix::ZBox }
 The LRP rule family a module applies. Semantics follow Zennit 1.0.0 exactly (Anders et al. 2021); every rule other than Epsilon is defined only for affine layers (LinearModule, Conv2DModule) – see Module::supports_lrp_rule(). More...
 

Functions

std::string pulsatrix::lrp_rule_name (LRPRule rule)
 Lower-case rule name ("epsilon", "gamma", "alpha_beta", "zbox") for messages/metadata.
 

Detailed Description

Selects which LRP rule variant a Module::propagate_relevance() call uses.

See also
Module::propagate_relevance(), and the per-layer LRP rule implementations in Deep Learning Modules and Layers (e.g. LinearModule, Conv2DModule, TransformerBlock) – LRP rules live alongside each layer's forward/backward math, not in a separate file.