金子邦彦研究室人工知能データセット(人工知能関連)CIFAR-10 データセット(Python を使用)

CIFAR-10 データセット(Python を使用)

CIFAR-10 データセットを紹介する. 利用条件は利用者で確認すること.

目次

  1. 前準備
  2. CIFAR-10 データセットのロード
  3. CIFAR-10 データセットの確認

CIFAR-10 データセット

CIFAR-10 データセット(Canadian Institute for Advanced Research, 10 classes)は,公開されているデータセット(オープンデータ)である.

CIFAR-10 データセット(Canadian Institute for Advanced Research, 10 classes) は,クラス数 10 の カラー画像と,各画像に付いたのラベルから構成されるデータセットである. 機械学習での画像分類の学習や検証に利用できる.

文献

Alex Krizhevsky, Vinod Nair, and Geoffrey Hinton. 'Learning multiple layers of features from tiny images', Alex Krizhevsky, 2009.

サイト内の関連ページ

関連する外部ページ

1. 前準備

Python の準備(Windows,Ubuntu 上)

サイト内の関連ページ

関連する外部ページ

Python の公式ページ: https://www.python.org/

TensorFlow, TensorFlow データセット, Keras, numpy, matplotlib のインストール

Windows の場合

Windows では,コマンドプロン プトを管理者として実行し, 次のコマンドを実行する.

Windowspip を実行するときは,コマンドプロンプト管理者として開き,それを使って pip を実行することにする.

python -m pip install -U tensorflow-gpu tensorflow_datasets keras numpy matplotlib

Windows での TensorFlow のインストールの詳細: 別ページ »で説明

(このページで,Build Tools for Visual Studio 2022,NVIDIA ドライバ, NVIDIA CUDA ツールキットNVIDIA cuDNNのインストールも説明している.)

Ubuntu の場合

Ubuntu では,次のコマンドを実行.

sudo apt -y update
sudo apt -y install python3-numpy python3-matplotlib
sudo pip3 install -U tensorflow-gpu tensorflow_datasets keras 

Ubuntu での TensorFlow のインストールの詳細: 別ページ »で説明

(このページで,NVIDIA ドライバ, NVIDIA CUDA ツールキットNVIDIA cuDNNのインストールも説明している.)

2. CIFAR-10 データセットのロード

【Python の利用】

Python は,次のコマンドで起動できる.

Python 開発環境(Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, Nteract, Spyder, PyCharm, PyScripterなど)も便利である.

Python のまとめ: 別ページ »にまとめ

  1. Windows で,コマンドプロンプトを実行.
  2. jupyter qtconsole の起動

    これ以降の操作は,jupyter qtconsole で行う.

    jupyter qtconsole
    
  3. パッケージのインポート,TensorFlow のバージョン確認など
    import tensorflow as tf
    import numpy as np
    import tensorflow_datasets as tfds
    
    %matplotlib inline
    import matplotlib.pyplot as plt
    import warnings
    warnings.filterwarnings('ignore')   # Suppress Matplotlib warnings
    

    [image]
  4. TensorFlow データセット から CIFAR-10 データセット をロード
    • x_train: サイズ 32 × 32 の50000枚のカラー画像
    • y_train: 50000枚のカラー画像それぞれの,種類番号(0 から 9 のどれか)
    • x_test: サイズ 32 × 32 の 10000枚のカラー画像
    • y_test: 10000枚のカラー画像それぞれの,種類番号(0 から 9 のどれか)

    結果は,TensorFlow の Tensor である.

    type は型,shape はサイズ,np.max と np.mi は最大値と最小値.

    tensorflow_datasets の loadで, 「batch_size = -1」を指定して,一括読み込みを行っている.

    cifar10, cifar10_metadata = tfds.load('cifar10', with_info = True, shuffle_files=True, as_supervised=True, batch_size = -1)
    x_train, y_train, x_test, y_test = cifar10['train'][0], cifar10['train'][1], cifar10['test'][0], cifar10['test'][1]
    print(cifar10_metadata)
    

    [image]

3. CIFAR-10 データセットの確認