오늘은 머신러닝 분야에서 컴퓨터 비전 알고리즘 벤치마킹에 널리 사용되는 고전적인 이미지 분류 데이터 세트인 CIFAR-10 을 소개하려고 합니다 . 10년 이상의 개발 끝에 이 데이터 세트의 식별 문제는 "해결"되었으며 많은 모델이 쉽게 80%의 분류 정확도를 달성할 수 있습니다. 테스트 데이터 세트에 대한 심층 학습 합성곱 신경망의 분류 정확도 좋은 성능으로 90% 이상에 있을 수도 있습니다. 그러나 여전히 많은 초보자에게 좋은 선택입니다. 살펴 보겠습니다.
목차
1. 데이터셋 소개
출판사: University of Toronto Computer Science
발매일: 2009년
배경:
CIFAR-10 의 핵심 은 [the 80 million small images dataset]("80 million small images" dataset)라는 부분인데, 이는 데이터셋의 부분집합이다. 데이터에 논란의 여지가 있는 콘텐츠가 포함되어 있기 때문에 서가에서 제거되었습니다.
소개:
CIFAR10은 Hinton의 학생인 Alex Krizhevsky와 Ilya Sutskever가 수집한 범용 개체 인식을 위한 작은 데이터 세트입니다. CIFAR-10 데이터 세트에는 클래스당 6000개의 이미지가 있는 10개의 클래스로 나누어진 60000개의 32x32 컬러 이미지가 포함되어 있습니다.
2. 데이터셋 세부정보
1. 라벨 데이터 양
훈련 세트: 50,000개 이미지
테스트 세트: 10000개 이미지
2. 표시항목
데이터 세트에는 총 10개의 카테고리가 있습니다. 구체적인 분류는 그림 1에 나와 있습니다.
3. 시각화
(그림 1)
3. 데이터셋 작업 정의 및 소개
1. 이미지 분류
● 작업 정의
이미지 분류는 컴퓨터 비전 분야에서 의미론적 정보를 기반으로 서로 다른 이미지를 분류하는 패턴 인식 방법이다.
● 평가지표
정확도:
n_correct/n_total, 모든 샘플에 대한 올바른 레이블 예측이 있는 샘플의 비율입니다.
특정 범주의 정밀도 :
TP/(TP+FP), 이 범주로 예측된 샘플 중 얼마나 많은 샘플이 올바르게 예측되었는지.
특정 범주의 회상 :
TP/(TP+FN), 이 범주의 샘플에서 올바르게 예측된 샘플 수입니다.
참고: 위의 평가 지표에서 TP는 True Positive, FP는 False Positive, FN은 False Negative, n_correct는 모든 예측 샘플 수, n_total은 모든 샘플 수를 나타냅니다.
4. 데이터 세트 파일 구조의 해석
1. 데이터셋 디렉토리 구조
dataset_root/
├── batches.meta #记录分类信息的元文件
├── data_batch_1 #训练集1
├── data_batch_2 #训练集2
├── data_batch_3 #训练集3
├── data_batch_4 #训练集4
├── data_batch_5 #训练集5
├── readme.html #README文件
└── test_batch #测试集文件
2. 주석 파일 형식
데이터 세트의 각 그림은 32X32 RGB 그림이므로 데이터 세트는 그림 파일을 직접 저장하지 않고 각 데이터 세트의 모든 그림을 numpy 2차원 배열을 통해 저장하고 해당 파일 이름을 기록합니다.
공식 웹 사이트에서 제공하는 언로드 코드를 사용하여 data_batch_1과 같은 파일의 데이터를 구문 분석할 수 있습니다.
파이썬3:
def unpickle(file):
import pickle
withopen(file, 'rb') as fo:
dict = pickle.load(fo, encoding='bytes')
return dict
파이썬2:
def unpickle(file):
import cPickle
withopen(file, 'rb') as fo:
dict = cPickle.load(fo)
return dict
파싱 후 얻은 사전은 네 부분으로 나뉘는데, 하나는 트레이닝 세트의 번호, 다른 하나는 각 그림의 분류 번호, 세 번째는 모든 그림으로 구성된 numpy 배열, 네 번째는 파일 목록입니다. 이름.
레이블 목록에서 각 값에 해당하는 분류 범주:
데이터 목록에는 이 배치의 모든 사진 정보가 저장됩니다. 배열은 10000X3072 2차원 numpy 배열이며 각 행은 사진의 RGB 정보를 저장합니다. 각 행의 1차원 배열에서 처음 1024개의 데이터는 영상의 R 채널 정보를 기록하고, 중간 1024개의 데이터는 영상의 G 채널 정보를 기록하고, 마지막 1024개의 데이터는 B 채널 정보를 기록한다.
각 채널 정보의 1024개의 데이터 중 32개를 그룹으로 사용하고 각 그룹은 화상의 각 행의 32개 픽셀 포인트의 값을 기록합니다. 32개 값의 첫 번째 세트는 사진의 첫 번째 행의 픽셀 값을 기록하고, 두 번째 32개 값 세트는 사진의 두 번째 줄의 픽셀 값을 기록하는 식입니다.
3. 메타 정보 형식
batches.meta 파일은 범주형 변수의 값과 해당 범주의 비교 정보를 기록하고 제공된 코드를 파싱한 후 사전의 결과는 다음과 같습니다.
5. 데이터셋 다운로드
OpenDataLab 플랫폼은 CIFAR-10 데이터 세트의 완전한 데이터 세트 정보, 직관적인 데이터 분포 통계, 원활한 다운로드 속도 및 편리한 시각적 스크립트를 제공합니다.체험에 오신 것을 환영합니다. 원본 링크를 클릭하시면 보실 수 있습니다.
https://opendatalab.org.cn/CIFAR-10
참조
[1] 공식 홈페이지: http://www.cs.toronto.edu/~kriz/cifar.html
[2] 데이터셋 다운로드: http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz
저자丨두쿤밍
현자가 있으니 만물이 형통하느니라
- 끝 -
위의 공유, 놓칠 수 없는 데이터 세트의 더 흥미로운 건조 제품입니다. 더 보고 싶은 것이 있으면 꼬마 조수에게 와서 말하세요. 더 많은 데이터 세트가 진열되어 있고, 더 포괄적인 데이터 세트 콘텐츠 해석, 가장 강력한 온라인 Q&A, 가장 활동적인 동료 서클... WeChat opendatalab_yunying을 추가하여 OpenDataLab 공식 커뮤니케이션 그룹에 가입하신 것을 환영합니다.