Étude comparative · détection d'anomalies en séries temporelles

Le SOTA d'un benchmark généralise-t-il hors de son cadre ?

On reproduit le benchmark de référence le plus récent du domaine (TSB-AD), on y confirme deux modèles publiés au sommet du classement, puis on teste s'ils tiennent leur rang sur un corpus étendu, curé par mécanisme d'anomalie plutôt que par simple label.

1082
séries admises · 49 sources · 18 catégories
455
séries scorées sur les 3 systèmes en comparaison
VUS-PR
métrique retenue par le benchmark de référence

La démarche

① TSB-UAD → TSB-AD. Le premier standard (2022, univarié seul, jugé trop léger) a été remplacé par TSB-AD (NeurIPS 2024), curé, univarié+multivarié, qui établit VUS-PR comme métrique de référence. On y reproduit deux modèles publiés très récents, PaAno et AxonAD, papier + code officiels vérifiés.
② La question de la généralisation. Un score agrégé masque des écarts par mécanisme d'anomalie. Sur un corpus filtré strictement et organisé par catégorie métier, le SOTA du benchmark ne domine plus systématiquement.
③ Ouverture. Deux audits méthodologiques (fuite de split temporel, normalisation transductive) corrigés et outillés cette session, un séquestre scellé pour validation future, et une charte de catégories encore à compléter.

Benchmark 1 · référence académique

TSB-UAD Paparrizos et al., VLDB 2022 → TSB-AD Liu & Paparrizos, NeurIPS 2024

TSB-UAD (2022) : première tentative sérieuse de standardiser l'évaluation en TSAD — 12 686 séries, univariées uniquement. Jugé trop léger par la communauté : univarié seul, métriques contestées, pratiques de benchmarking incohérentes d'un papier à l'autre. TSB-AD (« The Elephant in the Room ») a repris le problème à la racine : 1070 séries méticuleusement curées sur 40 jeux (le double de la plus grande collection précédente), univarié (U) et multivarié (M), split Tuning/Éval strict, et établit VUS-PR comme métrique la plus fiable du domaine.

Points forts (TSB-AD)

  • Curation méticuleuse, perception humaine + interprétation modèle
  • Couverture univarié + multivarié, split Tuning/Éval strict
  • Choix de métrique justifié empiriquement (VUS-PR)

Limites qui motivent notre extension

  • Domaines d'origine mélangés sans conditionnement métier explicite
  • Couverture par mécanisme d'anomalie inégale selon les domaines

Meilleurs modèles publiés du papier

Multivarié (M)VUS-PR publié
CNN0.313
OmniAnomaly0.312
PCA0.310
LSTMAD0.307
USAD0.304
Univarié (U)VUS-PR publié
Sub-PCA0.423
KShapeAD0.401
POLY0.390
MOMENT-ZS0.379
KMeansAD0.366

Validation bit-exacte de notre harnais : Sub-PCA 0.4234=publié, Sub-KNN 0.3501=publié, POLY 0.3899 vs 0.3898 publié (350/350 séries U) ; CNN 0.3171 vs 0.313 publié (M).

Reproduire, puis dépasser — deux modèles récents, papier + code vérifiés

PaAno
Park & Kang, Sungkyunkwan University · ICLR 2026 · arXiv:2602.01359

Patches temporels + CNN 1D + perte triplet/pretext, léger, natif multivarié. 1er sur les 6 métriques du papier en multivarié.

AxonAD
Özer, Ebeling & Enzweiler, Mercedes-Benz AG × Esslingen University · ECML-PKDD 2026 · arXiv:2603.12916

Architecture TCN-Transformer à dynamique de requête prédictible. Modèle externe, non issu de TSB-AD lui-même, ajouté à notre comparatif.

Score global sur TSB-AD-M (169 séries, protocole interne uniforme)

