Package and environment
- Record the FPDE package version.
- Record the Python version. FPDE requires Python 3.12 or newer.
- Record dependency versions, especially NumPy and scikit-learn.
- State whether FPDE was installed from PyPI or from a local checkout.
- Preserve the commit hash when using a local checkout.
Data and preprocessing
- Identify the dataset and any dataset version or download date.
- Record the train, validation, and test split procedure.
- Record all random seeds used for splitting, model fitting, and sampling.
- Describe feature preprocessing, including scaling, encoding, imputation, and feature selection.
- Confirm that FPDE receives data in the same feature space used by the classifier.
- Record feature names and feature order.
Model
- Name the classifier and implementation library.
- Record model hyperparameters.
- Record the fitted model version or artifact location.
- Confirm that the model exposes
predict_probaandclasses_when usingFPDEEngine, grid search, lambda selection, or perturbation curves. - Report model performance on the evaluation split used for explanations.
FPDE configuration
- Record the FPDE mode: Diff-FPDE, Cos-FPDE, or Hyb-FPDE.
- Record
lambda_hybfor Hyb-FPDE. - Record whether
lambda_hybwas fixed manually or selected withFPDEEngine.select_lambda. - Record the
lambda_hyb_gridused for validation selection. - Record
normalize, usually"l1"or"none". - Record
anchor_strategy, usually"mean","zero", or"none". - Record
epsfor cosine computations. - Record the baseline vector used for deletion and insertion curves.
- Record the validation fractions used by
select_lambdaorperturbation_curves.
Prototype state
- Record how prototypes were built. FPDE currently provides class-mean prototypes.
- Record the training data used to build prototypes.
- Record class labels and label ordering.
- If you use
prepare_fpde_context, preserve the context-generation inputs.
Explanation outputs
- Save raw attribution vectors before visualization normalization.
- Save target and rival labels for each explanation.
- Save evidence values and exactness residuals.
- Save
positive_scoreandnegative_scorewhen comparing contrasts. - Save grid-search rows or validation-selection rows when using automated selection.
Validation and sanity checks
- Run the test suite with
python -m pytest. - Verify that attribution shapes match the number of features.
- Check that attribution values are finite.
- Check that target and rival labels are different for multiclass explanations.
- Inspect deletion and insertion curves for a representative sample.
- Confirm that repeated runs with fixed seeds are deterministic.