Ultralytics YOLO27:
Get Started

ImageNette 데이터셋#

ImageNette 데이터셋은 쉽게 구별할 수 있는 10개 클래스가 포함된 ImageNet의 하위 집합으로, 소프트웨어 개발과 교육에 더 빠르고 사용하기 쉬운 ImageNet 버전을 제공하기 위해 fast.ai가 만들었습니다. tench, 잉글리시 스프링어, 카세트 플레이어, 프렌치 호른 등의 클래스를 아우르는 컬러 이미지 13,394장(학습용 9,469장, 검증용 3,925장)이 포함되어 있어, 이미지 분류 모델을 전체 1,000개 클래스 ImageNet에 필요한 몇 시간이 아니라 몇 분 만에 학습할 수 있습니다.

주요 기능#

  • ImageNette에는 tench, 잉글리시 스프링어, 카세트 플레이어, 전기톱, 교회, 프렌치 호른, 쓰레기 수거차, 주유기, 골프공, 낙하산 등 10개 클래스에 걸쳐 13,394장의 이미지가 포함되어 있습니다.
  • 이미지 크기는 다양하며, 학습용 컬러 이미지 9,469장과 검증용 컬러 이미지 3,925장으로 구성된 사전 정의된 분할을 제공합니다.
  • 서로 명확히 구분되는 10개 클래스 덕분에 ImageNette는 학습 속도가 빠르고 이해하기 쉬워, 이미지 분류 프로토타이핑과 교육에 널리 사용됩니다.

데이터셋 구조#

ImageNette는 클래스별로 별도의 폴더에 저장된 사전 정의된 학습/검증 분할을 제공합니다:

분할이미지클래스
학습9,46910
검증3,92510

클래스별 이미지 수는 다르므로, 전체 ImageNet 데이터셋만큼의 규모를 필요로 하지 않으면서도 빠른 학습과 벤치마킹에 현실적인 데이터 분포를 제공합니다.

응용 분야#

ImageNette 데이터셋은 합성곱 신경망 (CNN) 및 기타 머신러닝 알고리즘과 같은 이미지 분류 작업에서 딥러닝 모델을 학습하고 평가하는 데 널리 사용됩니다. 간단한 형식과 잘 선정된 클래스 덕분에 머신러닝 및 컴퓨터 비전 분야의 초보자와 숙련된 실무자 모두에게 유용한 리소스입니다.

사용법#

ImageNette 데이터셋에서 표준 이미지 크기 224x224로 에포크 100회 동안 모델을 학습하려면 다음 코드 조각을 사용할 수 있습니다. 사용 가능한 인수 전체 목록은 모델 학습 페이지를 참조하세요.

학습 예제
from ultralytics import YOLO

# 모델 로드
model = YOLO("yolo26n-cls.pt")  # 사전 학습된 모델을 불러옵니다(학습에 권장).

# 모델 학습
results = model.train(data="imagenette", epochs=100, imgsz=224)

샘플 이미지 및 어노테이션#

ImageNette 데이터셋에는 다양한 사물과 장면의 컬러 이미지가 포함되어 있어 이미지 분류 작업에 적합한 다양한 데이터셋을 제공합니다. 다음은 데이터셋 이미지의 몇 가지 예입니다:

ImageNette 분류 데이터셋 샘플 이미지

이 예제는 ImageNette 데이터셋 이미지의 다양성과 복잡성을 보여주며, 강건한 이미지 분류 모델을 학습할 때 다양한 데이터셋이 중요하다는 점을 강조합니다.

ImageNette160 및 ImageNette320#

더 빠른 프로토타이핑과 학습을 위해 ImageNette는 ImageNette160과 ImageNette320 두 가지 축소 버전으로도 제공됩니다. 이 데이터셋은 전체 ImageNette와 동일한 클래스와 구조를 유지하면서 이미지의 긴 변 최대 길이를 줄였습니다. 예비 모델 테스트나 컴퓨팅 리소스가 제한된 환경에서 특히 유용합니다.

이 데이터셋을 사용하려면 학습 명령에서 imagenette을 imagenette160 또는 imagenette320로 바꾸기만 하면 됩니다. 다음 코드 조각을 참고하세요:

ImageNette160 학습 예제
from ultralytics import YOLO

# 모델 로드
model = YOLO("yolo26n-cls.pt")  # 사전 학습된 모델을 불러옵니다(학습에 권장).

# ImageNette160으로 모델 학습
results = model.train(data="imagenette160", epochs=100, imgsz=160)
ImageNette320 학습 예제
from ultralytics import YOLO

# 모델 로드
model = YOLO("yolo26n-cls.pt")  # 사전 학습된 모델을 불러옵니다(학습에 권장).