SystèmeVUS-PRVUS-ROC
AxonAD Özer et al., ECML-PKDD 20260.4570.878
PaAno Park & Kang, ICLR 20260.3600.780
Rail spectral nous, analytique0.3820.781

Ancre papier PaAno (protocole officiel intégral, 179 séries Éval) : 0.412 vs 0.426 publié — reproduction quasi exacte. AxonAD dépasse ici les meilleurs modèles publiés de TSB-AD (CNN 0.313) : à interpréter comme un modèle externe plus récent, pas un score officiel du papier.

Benchmark 2 · notre extension

Ce qui change quand on sort du cadre du papier

Filtrage strict : non-trivialité (rejet si un détecteur naïf dépasse déjà VUS-PR 0.90), densité d'anomalie ≤ 30 %, longueur minimale 300 points, rejet des séries à anomalie unique collée en fin de série, priorité au natif. Taxonomie validée statistiquement (test de permutation, p<0.001), charte ≥ 3 sources indépendantes par catégorie.

8 mécanismes, 18 catégories métier

Web
243 séries · 3 sources · charte OK
Aérospatial
197 séries · 5 sources · charte OK
UCR (archive scellée)
94 séries · 1 source
Serveurs / IT Ops
90 séries · 5 sources · charte OK
Médical — cardiaque
83 séries · 3 sources · charte OK
Finance
59 séries · 4 sources · charte OK
Activité (wearables)
53 séries · 4 sources · charte OK
Industriel SCADA
44 séries · 6 sources · charte OK
Médical — neuro (EEG)
43 séries · 3 sources · charte OK
Énergie — bâtiment
42 séries · 2 sources
Eau / environnement
36 séries · 3 sources · charte OK
Éolien / solaire
31 séries · 4 sources · charte OK
Synthétique (contrôle)
24 séries · 3 sources · charte OK
Robotique / drones
24 séries · 1 source
Autre
9 séries · 3 sources · charte OK
Trafic / transport
5 séries · 1 source
Vibration machines
4 séries · 1 source
Énergie
1 série · 1 source

Résultats — AxonAD vs PaAno vs rail spectral, par catégorie

CatégorienAxonADPaAnoSpectralOracle
Aérospatial1700.2600.3290.2890.449
Serveurs / IT Ops610.6300.5220.4950.669
Médical — neuro (EEG)400.4120.2090.4990.556
Industriel SCADA340.3230.0530.0440.324
Médical — cardiaque330.2920.4530.3150.495
Eau / environnement260.6550.5890.6810.752
Activité (wearables)260.2220.3760.1700.410
Robotique / drones220.8010.9940.5580.995
Énergie — bâtiment220.2800.3200.3480.453
Éolien / solaire170.1670.2800.0710.316
Vibration machines40.3490.9270.5860.927
GLOBAL4550.3750.3850.344—

Vert = meilleur de la ligne. Oracle = plafond théorique par sélection parfaite.

Routage vers le meilleur système — à froid vs calibré

Régime
CatégorienAxonADPaAnoSpectralNotre systèmeΔ vs PaAnoOracle
Aérospatial1280.2830.3120.3460.346+0.0340.465
Serveurs / IT Ops610.6300.5220.5040.630+0.1080.674
Industriel SCADA340.3230.0530.0520.323+0.2700.324
Médical — cardiaque330.2920.4530.3160.453+0.0000.496
Activité (wearables)260.2220.3760.1790.376+0.0000.410
Éolien / solaire130.1300.1510.0520.097-0.0540.193
Médical — neuro (EEG)110.2450.1530.4080.408+0.2550.488
Robotique / drones60.8560.9850.5490.985+0.0000.985
Eau / environnement30.4030.4430.4080.307-0.1360.658
GLOBAL—0.3550.348—0.418+0.0700.492

COLD — source jamais vue. Le routage a priori par catégorie ne bat pas de façon fiable le défaut PaAno : le membre optimal est spécifique au dataset, pas prévisible depuis la seule catégorie. Défaut robuste recommandé = PaAno.

