본문으로 건너뛰기

AI 모델 알고리즘 이해하기

이상 탐지 — IBM Granite TSPulse

TSPulse란?

TSPulse(Time-Series Pulse)는 IBM이 개발한 시계열 이상 탐지 파운데이션 모델입니다. 센서 데이터처럼 시간 순서로 들어오는 데이터에서 정상 패턴을 학습하고, 패턴에서 벗어나는 구간을 이상으로 탐지합니다.

동작 원리: 재구성 오류 기반

TSPulse는 **"정상 데이터를 잘 복원할 수 있다면, 복원이 안 되는 구간은 이상이다"**라는 원리로 동작합니다.

① 학습 (정상 패턴 학습)

입력 시계열: [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]

이상 점수 높음! → 이상 탐지됨

핵심 개념

개념설명비유
재구성 오류원본과 복원된 데이터의 차이복사기가 원본을 잘 복사하는데, 이상한 부분은 복사를 못 함
임계값 (threshold)이상으로 판정하는 오류 기준값"여기까지는 정상, 이 이상은 비정상" 기준선
자동 임계값threshold=0 설정 시 데이터에서 자동 결정AI가 알아서 적절한 기준을 잡아줌

PlantPulse에서의 활용

센서 데이터 (최근 N분)


TSPulse 모델에 입력


각 시점별 재구성 오류 계산


임계값 초과 구간 = 이상 구간

├──▶ 이상 메트릭 상위 K개 추출 (top_k)
├──▶ 이상 점수 및 시간 정보 반환
└──▶ 최근 N초 이내 이상 여부 판정 (recent_seconds)

시계열 예측 — TinyTimeMixer (TTM)

TTM이란?

TinyTimeMixer는 IBM이 개발한 경량 시계열 예측 모델입니다. 과거 데이터 패턴을 학습하여 미래 값을 예측합니다. "Tiny"라는 이름답게 적은 리소스로도 높은 성능을 발휘합니다.

동작 원리: Mixer 아키텍처

TTM은 MLP-Mixer 구조를 시계열에 적용한 모델입니다.

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

예측 과정

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

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

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

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

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

핵심 개념

개념설명비유
컨텍스트 길이예측에 사용하는 과거 데이터 양과거 며칠치를 보고 내일 날씨를 예측
예측 길이미래 몇 스텝을 예측할지앞으로 며칠치 날씨를 예측
신뢰구간예측값의 상한/하한 범위"내일 기온은 20~25도 사이일 것"
다변량여러 센서를 동시에 고려온도+압력+진동을 함께 보고 예측

예측 결과 예시

시간 │ 실제값 │ 예측값 │ 하한 │ 상한
─────────┼────────┼────────┼───────┼───────
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

이상 탐지 + 예측 연계 활용

PlantPulse AI에서는 이상 탐지와 예측을 연계하여 더 강력한 인사이트를 제공합니다.

현재 상태 파악 (TSPulse 이상 탐지)

│ "현재 온도 센서에서 이상 패턴 감지됨"


미래 추세 예측 (TTM 예측)

│ "앞으로 6시간 내 임계값 초과 예상"


종합 판단

│ "현재 이상 + 악화 추세 → 즉시 점검 권고"


관련 문서 검색 (RAG)

│ "해당 설비 정비 매뉴얼 3장 참조"


종합 리포트 생성 (AURA LLM)

활용 시나리오별 모델 조합

시나리오TSPulse (이상 탐지)TTM (예측)판단
정상 운전이상 없음정상 범위 유지정상 — 모니터링 지속
초기 이상이상 감지정상 범위주의 — 추이 관찰 필요
악화 추세이상 감지임계값 초과 예상경고 — 즉시 점검 권고
급격한 이상높은 이상 점수급격한 악화긴급 — 즉시 조치 필요

설비 건강 점수 (Health Score)

TSPulse와 TTM의 분석 결과를 종합하여 0~100점 건강 점수를 산출합니다.

건강 점수 = f(센서 이상 점수, OEE, RAM, EMS, 알람 빈도)

100점: 모든 지표 정상
70점: 일부 센서 이상 또는 OEE 저하
50점: 다수 이상 감지, 주의 필요
30점: 심각한 이상, 즉시 점검 필요
0점: 설비 정지 또는 심각한 고장

피처 스토어의 역할

매번 이상 탐지와 예측을 실시간으로 실행하면 시간이 걸립니다. 피처 스토어는 이 결과를 미리 계산하고 저장합니다.

┌─────────────────────────────────┐
│ 피처 스토어 스케줄러 │
│ │
│ 매시간: 설비별 건강점수 계산 │
│ 매일: 종합 분석 LLM 컨텍스트 │
│ 임베딩 벡터 생성 │
└──────────────┬──────────────────┘


┌──────────────────────────────────┐
│ 사용자 질문: "이 설비 상태 어때?" │
│ │
│ → 사전 계산된 피처 즉시 반환 │
│ → 실시간 계산 대기 없음! │
│ → 응답 시간: 수백 ms │
└──────────────────────────────────┘