Ultralytics YOLO27: 대기자 명단에 등록하세요.
YOLO 라이선스 받기
Ultralytics 용어집으로 돌아가기

Anomaly Detection

이상 탐지는 정상 패턴에서 벗어나는 데이터 포인트, 이벤트 또는 이미지 영역을 표시합니다. 이상 유형, 주요 방법, 시각 검사, 코드를 다룹니다.

이상 탐지는 정상 동작의 확립된 패턴에서 벗어나는 데이터 포인트, 이벤트 또는 이미지 영역을 식별하는 작업입니다. 이상치 탐지라고도 하며, 제조업 비전에서는 흔히 결함 감지 또는 자동 시각 검사라고 합니다. 이상은 드물고 종류가 다양하며 이전에 본 적 없는 경우가 많으므로, 대부분의 방법은 대체로 정상인 데이터에서 정상 상태를 학습하고, 새 입력이 해당 패턴에서 얼마나 벗어나는지 나타내는 이상 점수를 부여한 다음 임계값을 초과하는 점수를 표시합니다. 적용 사례로는 생산 라인의 긁힘과 찌그러짐, 사기성 카드 거래, 네트워크 침입, 고장 징후가 있는 기계, 의료 영상 분석에서 의심스러운 소견을 찾아내는 작업이 있습니다.

이상 유형#

  • 점 이상: 고객의 평소 지출보다 50배 큰 거래처럼 다른 값과 크게 차이가 나는 단일 값 또는 이미지입니다.
  • 맥락적 이상: 한 맥락에서는 정상이고 다른 맥락에서는 비정상인 값입니다. 뉴욕의 7월에 기온이 30 °C인 것은 보통이지만 1월이라면 우려할 만한 수준입니다.
  • 집단적 이상: 구성원 각각은 정상적으로 보여도 시퀀스나 그룹으로 보면 비정상인 경우입니다. 예를 들어 1분 이내에 여러 국가에서 로그인 시도가 한꺼번에 발생하면, 각각은 특이하지 않더라도 전체적으로는 이상입니다.

이상 탐지 작동 방식#

방법마다 정상 데이터를 모델링하는 방식이 다릅니다.

  • 통계 규칙: 평균에서 설정된 표준편차 수보다 멀리 떨어진 값이나 사분위 범위로 정한 범위를 벗어난 값을 표시합니다.
  • 거리 및 밀도: 최근접 이웃과 멀리 떨어져 있거나 밀도가 낮은 영역에 있는 점을 표시합니다. 국소 이상치 계수가 이러한 방식의 예입니다.
  • 격리: Isolation Forest는 무작위 절단으로 데이터를 분할하며, 이상치는 정상 데이터보다 적은 횟수의 분할만으로 격리됩니다.
  • 단일 클래스 모델: 단일 클래스 서포트 벡터 머신(SVM)은 학습 데이터 주변의 경계를 학습하고 그 바깥에 있는 점을 표시합니다.
  • 재구성: 정상 데이터만으로 학습한 오토인코더는 정상 입력은 잘 재구성하고 이상은 잘 재구성하지 못합니다. 따라서 재구성 오차를 이상 점수로 사용합니다.
  • 특징 기반 시각 방법: PatchCore는 ImageNet으로 사전 학습된 네트워크에서 추출한 무결점 이미지의 패치 특징을 메모리 뱅크에 저장합니다. 각 테스트 패치와 가장 가까운 저장 패치 사이의 거리를 점수로 사용하며, MVTec AD 벤치마크에서 이미지 수준 AUROC를 최대 99.6%까지 달성합니다.

scikit-learn은 학습 데이터에 이미 일부 이상이 포함된 경우를 이상치 탐지로, 학습 데이터가 깨끗하고 새 입력에만 점수를 매기는 경우를 신규성 탐지로 구분합니다. 아래 스크립트는 정상적인 기계의 측정값으로 Isolation Forest를 학습하고 새 측정값 네 개의 점수를 계산합니다.

import numpy as np
from sklearn.ensemble import IsolationForest

# 1,000 readings from a healthy machine: temperature (C) and vibration (mm/s)
rng = np.random.default_rng(0)
normal = rng.normal([60, 2.0], [3, 0.3], size=(1000, 2))

# Learn what normal looks like, then score new readings
detector = IsolationForest(random_state=0).fit(normal)
new = np.array([[61, 2.1], [59, 1.8], [75, 2.0], [60, 4.5]])
labels = detector.predict(new)  # 1 = normal, -1 = anomaly
scores = detector.decision_function(new)  # below 0 = anomaly

for (temp, vibration), label, score in zip(new, labels, scores):
    status = "anomaly" if label == -1 else "normal"
    print(f"{temp:.0f} C, {vibration:.1f} mm/s -> {status} (score {score:+.3f})")

학습 평균에 가까운 두 측정값의 점수는 +0.080과 +0.076으로 정상 범위에 있습니다. 과열 상태의 측정값인 75 °C는 −0.139, 평소보다 진동이 두 배 이상 큰 측정값은 −0.152이므로 둘 다 이상으로 표시됩니다. 모델은 두 고장 중 어느 것에 대한 사례도 본 적이 없습니다.

시각적 이상 탐지#

