SVHN データセット(Python を使用)

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

目次

  1. 前準備
  2. SVHN データセットのロードと確認表示(TensorFlow データセットを使用)

* SVHN データセット

SVHN データセット は,公開されているデータセット(オープンデータ)である.

SVHN データセット は,小さく切り取られた数字の画像で,ラベル付けがされている. 機械学習での画像分類の学習や検証に利用できる.

文献

Yuval Netzer, Tao Wang, Adam Coates, Alessandro Bissacco, Bo Wu, Andrew Y. Ng, Reading Digits in Natural Images with Unsupervised Feature Learning, NIPS Workshop on Deep Learning and Unsupervised Feature Learning 2011, 2011.

PDF ファイル:http://ufldl.stanford.edu/housenumbers/nips2011_housenumbers.pdf

サイト内の関連ページ

関連する外部ページ

1. 前準備

Python の準備(Windows,Ubuntu 上)

サイト内の関連ページ

関連する外部ページPython の公式ページ: https://www.python.org/

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

Windows の場合

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

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

python -m pip install -U tensorflow-gpu tensorflow_datasets

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
sudo pip3 install -U tensorflow-gpu tensorflow_datasets

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

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

2. SVHN データセットのロードと確認表示(TensorFlow データセットを使用)

【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
    

    Python 開発環境として,Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, Nteract, spyder のインストール

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

    次のコマンドを実行することにより,pipとsetuptoolsを更新する,Jupyter Notebook,PyQt5、Spyderなどの主要なPython環境がインストールされる.

    python -m pip install -U pip setuptools requests notebook==6.5.7 jupyterlab jupyter jupyter-console jupytext PyQt5 nteract_on_jupyter spyder
    
  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
    
  4. TensorFlow データセット から SVHN データセット をロード

    結果は,TensorFlow の Tensor である.

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

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

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

4. SVHN データセットの確認