3-시그마 검사를 직관적으로 이해하기
센서 종류별 평소 분포에서 얼마나 벗어났는지 계산하고, 통계 규칙과 상태 신호가 심각도를 어떻게 나눠 정하는지 확인합니다.
이번 단계의 질문
3-시그마 검사는 무엇을 찾고, 명시적 상태 신호는 그 결과를 어떻게 바꿀까요?
왜 지금 필요한가
시그마는 낯선 통계 용어지만 역할은 단순합니다. 각 센서 값이 같은 종류의 평소 값에서 표준편차 몇 배만큼 떨어졌는지를 하나의 숫자로 바꿉니다. 서로 다른 단위의 센서를 같은 상대 척도로 비교할 수 있게 합니다.
직접 해보기
processed의 이상 탐지 파이프라인(anomaly_detection)을 열고 Run을 선택합니다.
파이프라인은 센서 정규화 뒤 이상 탐지 코드를 실행해 이상 탐지 결과를 만듭니다.
정규화 결과부터 확인합니다. 216행이 213행으로 줄어듭니다.
OFFLINE2행은 지원하지 않는 상태이므로 제거됩니다.- 결측값 6행 가운데 5행은 직전 값으로 채워집니다.
- CNC-08 압력은 결측이 4회 연속이라 채우기 한도(3)를 넘어 1행이 남지 못합니다.
코드에서 다음 두 규칙을 구분해 읽습니다.
탐지 규칙: |값 - 같은 센서 종류의 평균| / 표준편차 > sigma 이면 이상
상태 규칙: quality_flag가 HIGH_*이면 z-score와 관계없이 이상, 심각도는 HIGH
심각도: 상태 신호 또는 z >= 5.0 → HIGH, z >= 4.0 → MEDIUM, 그 외 → LOW
이 결과가 나오면 성공
이상 탐지 결과에 6행이 생깁니다.
| 설비 | 센서 | 값 | z-score | 심각도 | 이상이 된 근거 |
|---|---|---|---|---|---|
| CNC-03 | vibration | 4.71 | 6.89 | HIGH | 상태 신호 + 통계 |
| CNC-05 | pressure | 8.9 | 4.92 | HIGH | 상태 신호 + 통계 |
| CNC-09 | temperature | 103.7 | 4.60 | HIGH | 상태 신호 + 통계 |
| CNC-07 | temperature | 101.2 | 4.22 | HIGH | 상태 신호 + 통계 |
| CNC-01 | temperature | 99.8 | 4.00 | MEDIUM | 통계만 |
| CNC-02 | vibration | 2.75 | 3.27 | LOW | 통계만 |

두 규칙이 갈리는 지점을 봅니다
CNC-01과 CNC-07을 나란히 놓습니다. 둘 다 온도 센서이고 z-score는 4.00과 4.22로 거의
같습니다. 그런데 심각도는 MEDIUM과 HIGH로 갈립니다.
차이는 z-score가 아니라 quality_flag입니다. CNC-07의 원천 행에는 HIGH_TEMP가
붙어 있고 CNC-01은 OK입니다. 상태 신호가 있으면 z-score가 5.0에 못 미쳐도 HIGH로
고정됩니다.
임계값을 바꿔 확인합니다
이상 탐지 코드의 sigma_multiplier를 바꾸고 다시 실행합니다.
sigma_multiplier | 이상 건수 | 사라지는 행 |
|---|---|---|
| 3.0 (기본) | 6 | — |
| 3.3 | 5 | CNC-02 LOW (z 3.27) |
| 4.1 | 4 | CNC-01 MEDIUM (z 4.00) |
임계값을 4.1까지 올려도 HIGH 4건은 그대로 남습니다. 상태 신호가 붙은 행은 통계 규칙과
무관하게 보존되기 때문입니다. 실험 뒤에는 3.0으로 되돌립니다.
다음 판단
이상 6건의 성격을 구분했습니다. 다음 챕터에서는 이상을 설비 단위 점수로 압축하고,
HIGH 4대 가운데 첫 점검 순서를 정합니다.