lczerolens.lenses#
Lenses module.
Submodules#
Classes#
Class for activation-based XAI methods. |
|
Composite lens for XAI. |
|
Class for gradient-based XAI methods. |
|
Class for wrapping the LCZero models. |
|
Class for activation-based XAI methods. |
|
Class for probing-based XAI methods. |
Package Contents#
- class lczerolens.lenses.ActivationLens(pattern=None)[source]#
Bases:
lczerolens.lens.LensClass for activation-based XAI methods.
Examples
model = LczeroModel.from_path(model_path) lens = ActivationLens() board = LczeroBoard() results = lens.analyse(board, model=model)
- Parameters:
pattern (Optional[str])
- _intervene(model, **kwargs)[source]#
Intervene on the model.
- Parameters:
model (LczeroModel) – The NNsight model.
- Returns:
The intervention results.
- Return type:
dict
- class lczerolens.lenses.CompositeLens(lenses, merge_results=True)[source]#
Bases:
lczerolens.lens.LensComposite lens for XAI.
Examples
model = LczeroModel.from_path(model_path) lens = CompositeLens([ActivationLens(), GradientLens()]) board = LczeroBoard() results = lens.analyse(board, model=model)
- Parameters:
lenses (Union[List[lczerolens.lens.Lens], Dict[str, lczerolens.lens.Lens]])
merge_results (bool)
- _lens_map#
- merge_results = True#
- is_compatible(model)[source]#
Returns whether the lens is compatible with the model.
- Parameters:
model (LczeroModel) – The NNsight model.
- Returns:
Whether the lens is compatible with the model.
- Return type:
bool
- prepare(model, **kwargs)[source]#
Prepare the model for the lens.
- Parameters:
model (LczeroModel) – The NNsight model.
- Returns:
The prepared model.
- Return type:
- _intervene(model, **kwargs)[source]#
Intervene on the model.
- Parameters:
model (LczeroModel) – The NNsight model.
- Returns:
The intervention results.
- Return type:
dict
- class lczerolens.lenses.GradientLens(*, input_requires_grad=True, **kwargs)[source]#
Bases:
lczerolens.lens.LensClass for gradient-based XAI methods.
- Parameters:
input_requires_grad (bool)
- input_requires_grad = True#
- _intervene(model, **kwargs)[source]#
Intervene on the model.
- Parameters:
model (LczeroModel) – The NNsight model.
- Returns:
The intervention results.
- Return type:
dict
- class lczerolens.lenses.LrpLens(pattern=None)[source]#
Bases:
lczerolens.lens.LensClass for wrapping the LCZero models.
- Parameters:
pattern (Optional[str])
- _intervene(model, **kwargs)[source]#
Intervene on the model.
- Parameters:
model (LczeroModel) – The NNsight model.
- Returns:
The intervention results.
- Return type:
dict
- class lczerolens.lenses.PatchingLens(patch_fn, **kwargs)[source]#
Bases:
lczerolens.lens.LensClass for activation-based XAI methods.
Examples
model = LczeroModel.from_path(model_path) lens = PatchingLens() board = LczeroBoard() patch_fn = lambda n, m, *kwargs: pass results = lens.analyse(board, model=model)
- Parameters:
patch_fn (Callable)
- _patch_fn#
- _intervene(model, **kwargs)[source]#
Intervene on the model.
- Parameters:
model (LczeroModel) – The NNsight model.
- Returns:
The intervention results.
- Return type:
dict
- class lczerolens.lenses.ProbingLens(probe_fn, **kwargs)[source]#
Bases:
lczerolens.lens.LensClass for probing-based XAI methods.
Examples
model = LczeroModel.from_path(model_path) lens = ProbingLens(probe) board = LczeroBoard() results = lens.analyse(board, model=model)
- Parameters:
probe_fn (Callable)
- _probe_fn#
- _intervene(model, **kwargs)[source]#
Intervene on the model.
- Parameters:
model (LczeroModel) – The NNsight model.
- Returns:
The intervention results.
- Return type:
dict