Zum Hauptinhalt springen

AI-Modellalgorithmen verstehen

Anomalieerkennung — IBM Granite TSPulse​

Was ist TSPulse?​

TSPulse (Time-Series Pulse) ist ein von IBM entwickeltes Foundation-Modell zur Zeitreihen-Anomalieerkennung. Es lernt normale Muster aus zeitlich geordneten Daten wie Sensordaten und erkennt Abweichungen von diesen Mustern als Anomalien.

Funktionsweise: Rekonstruktionsfehler-basiert​

TSPulse arbeitet nach dem Prinzip: „Wenn normale Daten gut rekonstruiert werden können, sind Abschnitte, die sich nicht rekonstruieren lassen, Anomalien."

① 학습 (정상 패턴 학습)

입력 시계열: [23.1, 23.2, 23.0, 23.3, 23.1, ...] ← 정상 온도 패턴
│
▼
┌──────────────┐
│ 인코더 │ 데이터를 압축된 표현으로 변환
│ (Encoder) │
└──────┬───────┘
│
┌──────┴───────┐
│ 잠재 공간 │ 핵심 패턴만 남긴 압축 표현
│ (Latent) │
└──────┬───────┘
│
┌──────┴───────┐
│ 디코더 │ 압축 표현에서 원래 데이터 복원
│ (Decoder) │
└──────┬───────┘
│
▼
재구성 출력: [23.0, 23.2, 23.1, 23.2, 23.1, ...] ← 거의 같음!

재구성 오류 = |원본 - 재구성| = [0.1, 0.0, 0.1, 0.1, 0.0] ← 매우 작음 → 정상
② 이상 탐지

입력 시계열: [23.1, 23.2, 87.5, 23.3, 23.1, ...] ← 갑자기 87.5도!
│
▼
[인코더 → 잠재 공간 → 디코더]
│
▼
재구성 출력: [23.0, 23.2, 23.4, 23.2, 23.1, ...] ← 87.5를 복원 못함

재구성 오류 = [0.1, 0.0, 64.1, 0.1, 0.0]
↑
이상 점수 높음! → 이상 탐지됨

Kernkonzepte​

KonzeptBeschreibungAnalogie
RekonstruktionsfehlerUnterschied zwischen Original- und rekonstruierten DatenEin Kopierer kopiert das Original gut, kann aber ungewöhnliche Teile nicht kopieren
KorrekturwertUm wie viele Male die übliche Schwankung (Referenzbereich) der Rekonstruktionsfehler abweicht — robuster Z-Wert„5-mal stärkere Schwankung als sonst"
Schwellenwert (threshold)Korrekturwert-Grenze, bei der eine Anomalie festgestellt wird — Standard für Anlagensensoren 5,0Grenzlinie „bis hier normal, darüber abnormal"
threshold=0 ist nicht «automatisch»

Frühere Dokumentationen gaben an, dass bei Eingabe von 0 der Schwellenwert automatisch bestimmt wird. Da die Punktzahl der Anlagensensoren jetzt eine Skala mit Referenz-Median 0 ist, gilt: Wird 0 angegeben, wird bereits eine geringfügige Erhöhung gegenüber dem Normalzustand vollständig als Anomalie gewertet. Wenn kein besonderer Grund vorliegt, lassen Sie threshold weg, um den Standardwert (5,0) zu verwenden.

Die Referenz ist «unmittelbar vor dem Analysefenster»​

Innerhalb desselben Aufrufs werden Median und MAD aus dem Rekonstruktionsfehler des Bereichs unmittelbar vor dem Analysefenster berechnet. Dadurch wird für jede Anlage und jeden Tag ein eigenes „Normal" ermittelt. Für Tags mit zu kurzem Referenzbereich wird kein Wert berechnet, sondern die Stelle mit Begründung leer gelassen — es wird nicht mit 0 aufgefüllt.

  • Status-Tags (Betrieb/Stopp usw.) werden ausgeschlossen.
  • Zähler-Tags werden nicht als Kumulativwert, sondern als Durchschnitt der 5-Intervall-Inkremente betrachtet — ein Produktionsstopp zeigt sich als Inkrement 0.
  • Aggregations- und Glättungsfenster betragen für Anlagensensoren standardmäßig 8 / 4.

Einsatz in PlantPulse​

센서 데이터 (최근 N분)
│
▼
TSPulse 모델에 입력
│
▼
각 시점별 재구성 오류 계산
│
▼
임계값 초과 구간 = 이상 구간
│
├──▶ 이상 메트릭 상위 K개 추출 (top_k)
├──▶ 이상 점수 및 시간 정보 반환
└──▶ 최근 N초 이내 이상 여부 판정 (recent_seconds)

Zeitreihenprognose — TinyTimeMixer (TTM)​

Was ist TTM?​

TinyTimeMixer ist ein von IBM entwickeltes leichtgewichtiges Zeitreihen-Prognosemodell. Es lernt vergangene Datenmuster und prognostiziert zukünftige Werte. Wie der Name „Tiny" andeutet, erzielt es hohe Leistung mit geringen Ressourcen.

Was in PlantPulse eingesetzt wird, ist Granite-TTM R3 (512-96-dec-512-r3) — eine Zerlegungsprognose-Generation (TinyTimeMixerForDecomposedPrediction), die Trend und Rest getrennt vorhersagt. Die vorherige Generation R2 ist ebenfalls im Image enthalten und kann mit einer einzigen Konfigurationszeile zurückgesetzt werden → Zeitreihen-Insight

Funktionsweise: Mixer-Architektur​

TTM ist ein Modell, das die MLP-Mixer-Struktur auf Zeitreihen anwendet.

