xai_compare.abstract.comparison
Classes
|
Base class for model comparison that handles various explainer analyses. |
- class xai_compare.abstract.comparison.Comparison(model, data: DataFrame, target: DataFrame | Series | ndarray, mode: str = 'regression', random_state: int = 42, verbose: bool = True, default_explainers: List[str] = ['shap', 'lime', 'permutations'], custom_explainer: Type[Explainer] | List[Type[Explainer]] | None = None)
Base class for model comparison that handles various explainer analyses.
This abstract class provides a framework for comparing explanation methods to assess feature importance and explainer consistency.
- Attributes:
- model (Model):
The input machine learning model.
- data (pd.DataFrame):
The feature dataset used for model training and explanation.
- target (Union[pd.DataFrame, pd.Series, np.ndarray]):
The target variables associated with the data.
- mode (str, default ‘REGRESSION’):
The mode of operation from config.py.
- random_state (int, default 42):
Seed used by the random number generator for reproducibility.
- verbose (bool, default True):
Enables verbose output during operations.
- default_explainers (List[str], default EXPLAINERS):
List of default explainers from config.py.
- custom_explainer (Union[Type[Explainer], List[Type[Explainer]], None], optional):
Custom explainer classes to be added to the default explainers.
- Methods:
- apply():
Abstract method to generate a comparison report based on the explainer outputs.
- display():
Abstract method to plot and display the result from the comparison analysis.
- create_list_explainers(custom_explainer: Type[Explainer] | List[Type[Explainer]] | None) List[Explainer]
Creates a list of explainer classes from default and custom explainers.
- Attributes:
- custom_explainer (Union[Type[Explainer], List[Type[Explainer]], None]):
Custom explainer or a list of custom explainer classes.
- Returns:
- List[Explainer]:
A list of initialized explainer classes.