Yolo 비전 선전
선전
지금 참여하기
용어집

One-Shot Learning

One-Shot Learning의 강력한 기능을 경험해 보세요. 최소한의 데이터로부터 일반화하여 실제 응용 분야에 적용할 수 있는 혁신적인 AI 기술입니다.

원샷 학습(OSL)은 머신러닝(ML)의 정교한 접근 방식으로 머신 러닝(ML)의 정교한 접근 방식입니다. 레이블이 지정된 하나의 예제만 주어지면 새로운 객체를 인식하고 분류하도록 모델을 설계하는 것입니다. 기존의 딥러닝(DL) 방법과 달리 방대한 학습 데이터 저장소가 필요한 기존의 딥 러닝 (DL ) 방법과 달리 정확도를 달성하기 위해 방대한 학습 데이터 저장소가 필요한 기존의 딥러닝(DL) 방식과 달리, OSL은 새로운 개념을 한 번만 보고도 즉시 파악하는 인간의 인지 능력을 모방합니다. 이 기능은 다음과 같은 애플리케이션에 특히 중요합니다. 데이터 라벨링 비용이 많이 들거나, 데이터가 부족하거나, 새롭거나 신원 확인이나 드문 이상 징후 식별과 같이 새로운 카테고리가 동적으로 나타나는 애플리케이션에서 특히 중요합니다.

원샷 학습의 메커니즘

OSL의 핵심 메커니즘은 문제를 분류에서 차이 평가로 전환하는 것입니다. 대신 특정 클래스(예: "고양이" 대 "개")를 암기하도록 모델을 훈련시키는 대신, 시스템이 학습하는 것은 유사성 함수를 학습합니다. 이는 종종 신경망(NN) 아키텍처로 알려진 샴 네트워크. 샴 네트워크는 동일한 모델 가중치를 공유하는 동일한 하위 네트워크를 활용하여 모델 가중치를 공유하는 동일한 하위 네트워크를 동시에 처리합니다.

이 과정에서 네트워크는 이미지와 같은 고차원 입력을 압축된 저차원 벡터로 변환합니다. 임베딩이라고 합니다. 두 이미지가 같은 클래스에 속하는 경우 같은 클래스에 속하면, 네트워크는 벡터 공간에서 임베딩을 서로 가깝게 배치하도록 학습됩니다. 반대로 클래스가 다르면 임베딩이 서로 멀어집니다. 이 과정은 효과적인 특징 추출에 크게 의존합니다. 특징 추출에 크게 의존합니다. 특징 추출에 의존합니다. 추론 시, 새로운 이미지는 임베딩을 저장된 단일 이미지와 비교하여 분류됩니다. 거리 메트릭을 사용하여 각 클래스의 "샷"과 비교하여 분류합니다. 유클리드 거리 또는 코사인 유사성.

다음 Python 스니펫은 다음을 사용하여 임베딩을 추출하는 방법을 보여줍니다. YOLO11 을 사용하여 임베딩을 추출하고 알려진 "샷"과 새로운 쿼리 이미지 사이의 유사성을 계산하는 방법을 보여줍니다.

import numpy as np
from ultralytics import YOLO

# Load a pre-trained YOLO11 classification model
model = YOLO("yolo11n-cls.pt")

# Extract embeddings for a 'shot' (reference) and a 'query' image
# The model returns a list of results; we access the first item
shot_result = model.embed("reference_image.jpg")[0]
query_result = model.embed("test_image.jpg")[0]

# Calculate Cosine Similarity (1.0 = identical, -1.0 = opposite)
# High similarity suggests the images belong to the same class
similarity = np.dot(shot_result, query_result) / (np.linalg.norm(shot_result) * np.linalg.norm(query_result))

print(f"Similarity Score: {similarity:.4f}")

관련 학습 패러다임 구분하기