# ImageNette320으로 모델 학습
results = model.train(data="imagenette320", epochs=100, imgsz=320)

이처럼 더 작은 데이터셋 버전을 사용하면 현실적인 이미지 분류 작업을 유지하면서 개발 중에 빠르게 반복 작업을 수행할 수 있습니다. 또한 Ultralytics Platform을 사용해 분류 데이터셋을 관리하고 클라우드에서 학습을 실행할 수 있습니다.

인용 및 감사의 글#

연구 또는 개발 작업에서 ImageNette 데이터셋을 사용하는 경우 적절히 출처를 밝혀 주세요. ImageNette에 대한 자세한 내용은 ImageNette 데이터셋 GitHub 페이지를 방문하세요.

fast.ai 팀이 머신러닝 및 컴퓨터 비전 연구 커뮤니티에 유용한 리소스로서 ImageNette를 만들고 유지 관리한 데 감사를 표합니다. 머신러닝 및 컴퓨터 비전

자주 묻는 질문#

  • ImageNette 데이터셋은 tench, 잉글리시 스프링어, 프렌치 호른 등 쉽게 구별할 수 있는 10개 클래스가 포함된 ImageNet의 단순화된 하위 집합입니다. 이미지 13,394장(학습용 9,469장, 검증용 3,925장)을 포함하며, 이미지 분류 모델을 효율적으로 학습하고 평가할 수 있는 관리하기 쉬운 데이터셋을 제공하기 위해 fast.ai가 만들었습니다. 따라서 머신러닝과 컴퓨터 비전 분야의 빠른 소프트웨어 개발 및 교육에 특히 유용합니다.

  • ImageNette에는 총 13,394장의 이미지가 있으며, tench, 잉글리시 스프링어, 카세트 플레이어, 전기톱, 교회, 프렌치 호른, 쓰레기 수거차, 주유기, 골프공, 낙하산 등 10개 클래스에 학습용 9,469장과 검증용 3,925장이 포함되어 있습니다. 각 클래스는 Ultralytics가 요구하는 표준 분류 구조에 따라 자체 폴더에 저장됩니다.

  • ImageNette에서 YOLO 모델을 에포크 100회 동안 학습하려면 다음 명령을 사용하세요. Ultralytics YOLO 환경이 설정되어 있는지 확인하세요.

    학습 예제
    from ultralytics import YOLO
    
    # 모델 로드
    model = YOLO("yolo26n-cls.pt")  # 사전 학습된 모델을 불러옵니다(학습에 권장).
    
    # 모델 학습
    results = model.train(data="imagenette", epochs=100, imgsz=224)

    자세한 내용은 학습 문서 페이지를 참조하세요.

  • ImageNette 데이터셋은 여러 면에서 유용합니다:

    • 빠르고 간편함: 클래스가 10개이고 이미지가 약 13,000장뿐이므로 전체 ImageNet보다 학습이 훨씬 간단하고 시간이 덜 걸립니다.
    • 교육적 활용: 컴퓨팅 성능과 시간이 덜 필요하므로 이미지 분류의 기본을 배우고 가르치는 데 적합합니다.
    • 다용도성: 이미지 분류 모델, 특히 합성곱 신경망 (CNN)의 학습과 벤치마킹에 널리 사용됩니다.

    모델 학습과 데이터셋 관리에 대한 자세한 내용은 데이터셋 구조 섹션을 살펴보세요.

  • 예. ImageNette는 이미지의 긴 변 최대 길이를 줄인 ImageNette160과 ImageNette320 버전으로도 제공됩니다. 이 버전은 프로토타이핑을 빠르게 진행하는 데 도움이 되며, 컴퓨팅 리소스가 제한된 경우 특히 유용합니다.

    ImageNette160 학습 예제
    from ultralytics import YOLO
    
    # 모델 로드
    model = YOLO("yolo26n-cls.pt")
    
    # ImageNette160으로 모델 학습
    results = model.train(data="imagenette160", epochs=100, imgsz=160)

    자세한 내용은 ImageNette160 및 ImageNette320으로 학습하기를 참조하세요.

  • ImageNette 데이터셋은 다음과 같은 용도로 폭넓게 사용됩니다:

    • 교육 환경: 초보자에게 머신러닝과 컴퓨터 비전의 기초를 가르치는 데 사용됩니다.
    • 소프트웨어 개발: 이미지 분류 모델을 신속하게 프로토타이핑하고 개발하는 데 사용됩니다.
    • 딥러닝 연구: 다양한 딥러닝 모델, 특히 합성곱 신경망 (CNN)의 성능을 평가하고 벤치마킹하는 데 사용됩니다.

    자세한 활용 사례는 애플리케이션 섹션을 살펴보세요.

댓글