A minimal implementation of the SHAP algorithm using the KernelSHAP method. In less then 100 lines of code, this repo serves as an educational resource to understand how SHAP works without all the complexities of a production-level package.
pip install tinyshap
from tinyshap import SHAPExplainer
# Train model
model = GradientBoostingRegressor()
model.fit(X_train, y_train)
# Explain predictions
explainer = SHAPExplainer(model.predict, X=X_train.mean().to_frame().T)
contributions = explainer.shap_values(X)
See complete notebook
MIT