OSL을 이해하려면 다른 로우 데이터 학습 기법과 구별해야 합니다. 효율성이라는 목표는 공유하지만 효율성이라는 목표를 공유하지만, 제약 조건은 크게 다릅니다:

  • 소수점 학습(FSL): 이 은 OSL을 포괄하는 더 넓은 범주입니다. FSL에서는 모델에 작은 예제 세트가 제공됩니다. 클래스당 2개에서 5개 사이의 작은 예제가 제공됩니다. OSL은 FSL의 가장 극단적인 경우로, 예제 개수($k$)가 하나.
  • 제로 샷 학습(ZSL): ZSL 은 모델이 시각적으로 본 적이 없는 클래스를 식별하도록 요구함으로써 데이터 희소성을 한 단계 더 발전시켰습니다. 이는 시맨틱 검색과 시맨틱 검색과 메타데이터에 의존하여 시각적 특징과 텍스트 설명을 연결합니다(예: '얼룩말'이 '줄무늬 말'처럼 생겼다는 것을 알고 "줄무늬 말").
  • 이전 학습: 이 은 다음과 같은 대규모 데이터 세트에 대해 사전 학습된 모델을 사용하는 것을 포함합니다. ImageNet과 같은 대규모 데이터 세트에서 사전 학습된 모델을 더 작은 작업별 데이터 세트에서 미세 조정하는 과정을 거칩니다. 전이 학습은 데이터 요구 사항을 줄이기는 하지만, 일반적으로 과적합을 방지하기 위해 단일 예제 이상의 과적합.

실제 애플리케이션

원샷 학습을 통해 인공 지능(AI)이 작동할 수 있도록 모델을 재학습하는 것이 비현실적인 동적 환경에서도 인공지능(AI)이 작동할 수 있게 되었습니다.

  1. 얼굴 인식: 가장 가장 일반적인 사용 사례는 생체 인식 보안입니다. 사용자가 스마트폰에 얼굴을 등록하면 기기가 하나의 참조 이미지("원샷")를 캡처합니다. 단일 참조 표현('원샷')을 캡처합니다. 이후, 시스템은 OSL 원칙을 사용하여 사용자의 신원을 확인합니다. 실시간 피드와 저장된 참조 이미지를 비교하여 사용자의 신원을 확인하여 데이터 보안을 크게 강화합니다. 데이터 보안을 크게 강화합니다. 이 방법은 다음과 같은 연구에 의해 대중화되었습니다. 삼중 손실을 활용한 Google FaceNet 논문과 같은 연구를 통해 대중화되었습니다. 손실을 임베딩 학습에 활용했습니다.
  2. 산업 품질 관리: 제조업에서 결함은 매우 드물고 다양할 수 있습니다. 따라서 기존 교육으로는 고장난 부품에 대한 대량의 데이터 세트를 대량의 데이터 세트를 수집하기 어렵습니다. OSL을 사용하면 컴퓨터 비전 시스템이 하나의 참조 이미지에서 하나의 참조 이미지에서 "완벽한" 부품의 모양을 학습할 수 있습니다. 임베딩 공간에서 크게 벗어나는 모든 부품은 이상 감지 이벤트로 플래그가 지정됩니다, 새로운 생산 라인에서 즉각적인 품질 보증이 가능합니다.

과제 및 향후 전망

원샷 학습은 그 유용성에도 불구하고 일반화와 관련된 문제에 직면해 있습니다. 모델은 단일 인스턴스에서 클래스를 추론하기 때문에 클래스를 추론하기 때문에 해당 참조 이미지의 노이즈나 이상값에 영향을 받기 쉽습니다. 연구자들은 종종 메타 학습, 즉 "학습을 통한 학습"을 사용하여 이러한 모델의 안정성을 개선합니다. 다음과 같은 프레임워크 PyTorchTensorFlow 과 같은 프레임워크는 이러한 고급 아키텍처를 지원하기 위해 지속적으로 발전하고 있습니다. 아키텍처를 지원하기 위해 지속적으로 발전하고 있습니다. 또한, 합성 데이터를 통합하면 합성 데이터를 통합하면 단일 샷을 보강하는 데 도움이 될 수 있습니다, 모델이 학습할 수 있는 보다 강력한 표현을 제공할 수 있습니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기