4  Revisiting Anchors with a different lens for visualisation

4.1 Introduction

Anchors was introduced by Ribeiro as a method for giving users an idea of where a model’s feature importance metrics would be applicable and usable.

4.2 Defining Anchors

4.3 The need for a reimplementation

The paper itself discusses the implementation theoretically without an in detail discussion of how the implementation would work practically. For example, the paper talks about combining predicates but doesn’t talk on how predicates should be defined.

4.3.1 Software design changes

4.3.2 Visualisation limitations

4.4 Simplifications

4.4.1 Randomness to Deterministic anchor generation

The implementation in the original paper uses a KL-LUCB method and formulates the problem of finding anchors as a pure exploration problem by starting with an empty anchor and adding predicates one by one. And then they try to add more predicates while doing a beam search to find the most optimal set of predicates to create the anchor.

4.4.2 Transparency in results

There are several ambiguities in the paper that leaves the paper difficult to reproduce. Firstly the paper mentions that the anchor \(A\) is constructed by extending the anchor by one additional feature predicate \(\{a_i\}\). It is not clear in the text how the additional feature predicate is constructed, as a predicate consists of a feature, an operation and a constant to compare with. In addition, it is unclear how many candidate rules are considered in each iteration (i.e. the range of \(i\) in \(\{a_i\}\)).

4.5 Comparison

4.5.1 Performance

4.5.2 Software design

4.6 Discussion