육안 검사는 결함을 수집하고 라벨링할 수 있는지에 따라 두 가지 접근 방식을 사용합니다. 결함 유형이 알려져 있고 예시가 있으면, 긁힘, 찌그러짐, 균열과 같은 클래스로 학습한 객체 탐지 또는 인스턴스 세그멘테이션 모델이 각 결함의 위치와 종류를 찾습니다. 이러한 클래스로 미세 조정한 YOLO26 탐지 또는 세그멘테이션 모델은 이미지에서 찾은 각 결함에 대해 박스 또는 마스크, 클래스, 신뢰도 점수를 반환합니다. 결함이 드물거나 예측하기 어려운 경우에는 정상 부품 이미지만 학습하는 단일 클래스 방법을 사용해 다른 항목을 표시하며, 예상하지 못한 결함 유형도 찾아낼 수 있습니다. 객체 및 텍스처 카테고리 15개에 이미지 5,000개 이상이 포함되고 학습 세트에는 결함이 없는 이미지만 들어 있는 MVTec AD 데이터셋은 이 설정의 표준 벤치마크입니다. Ultralytics Platform은 지도 학습 방식에 사용할 수 있도록 이 데이터셋을 탐지 데이터셋으로도 호스팅합니다. Anomalib와 같은 오픈 소스 라이브러리는 PatchCore 및 유사한 방법을 구현합니다.

이상 탐지기는 ROC 곡선 아래 면적(AUC)과 같이 임계값에 구애받지 않는 지표, 그리고 실제 운영자가 마주하게 될 오경보와 누락을 반영하는 선택된 임계값에서의 정밀도 및 재현율로 평가합니다. 이상은 드물기 때문에 임계값은 정상 검증 이미지의 점수로 설정하는 경우가 많습니다. 예를 들어 양품 중 1%만 초과하는 점수를 임계값으로 설정할 수 있습니다.

  • 객체 감지: 미리 정해진 레이블 클래스 집합의 인스턴스를 찾습니다. 결함 데이터로 학습한 객체 감지기는 학습한 결함 유형만 찾아냅니다.
  • 데이터 드리프트: 일주일 동안 이미지가 더 어두워지는 경우처럼, 시간에 따라 입력 전체 스트림의 분포가 변하는 현상입니다. 이상 탐지는 개별 입력에 점수를 매깁니다.
  • 분포 외(OOD) 탐지: 모델이 학습 데이터와 다른 입력을 표시해 모델이 예측을 보류하거나 사람에게 처리를 넘길 수 있도록 합니다. 배포된 모델의 입력에 신규성 탐지를 적용하는 방식입니다.
  • 변화 탐지: 홍수 전후의 위성 이미지처럼 서로 다른 시점에 촬영한 동일 장면의 이미지를 비교해 변경 사항을 찾습니다.

솔루션 살펴보기

스포츠 분야의 컴퓨터 비전

스포츠 분야의 컴퓨터 비전

Ultralytics YOLO가 선수 및 공 추적, 경기력 분석, 코칭 인사이트, 선수 재활을 통해 스포츠 비전을 구현하는 방법을 알아보세요.
자세히 알아보기
항공 이미지 컴퓨터 비전

항공 이미지 컴퓨터 비전

Ultralytics YOLO를 활용해 드론 및 항공 이미지를 농업, 양식업, 보전, 지리 공간 분석을 위한 실시간 인사이트로 전환하세요.
자세히 알아보기
항공우주 분야의 컴퓨터 비전

항공우주 분야의 컴퓨터 비전

Ultralytics YOLO를 활용해 항공기 검사, 활주로 FOD 감지, 공항 지상 운영, 복합재 결함 감지 등 항공우주 분야에 컴퓨터 비전을 적용하세요.
자세히 알아보기
보안 분야의 컴퓨터 비전

보안 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 모든 시설을 보호하세요. Vision AI는 경계 모니터링, 위협 감지, 번호판 인식, 작업장 안전을 지원합니다.
자세히 알아보기
로보틱스 분야의 컴퓨터 비전

로보틱스 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 더 스마트한 머신을 구현하세요. 로보틱스 분야의 Vision AI는 자율 주행, 인식, 객체 추적, 실시간 제어를 지원합니다.
자세히 알아보기
물류 분야의 컴퓨터 비전

물류 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 물류를 간소화하세요. 비전 AI는 화물 검사, 분류, 차량 추적, 실시간 창고 안전 모니터링을 지원합니다.
자세히 알아보기
리테일 분야의 컴퓨터 비전

리테일 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 리테일의 새로운 가능성을 열어 보세요. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리, 더욱 심층적인 고객 인사이트를 지원합니다.
자세히 알아보기
의료 분야의 컴퓨터 비전

의료 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 의료 솔루션을 구축하세요. 의료 분야의 비전 AI는 의료 영상 판독을 가속화하고, 진단을 개선하며, 환자 모니터링을 지원합니다.
자세히 알아보기
제조 분야의 컴퓨터 비전

제조 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 제조 공정을 최적화하세요. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수, 조립 라인 자동화를 지원합니다.
자세히 알아보기
자동차 분야의 컴퓨터 비전

자동차 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 자동차 분야에 컴퓨터 비전을 적용하세요. 비전 AI는 도로 안전, 운전자 지원, 차량 자동화를 개선해 더 스마트한 도로를 구현합니다.
자세히 알아보기
농업 분야의 컴퓨터 비전

농업 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 스마트 농업에 비전 AI를 도입하세요. 작물 모니터링, 가축 추적, 정밀 농업을 지원하여 더 높은 수확량과 더 스마트한 농업을 실현합니다.
자세히 알아보기

함께 AI의 미래를 만들어 가세요!

머신러닝의 미래와 함께 여정을 시작하세요