Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding Time Series Lime Explainer #179

Merged
merged 11 commits into from
Jun 20, 2023
Merged

Conversation

gganapavarapu
Copy link
Contributor

This PR is to add Time Series Lime (TSLime) Explainer algorithm for forecasting, time series classification and regression use cases.

Short description of the algorithm is: Advanced time series models are complex and often hard to interpret. Time Series Local Interpretable Model-agnostic Explainer (TSLime) is a model-agnostic local time series explainer. It explains a time series model behavior using an approximate linear model as surrogate. TSLime approximates model response by evaluating the model over time series samples generated by applying time series perturbation techniques. The explanation produced by TSLime is the weights of the linear model over different time point observations. The relative signed value of the explanation is indicative of model sensitivity at temporal resolution. TSLime uses the recent time context length for the local surrogate model fitting.

Required Dependencies:

  • numpy

  • pandas <= 1.4.3

  • scikit-learn

  • scipy

  • algorithm folder is added here

  • example notebooks are added here

  • updated the examples readme here with univariate time series classification and multivariate forecasting notebook details.

  • This explainer's dependencies are subset of TSICE. So, included it in TSICE job here.

Signed-off-by: Giridhar Ganapavarapu <[email protected]>
Signed-off-by: Giridhar Ganapavarapu <[email protected]>
Signed-off-by: Giridhar Ganapavarapu <[email protected]>
Signed-off-by: Giridhar Ganapavarapu <[email protected]>
Signed-off-by: Giridhar Ganapavarapu <[email protected]>
@gganapavarapu
Copy link
Contributor Author

rbm units were failing with latest numpy (1.25.x). Fixed the version to 1.24.x for rbm algorithm. The issue was not from current TSLime algorithm changes.

Signed-off-by: Giridhar Ganapavarapu <[email protected]>
Signed-off-by: Giridhar Ganapavarapu <[email protected]>
Signed-off-by: Giridhar Ganapavarapu <[email protected]>
@vijay-arya vijay-arya merged commit 4f14691 into Trusted-AI:master Jun 20, 2023
27 of 30 checks passed
@vijay-arya
Copy link
Collaborator

Thanks @gganapavarapu

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants