이상치 탐지
Isolation Forest를 사용한 수치 데이터 이상치 탐지. Isolation Forest 알고리즘으로 이상치를 식별합니다. 이상 점수가 높은 데이터 포인트는 오염률 임계값에 따라 잠재적 이상치로 표시됩니다.
Isolation Forest 알고리즘으로 이상치를 식별합니다. 이상 점수가 높은 데이터 포인트는 오염률 임계값에 따라 잠재적 이상치로 표시됩니다.
아이솔레이션 포레스트 이상치 탐지란?
Isolation Forest는 이상치가 '드물고 다르다'는 원리에 기반한 비지도 학습 이상 탐지 알고리즘으로, 이상치가 정상 데이터보다 분리하기 쉽다는 성질을 활용합니다. 거리 기반 기법과 달리 거리나 밀도를 계산하지 않기 때문에 대용량 데이터셋에서도 매우 효율적입니다.
이 알고리즘은 무작위 고립 트리의 앙상블을 구축합니다. 각 트리는 특성과 분할 값을 무작위로 선택하여 데이터를 재귀적으로 분할합니다. 이상치는 드물고 뚜렷이 구별되므로 더 적은 분할만으로 고립됩니다(루트에서 잎까지의 경로 길이가 짧습니다). 반면 정상 데이터는 밀집해 있어 더 많은 분할이 필요합니다.
이상 점수는 모든 트리에 걸친 평균 경로 길이를 데이터셋 크기에 대한 기대 경로 길이로 정규화하여 구합니다. 점수가 1에 가까우면 이상치를, 0.5에 가까우면 정상 데이터를 의미합니다. 오염률 파라미터는 예상되는 이상치 비율을 지정하며, 이 값이 분류 기준이 되는 점수 임계값을 결정합니다.
Formula: Anomaly Score s(x, n) = 2^(-E(h(x)) / c(n)) c(n) = 2H(n-1) - 2(n-1)/n where h(x) = path length, c(n) = average path length in BST, H(i) = harmonic number ≈ ln(i) + 0.5772
계산 예시
오염률 = 0.05인 데이터 100개(이상치 약 5개 예상)에 고립 트리 100개를 구축했습니다. 점 A는 평균 경로 길이가 3.2로 빠르게 고립되어 이상 점수 0.82를 받아 이상치로 표시됩니다. 점 B는 평균 경로 길이가 8.7로 고립이 어려워 이상 점수 0.45가 되어 정상으로 판정됩니다. 4개 점이 임계값을 초과하여 이상치로 표시되었습니다.
이 계산기를 사용하는 경우
- 수입 검사 데이터 검토 시 공급업체 품질 문제나 측정 오류를 나타낼 수 있는 이상 측정값을 표시하기 위해
- 통계 분석 전 데이터셋 정리 시 — 감지되지 않은 이상값이 평균, 표준편차, 능력 지수를 심각하게 왜곡할 수 있음
- 표준 관리도가 다변량 데이터에서 놓칠 수 있는 비정상적 생산 패턴을 감지하기 위한 대량 생산 SPC에서
- 설비 열화나 공정 드리프트의 초기 징후를 파악하기 위해 설비 모니터링 센서 또는 IoT 데이터 분석 시
- 기록 오류, 시험 장비 오작동 또는 공정 이상을 나타낼 수 있는 데이터 이상을 찾기 위한 품질 감사 시
흔한 실수
- 표시된 모든 이상값을 조사 없이 자동 제거 — 이상값은 데이터 정리가 아닌 시정 조치가 필요한 실제의 중요한 공정 이벤트를 나타낼 수 있음
- 오염도를 너무 높게 설정하여 정상 변동을 이상으로 표시 — 보수적으로 시작(0.01-0.05)하고 도메인 전문 지식이 더 높은 이상률을 시사할 때만 증가
- 매우 소규모 데이터셋(50개 미만)에 Isolation Forest 사용 — 알고리즘이 의미 있는 격리 트리를 구축하려면 충분한 데이터 필요; 소표본에는 더 간단한 방법(Z-score, IQR) 사용
- 이상 점수 분포 무시 — 이진 분류에만 의존하지 말고 점수 분포를 검토하여 감지된 이상의 심각도 구배 이해
결과 해석 방법
- 이상 점수 1.0에 가까움 — 포인트가 강하게 격리되어 진정한 이상일 가능성 높음; 즉시 조사
- 이상 점수 0.6-0.8 — 포인트가 중간 수준의 이상; 도메인 맥락에서 검토하여 조치가 필요한지 결정
- 이상 점수 약 0.5 — 포인트가 정상; 주요 데이터 분포 내에 포함됨
- 이상 비율이 예상보다 유의하게 높음 — 오염 매개변수가 너무 높게 설정되었거나 공정에 가정보다 더 많은 문제가 있음
- 유사한 특성 값에서 이상값 군집 — 무작위 이상값이 아닌 별도의 하위 집단을 나타낼 수 있음; 체계적 원인 조사
관련 표준 및 참고문헌
- Liu, Ting & Zhou (2008), "Isolation Forest", IEEE ICDM — 여기에 구현된 알고리즘과 이상 점수를 정의한 원저 논문
- ISO 16269-4 — 데이터의 통계적 해석: 이상치의 검출과 처리, 이상치 처리 의사결정의 틀이 되는 국제 표준
- ASTM E178 — 이상 관측값 처리 표준 실무로, 플래그된 점의 제거가 정당화되는 경우를 다룸
- NIST/SEMATECH e-Handbook §1.3.5.17 — 단일 특성 데이터의 교차 확인에 유용한 고전적 단변량 이상치 검정(Grubbs)
자주 묻는 질문
오염률 파라미터는 어떻게 설정하나요?
오염률은 데이터에 포함될 것으로 예상되는 이상치의 비율입니다. 과거 이상 발생률을 알고 있다면(예: 불량률 2%) 그 값을 사용합니다. 알 수 없다면 0.05-0.10에서 시작해 현장 지식에 따라 조정합니다. 너무 낮으면 실제 이상치를 놓치고, 너무 높으면 정상 데이터까지 이상치로 표시합니다. 표시된 점을 눈으로 확인하면 값을 보정하는 데 도움이 됩니다.
다른 이상치 탐지 기법 대신 Isolation Forest는 언제 사용하나요?
Isolation Forest는 고차원 데이터, 대용량 데이터셋, 그리고 이상치가 전역적으로 뚜렷이 구별되는 상황에서 특히 뛰어납니다. 국소 밀도가 중요한 경우(이웃 대비 이상치)에는 LOF를 사용합니다. 단순한 단변량 데이터에는 통계적 기법(Z 점수, IQR)을 사용합니다. 군집화까지 함께 필요하다면 DBSCAN을 사용합니다. Isolation Forest는 O(n log n) 복잡도를 가져 확장성이 가장 뛰어난 선택지입니다.