【Python/Keras】CIFAR-10のデータセットをダウンロード

Pythonの機械学習モジュール「Keras」でIFAR-10のデータセットをダウンロードする方法をソースコード付きでまとめました。

CIFAR-10のダウンロード

CIFAR-10とは、画像分類用のデータセットです。
詳細は以下の通り。

説明
画像サイズ 32×32[px]
形式 カラー画像(24bitカラー)
クラスラベル [0]airplane(飛行機), [1]automobile(自動車), [2]bird(鳥), [3]cat(猫), [4]deer(鹿), [5]dog(犬), [6]frog(蛙), [7]horse(馬), [8]ship(船), [9]truck(トラック)の10種類
※[]内の数字はラベル
データ量 訓練用データ5万枚、テスト用データ1万枚
公式サイト CIFAR-10 and CIFAR-100 datasets

Kerasでは、次のプログラムを一度実行することで、ネットからCIFAR-10を入手できます。

サンプルコード

サンプルプログラムのソースコードです。

# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
from keras.datasets import cifar10

def main():
    # CIFAR-10のデータセットを取得
    (x_train, y_train), (x_test, y_test) = cifar10.load_data()
    
    # 3x3枚の画像を表示
    plt.figure(figsize=(3, 3))

    for i in range(9):
        # 0-49999の整数値をランダムに取得
        index = np.random.randint(0, 50000)
        plt.subplot(3, 3, i+1)
        plt.imshow(x_train[index])
        # x-y軸の目盛りを消去
        plt.tick_params(labelbottom='off')
        plt.tick_params(labelleft='off')


    plt.show()

if __name__ == '__main__':
    main()

実行結果

サンプルプログラムの実行結果です。
(初回実行時のみデータセットのダウンロードで時間がかかります)

Using TensorFlow backend.
Downloading data from https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz
170500096/170498071 [==============================] - 117s 1us/step

関連記事
1 Python入門 基本文法
2 【Python/Keras】ディープラーニング入門・使い方
関連記事