CatégorienAxonADPaAnoSpectralNotre systèmeΔ vs PaAnoOracle
Aérospatial1280.2830.3120.3460.397+0.0850.465
Serveurs / IT Ops610.6300.5220.5040.633+0.1110.674
Industriel SCADA340.3230.0530.0520.314+0.2610.324
Médical — cardiaque330.2920.4530.3160.435-0.0180.496
Activité (wearables)260.2220.3760.1790.411+0.0350.410
Éolien / solaire130.1300.1510.0520.097-0.0540.193
Médical — neuro (EEG)110.2450.1530.4080.384+0.2310.488
Robotique / drones60.8560.9850.5490.985+0.0000.985
Eau / environnement30.4030.4430.4080.380-0.0630.658
GLOBAL—0.3550.348—0.439+0.0910.492

WARM — quelques séries de la source cible étiquetées (scénario de flotte instrumentée). Le routage calibré sur ces exemples bat PaAno de façon nette et généralisée — c'est le levier réellement déployable.

Synthèse

Tous les constats séries temporelles

L'ensemble des expériences TSAD et leur verdict, y compris les corrections méthodologiques.

✅
TSB-AD reproduit — Sub-PCA/Sub-KNN bit-exacts, CNN/PaAno quasi exacts
validation bit-exacte
✅
PaAno certifié — protocole officiel intégral, 179 séries Éval
0.412 ≈ 0.426 publié
✅
AxonAD au-dessus des baselines publiées — modèle externe récent (ECML-PKDD 2026), ajouté au comparatif
0.457 vs 0.313 publié
⚠️
Le SOTA du benchmark ne généralise pas systématiquement — AxonAD perd la main sur des catégories natives ajoutées
robotique/drones, médical-neuro
❌
Routage à froid (COLD) par catégorie — trop grossier pour prédire le bon système par dataset
PaAno par défaut reste plus sûr
✅
Routage calibré (WARM) — quelques séries étiquetées de la source cible suffisent à battre le défaut
0.091 vs PaAno
❌
Fusion uniforme des 3 systèmes — toujours moins bien que le meilleur seul par catégorie
conditionnement requis
✅
Audit fuite de split temporel — split non temporel corrigé, module canonique + linter
outillé, porte de claim
✅
Audit normalisation transductive — stats calculées sur train seul, pas la série entière
corrigé sur les scripts vivants
✅
Séquestre TSAD scellé — sources entières tenues à l'écart avant tout réglage
59 séries / 6 sources / 6 catégories

Enseignements

Ce que ces études nous apprennent

Les principes dégagés dans la quête du meilleur score TSAD.

Aucun détecteur universel

La complémentarité entre systèmes est réelle et mesurée : chacun domine sur des catégories différentes, pas juste en théorie.

Le SOTA d'un benchmark n'est pas le SOTA du monde réel

L'écart de généralisation observé sur les catégories natives ajoutées est concret, pas une hypothèse.

Le conditionnement par domaine est le levier qui marche

Pas une architecture plus grosse, ni une fusion moyenne — la spécialisation par mécanisme d'anomalie.

Le warm-start est le vrai levier déployable

À froid, le routage par catégorie ne bat pas le défaut PaAno de façon fiable. Dès que quelques séries de la source cible sont étiquetées (scénario de flotte instrumentée), le routage calibré le bat nettement — réaliste en monitoring réel.

Le choix de métrique compte

VUS-PR change les classements par rapport à des métriques ponctuelles naïves — c'est aussi la conclusion du papier TSB-AD.

La rigueur du protocole change les conclusions

Deux biais silencieux (split, normalisation) corrigés cette session ont chacun déplacé des résultats déjà considérés acquis.

La donnée native, diverse par mécanisme, reste le vrai goulot

Plus que le modèle — plusieurs catégories métier restent sous la charte de 3 sources indépendantes.

→ Voir le volet tabulaire