KumoAnomaly#
Release Date |
Parameter Count |
Code License |
Weights License |
|---|---|---|---|
2026-06-29 |
2.44M |
- class sdm.models.KumoAnomaly(pretrained: bool = True, device: device | str | None = None)#
Bases:
ModelThe time series anomaly detection foundation model from the “NV-Tesseract-AD: Curriculum-Enhanced Conditional Diffusion for Multivariate Time-Series Anomaly Detection” paper.
KumoAnomalyreconstructs multivariate time series with conditional diffusion and uses reconstruction errors to score anomalies. It combines sinusoidal time embeddings and learned feature embeddings with diffusion-step and masking-strategy embeddings. Its denoiser alternates attention over time and features with gated residuals and aggregated skip connections that predict noise at each time step and feature.At inference, two complementary masks hide alternating temporal blocks. Reverse diffusion reconstructs each hidden block from the visible context, and the sample median combines repeated reconstructions. Mean absolute reconstruction error across features gives a score per time step; larger scores indicate less accurately reconstructed observations.
- Parameters:
pretrained (bool) – Whether to load the pretrained checkpoint.
device (torch.device | str | None) – The device.
- forward(x: Tensor | TableTensor, *, recipe: Recipe | None = None, num_samples: int = 30, num_steps: int = 20, callbacks: Sequence[Callback] | None = None, generator: Generator | None = None) TableTensor#
The forward pass.
- Parameters:
x (Tensor | TableTensor) – The feature tensor with shape
[..., R, D]withRrows andDcolumns.recipe (Recipe | None) – The custom recipe for pre- and post-processing.
num_samples (int) – The number of reconstruction samples per complementary masking strategy. Reconstructions are combined using the sample median.
num_steps (int) – The number of denoiser evaluations per sample and masking strategy.
callbacks (Sequence[Callback] | None) – Callbacks applied in sequence to this model call.
generator (Generator | None) – Pseudorandom number generator used for sampling during pre-processing and model execution.
- Returns:
A table with shape
[..., R, 3]containing numericalmaereconstruction scores and categorical booleanscsandmacsanomaly labels at each time step. SCS (Segmented Confidence Sequences) segments the preprocessed series and thresholds scores using expanding bounds within each segment. MACS (Multi-Scale Adaptive Confidence Segments) uses variance-weighted expanding score bounds.- Return type:
Capabilities#
Supported Input Semantic Types |
|
Model Details#
Output |
Reconstruction scores named |
Missing Values |
Mean imputation in the default recipe |
Pretraining Scope |
Up to 40 columns |
Default Recipe#
Recipe(
features=StypeDispatch(
numerical=Sequential(
ImputeMean(),
PCA(num_components=40),
MinMaxScale(),
),
),
target=Identity(),
output=Identity(),
)