Skip to content
Back to skills

Time Series

ASecurity

"Use AIX360 TSICE, TSLime, and TSSaliency for local numeric

  • 247 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 8, 2026
datarailsapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill time-series --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Time Series?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Time Series
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-time-series/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-time-series)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: time-series
description: "Use AIX360 TSICE, TSLime, and TSSaliency for local numeric
  explanations of univariate or multivariate time-series models, including
  temporal perturbations, relevant history, exogenous inputs, and
  integrated-gradient saliency."
disable-model-invocation: true
metadata:
  disco-role: operating
license: Apache 2.0
---

# Time-Series Local Explanations

Use this sub-skill for AIX360 0.3.0 local explanations over an ordered history
window. It covers:

- **TSLime**: perturb the history, fit a local linear surrogate, and return
  time/feature weights.
- **TSSaliency**: estimate temporal and variate contributions along a path from
  a base signal using a model-agnostic Monte Carlo gradient.
- **TSICE**: perturb a selected time window and relate derived time-series
  features to changes in a multi-step forecast.
- `tsFrame`, `to_np_array`, model wrappers, perturbation engines, and numeric
  interpretation. Plotting is optional and is not part of the explanation
  contract.

## Route here when

Choose this skill when the request mentions TSICE, TSLime, TSSaliency, temporal
saliency, integrated gradients, relevant history, perturbation windows,
exogenous time-series variables, or time-series attribution. Read the
[API reference](references/api-reference.md),
[data-format contract](references/data-formats.md), and the relevant section of
[workflows](references/workflows.md) before running an explainer.

## Route elsewhere

- Generic tabular, text, or image LIME/SHAP: use
  [local-black-box](../local-black-box/SKILL.md).
- Dataset download or packaging: use
  [datasets-and-metrics](../datasets-and-metrics/SKILL.md). For offline
  explanation tests, construct an in-memory fixture instead.
- CEM, certification, or recourse: use
  [counterfactual-and-certification](../counterfactual-and-certification/SKILL.md).

## Operating contract

1. **Normalize first.** Represent a window as a pandas `DataFrame` with one row
   per time step, one numeric column per variate, and a `DatetimeIndex` (a
   `tsFrame`). A NumPy input must be two-dimensional `(time, features)` before
   conversion. Preserve column order and use the same order for
   `feature_names` and model reshaping.
2. **Fix the axes.** Record `input_length=T`, feature count `F`, and, for TSICE,
   `forecast_lookahead=H`, `n_variables=F_out`, and the exogenous count. TSLime
   accepts at least `T` rows and uses the last `T`; TSSaliency requires exactly
   `T`; TSICE accepts at least `T` and uses the last `T`.
3. **Adapt the callable.** Prefer a callable that handles batch arrays and
   returns one numeric target per sample. TSLime and TSSaliency are single-
   output explainers; aggregate a multi-output model before calling them.
   TSICE instead expects each call to return `(H, n_variables)` (or a length-H
   vector for one output). See [data formats](references/data-formats.md).
4. **Select perturbations deliberately.** Start with one small
   `block-bootstrap` engine. Add frequency, moving-average, shift, or impute
   engines only when their data assumptions fit the domain. Set a seed and use
   a small perturbation count for a smoke test; perturbation count multiplies
   model calls.
5. **Run numeric explanation before plotting.** Inspect keys and shapes, compare
   the instance and base predictions, and check that weights/saliency are
   aligned to the intended window. A plot is a presentation layer, not a
   verification gate. Plotting failures must not invalidate numeric output.
6. **Keep experiments offline by default.** Do not invoke `SunspotDataset`,
   `FordDataset`, or `ClimateDataset` merely to demonstrate the explainers:
   their constructors can download data. Use a deterministic tiny NumPy fixture
   and a local callable; see [workflows](references/workflows.md).

## Choose the explainer

| Need | Use | Main numeric result |
|---|---|---|
| Local sensitivity over recent time/feature cells | `TSLimeExplainer` | `history_weights` with shape `(relevant_history, F)` |
| Temporal/variate attribution relative to a base signal | `TSSaliencyExplainer` | `saliency` with shape `(T, F)` |
| Forecast response to structured changes in a time window | `TSICEExplainer` | perturbation responses, feature statistics, and forecast deltas |

For exact constructors, return shapes, perturbation configuration, and wrapper
behavior, use [api-reference.md](references/api-reference.md). For failures,
use [troubleshooting.md](references/troubleshooting.md) rather than silently
reshaping an input or output.

## Interpretation guardrails

- A positive TSLime weight means the local surrogate associates increasing that
  cell with increasing the selected scalar model response; it is local and
  perturbation-distribution dependent, not a causal effect.
- A positive TSSaliency value is a positive contribution under the chosen base
  signal and approximate path integral. Magnitude is comparable across cells
  only after considering feature scales and the same base/configuration.
- TSICE `signed_impact` is the average forecast change for one perturbation and
  `total_impact` is a non-negative average RMS change. The output is a sampled
  response cloud indexed by derived statistics, not a guaranteed per-feature
  coefficient.
- For multi-step or multi-variable forecasts, always state whether a summary
  averages horizons/variables. A scalar summary can hide cancellation.

Do not use these explainers as certification, recourse, or counterfactual
proof. Do not claim that a heatmap is an attribution result unless its numeric
source and axes have been checked.

Files in this skill

  • SKILL.md5.5 KB
  • references/api-reference.md9.7 KB
  • references/data-formats.md6.5 KB
  • references/troubleshooting.md7.4 KB
  • references/workflows.md8.4 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.