과거 데이터 (Context Window) 예측 (Prediction Window)
┌──────────────────────────┐ ┌──────────────────┐
│ t-512 t-511 ... t-1 t │ → │ t+1 t+2 ... t+96 │
└──────────────────────────┘ └──────────────────┘
입력 (512 스텝) 출력 (96 스텝)

Prognoseprozess​

① 시간축 믹싱 (Time Mixing)
"과거 패턴에서 시간적 관계를 파악"

- 새벽에는 온도가 낮고, 낮에는 높다 (일주기)
- 월요일에 가동률이 높다 (주주기)
- 점점 온도가 올라가는 추세 (트렌드)

② 채널 믹싱 (Channel Mixing)
"여러 센서 간의 관계를 파악"

- 전력 소비가 올라가면 → 온도도 올라간다
- 진동이 커지면 → 알람 빈도도 높아진다

③ 예측 생성
시간 패턴 + 센서 관계를 종합하여 미래 값 예측
신뢰구간(상한/하한)도 함께 제공

Kernkonzepte​

KonzeptBeschreibungAnalogie
KontextlängeMenge vergangener Daten, die für die Prognose verwendet wirdWetter von morgen anhand der letzten paar Tage vorhersagen
PrognoselängeWie viele zukünftige Schritte vorhergesagt werdenWetter für die kommenden paar Tage vorhersagen
KonfidenzintervallOber-/Untergrenze des Prognosewerts„Die Temperatur morgen liegt zwischen 20 und 25 Grad"
MultivariatBerücksichtigung mehrerer Sensoren gleichzeitigTemperatur + Druck + Vibration gemeinsam betrachten und vorhersagen

Beispiel für Prognoseergebnisse​

시간 │ 실제값 │ 예측값 │ 하한 │ 상한
─────────┼────────┼────────┼───────┼───────
14:00 │ 23.1 │ - │ - │ - ← 과거 (실제 데이터)
14:10 │ 23.3 │ - │ - │ -
14:20 │ 23.2 │ - │ - │ -
─────────┼────────┼────────┼───────┼───────
14:30 │ ? │ 23.4 │ 22.8 │ 24.0 ← 미래 (예측)
14:40 │ ? │ 23.5 │ 22.6 │ 24.4
14:50 │ ? │ 23.7 │ 22.5 │ 24.9

Kombinierter Einsatz von Anomalieerkennung und Prognose​

PlantPulse AI verknüpft Anomalieerkennung und Prognose, um noch stärkere Insights zu liefern.

현재 상태 파악 (TSPulse 이상 탐지)
│
│ "현재 온도 센서에서 이상 패턴 감지됨"
│
▼
미래 추세 예측 (TTM 예측)
│
│ "앞으로 6시간 내 임계값 초과 예상"
│
▼
종합 판단
│
│ "현재 이상 + 악화 추세 → 즉시 점검 권고"
│
▼
관련 문서 검색 (RAG)
│
│ "해당 설비 정비 매뉴얼 3장 참조"
│
▼
종합 리포트 생성 (AURA LLM)

Modellkombinationen je Einsatzszenario​

SzenarioTSPulse (Anomalieerkennung)TTM (Prognose)Beurteilung
NormalbetriebKeine AnomalieNormalbereich bleibt erhaltenNormal — Überwachung fortsetzen
Frühe AnomalieAnomalie erkanntNormalbereichAchtung — Verlauf beobachten erforderlich
VerschlechterungstrendAnomalie erkanntÜberschreitung des Schwellenwerts erwartetWarnung — Sofortige Inspektion empfohlen
Plötzliche AnomalieHoher AnomaliewertRapide VerschlechterungDringend — Sofortmaßnahme erforderlich

Anlagen-Gesundheitswert (Health Score)​

Aus 100 Punkten wird durch Punktabzug ein Gesundheitswert von 0 bis 100 Punkten ermittelt. Die Prognose (TTM) fließt nicht ein — es zählt nur, was bisher tatsächlich eingetreten ist.

건강 점수 = 100 − 이상 감점 − 알람 감점 − 비가동 감점 (0~100 로 자름)

이상 감점 최대 40 센서·OEE·RAM·EMS·알람의 이상 비율을 가중평균
알람 감점 최대 30 + 10 최근 24시간 알람(우선순위 가중) + 아직 안 풀린 알람
비가동 감점 최대 20 가동 정보가 있을 때만
StufePunktzahl
A · Goodab 90
B · Cautionab 75
C · Warningab 60
D · Criticalunter 60

Da es sich um ein Abzugsverfahren handelt, lässt sich „warum diese Punktzahl" anhand der Abzugsdetails erklären. Fehlen beobachtete Daten, wird unabhängig von der Punktzahl keine Stufe vergeben, sondern Insufficient data eingetragen — um zu vermeiden, dass Fehlen von Daten als «gesund» interpretiert wird.


Die Rolle des Feature-Stores​

Anomalieerkennung und Prognose bei jedem Aufruf in Echtzeit auszuführen, kostet Zeit. Der Feature-Store berechnet und speichert diese Ergebnisse im Voraus.

┌─────────────────────────────────┐
│ 피처 스토어 스케줄러 │
│ │
│ 매시간: 설비별 건강점수 계산 │
│ 매일: 종합 분석 LLM 컨텍스트 │
│ 임베딩 벡터 생성 │
└──────────────┬──────────────────┘
│
▼
┌──────────────────────────────────┐
│ 사용자 질문: "이 설비 상태 어때?" │
│ │
│ → 사전 계산된 피처 즉시 반환 │
│ → 실시간 계산 대기 없음! │
│ → 응답 시간: 수백 ms │
└──────────────────────────────────┘