Anomaly Detection(이상치 탐지) 개요
1. 정의
- Anomaly Detection: 정상(Normal) 데이터와 비정상(Abnormal, 이상치) 데이터를 구별하는 문제.
- 적용 분야: 제조업, CCTV, 의료 영상, SNS, 금융, IoT, 산업 현장 등.
‘이상 탐지(Anomaly Detection)’란 어떤 데이터 집합에서 예상할 수 있는 기대 관측 값이 아닌 다른 형태의 데이터 패턴을 찾아내는 것을 목표로 하는 분야를 의미한다.
사람은 변화가 발생하면 일반적으로 발생된 정상의 데이터 패턴인지 아니면 비정상적으로 형성된 패턴인지를 구분할 수 있는 능력을 가지고 있다. 이는 정상적인 데이터 패턴의 양상을 학습을 통해 기억하고 있기 때문이다. 딥러닝(Deep Learning)을 이용한 이상 탐지 기술들은 이와 유사하게 데이터의 일반적인 패턴 분포를 학습하여 기억하고 있다가 이를 벗어난 패턴을 검출하는 방식으로 이상 징후를 탐지한다.
https://www.lgresearch.ai/blog/view?seq=401
[WACV 2024] 비전검사 분야의 산업용 이상 탐지 기술과 활용 - LG AI Research BLOG
WACV 2024, 비전검사, 이상 탐지 기술
www.lgresearch.ai
2. 연구 분야 용어 분류

(1) 학습 시 비정상 샘플 사용 여부 & 라벨 유무
- Supervised Anomaly Detection
- 정상/비정상 데이터와 라벨 모두 존재.
- 장점: 높은 정확도.
- 단점: 비정상 데이터 확보 비용 높음, 클래스 불균형(Class Imbalance) 문제.
- 대응: 데이터 증강, Loss 함수 재설계, 배치 샘플링 등.
- Semi-supervised (One-Class) Anomaly Detection
- 정상 데이터만 학습에 사용.
- One-Class SVM, Deep SVDD 등.
- 장점: 비정상 데이터 없어도 학습 가능.
- 단점: Supervised 대비 정확도 낮음.
- Unsupervised Anomaly Detection
- 라벨 없이 학습, 대부분 정상 데이터라는 가정.
- PCA, Autoencoder 등 활용.
- 장점: 라벨링 불필요.
- 단점: 정확도 낮고 하이퍼파라미터 민감.
(2) 비정상 샘플 정의 방식
- Novelty Detection
- 기존에는 없었지만 충분히 등장할 수 있는 새로운 데이터 탐지.
- 예: 새로운 품종의 강아지.
- Outlier Detection
- 등장 가능성이 거의 없는, 데이터 오염 가능성이 높은 샘플 탐지.
- 예: 강아지 데이터셋에 호랑이 이미지.
(3) 정상 샘플 클래스 수
- 정상 데이터가 여러 클래스인 경우 → Out-of-distribution (OOD) Detection
- 예: 강아지 4종류로 학습 → 불독(새로운 클래스)은 Novel, 호랑이(무관 클래스)는 Outlier.
- 활용: 이상치 필터링, Incremental Learning.
3. 비전검사 분야의 산업용 이상 탐지(Industrial Anomaly Detection) 기술
제조 산업에서 결함이 있는 제품을 찾아내는 것은 품질 관리를 위해 매우 중요한 요소임. 비전검사는 제품 외관에 발생된 결함을 찾아내는 것이 목적이며, 룰 기반 알고리즘의 성능을 보완하기 위해 딥러닝 기반의 알고리즘을 활용하는 사례들이 늙고 있다고 함
정상 제품의 일반적인 특징 분포를 학습하여 기억하고 있다가 이를 벗어난 특징을 검출하는 방식인 이상 탐지 모델(Anomaly Detection Models)로 위와 같은 문제들을 해결할 수 있음
제품 이미지에서 이상을 감지하는 방법은 다음과 같이 3가지 형태로 범주화해 볼 수 있다.

제품 이미지 이상 감지 방식 (3가지)
- 복원(Reconstruction) 기반
- 정상 이미지 특징을 저차원으로 압축·복원 → 복원 오류로 이상 탐지.
- Autoencoder, GAN, 최근에는 Diffusion Model 사용.
- 이상 제품 → 복원 오류 ↑.
- 밀도(Density) 기반
- 정상 데이터 분포(확률 밀도 함수) 모델링 → 밀도 낮으면 이상 판정.
- Gaussian Mixture Model, Normalizing Flow 등.
- 거리(Distance) 기반
- 정상 특징의 대표 벡터와 거리 측정 → 멀수록 이상.
- 예: PatchCore (CVPR 2022) – MVTecAD 리더보드 SOTA 달성 경험.
https://hoya012.github.io/contact/
Archives
Study Blog with paper reviews.
hoya012.github.io
PatchCore
- 개념: 사전 학습된 CNN(ImageNet)으로 패치 단위 특징 추출 → 대표 특징만 메모리 뱅크에 저장 → 최근접 이웃 거리로 이상 판정.
- 절차:
- 패치 특징 추출:
- 다단계 CNN 특징맵 결합 → 해상도 통일 → 평균 풀링으로 패치 특징 생성.
- 코어셋 샘플링:
- 모든 패치를 저장하면 메모리·연산 부담 ↑.
- 랜덤 샘플링 대신 코어셋 샘플링으로 특징 다양성 보존.
- 추론:
- 입력 이미지 패치 특징 ↔ 메모리 뱅크 특징 비교 → 거리 최대값 = 이상 점수.
- 패치 특징 추출:
ReConPatch
- 문제점: ImageNet 기반 모델 사용 시, 같은 위치 패치 특징 분포가 넓어 정상 제품도 이상으로 오인 가능.
- 해결 아이디어:
- 유사 패치는 더 가깝게, 다른 패치는 더 멀게 학습.
- 쌍별 유사도(Pairwise Similarity) + 상황관계 유사도(Contextual Similarity) 활용.
- 같은 군집이면 근접, 다른 군집이면 거리 유지/확대.
- 후처리(RefinementNet):
- 이상 영역이 실제보다 넓게 예측되는 문제 해결.
- 정상 이미지에 인위적 이상 영역 합성 → 이상 점수 지도 보정 학습.
- 성능(MVTecAD):
- Classification AUROC: 99.86 (1위, Refinement 적용)
- Segmentation AUROC: 99.20 (2위, Refinement 적용)
[액션파워 LAB] 이미지에서 이상 영역 탐지(Visual Anomaly Detection)는 어떻게 할까?
들어가기 전에
actionpower.medium.com
'Technology Notes' 카테고리의 다른 글
| [Deep Learning] 딥러닝 모델 모바일 최적화 알아보기 (0) | 2025.04.13 |
|---|---|
| [Framework] Flask-RESTX와 Swagger UI 사용해보기 (0) | 2025.04.11 |
| [Android] Android Emulator ControlService 오류 1062 (0) | 2025.04.08 |
| [Deep Learning] CNN(합성곱 신경망) 정리해보기 (0) | 2025.04.03 |
| [Project] Qualcomm Ai Hub에서 YOLOv11-Detection-Quantized 모델 컴파일 해보기 (0) | 2025.03.23 |