너무 쉬운 이미지 인식丨클래식 이미지 분류 데이터 세트 CIFAR-10의 해석

오늘은 머신러닝 분야에서 컴퓨터 비전 알고리즘 벤치마킹에 널리 사용되는 고전적인 이미지 분류 데이터 세트인 CIFAR-10 을 소개하려고 합니다 . 10년 이상의 개발 끝에 이 데이터 세트의 식별 문제는 "해결"되었으며 많은 모델이 쉽게 80%의 분류 정확도를 달성할 수 있습니다. 테스트 데이터 세트에 대한 심층 학습 합성곱 신경망의 분류 정확도 좋은 성능으로 90% 이상에 있을 수도 있습니다. 그러나 여전히 많은 초보자에게 좋은 선택입니다. 살펴 보겠습니다.

목차

1. 데이터셋 소개

2. 데이터셋 세부정보

3. 데이터셋 작업 정의 및 소개

4. 데이터 세트 파일 구조의 해석

5. 데이터셋 다운로드


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 picklewithopen(file, 'rb') as fo:dict = pickle.load(fo, encoding='bytes')return dict

파이썬2:

def unpickle(file):import cPicklewithopen(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 공식 커뮤니케이션 그룹에 가입하신 것을 환영합니다.

추천

출처blog.csdn.net/OpenDataLab/article/details/127787645