金子邦彦研究室人工知能Windows で動く人工知能関係 Pythonアプリケーション,オープンソースソフトウエア)画像分類の実行(MMPretrain,PyTorch,Python を使用)(Windows 上)

画像分類の実行(MMPretrain,PyTorch,Python を使用)(Windows 上)

MMPretrain のインストールと,それを用いた画像分類の実行についての手順を説明する.MMPretrain は OpenMMLab の一部で,画像分類のためのツールボックスとベンチマーク機能を提供している.このページでは,Windows 上でのインストール方法とビルド方法,エラーメッセージの確認,および ImageNet-1k データセットで訓練された ResNet50 モデルを用いた画像分類の実行手順を説明する.関連する外部ページへのリンク,公式ドキュメント,学習済みモデルへのアクセス方法も示す.

目次

  1. 前準備
  2. MMPretrain のインストール(Windows 上)
  3. MMPretrain を用いた画像分類の実行(Windows 上)

MMPretrain (MMClassification)

MMPretrain (MMClassification) は, OpenMMLab の構成物で, 画像分類のツールボックスとベンチマークの機能を提供する.

文献

MMClassification Contributors, OpenMMLab's Image Classification Toolbox and Benchmark, https://github.com/open-mmlab/mmclassification, 2020.

関連する外部ページ

関連項目OpenMMLab, MMCV, MMFewShot

前準備

Git のインストール(Windows 上)

Gitは,バージョン管理システム.ソースコードの管理や複数人での共同に役立つ.

サイト内の関連ページ

Windows での Git のインストール: 別ページ »で説明している.

関連する外部ページ

Git の公式ページ: https://git-scm.com/

Python のインストール(Windows 上)

サイト内の関連ページ

関連する外部ページ

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

Build Tools for Visual Studio 2022,NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.8,NVIDIA cuDNN 8.6 のインストール(Windows 上)

サイト内の関連ページ

NVIDIA グラフィックスボードを搭載しているパソコンの場合には, NVIDIA ドライバNVIDIA CUDA ツールキットNVIDIA cuDNN のインストールを行う.

関連する外部ページ

PyTorch のインストール(Windows 上)

  1. Windows で,コマンドプロンプト管理者として実行

    コマンドプロンプトを管理者として実行: 別ページ »で説明

  2. PyTorch のページを確認

    PyTorch のページ: https://pytorch.org/index.html

  3. 次のようなコマンドを実行(実行するコマンドは,PyTorch のページの表示されるコマンドを使う).

    次のコマンドは, PyTorch 2.0 (NVIDIA CUDA 11.8 用) をインストールする. 但し,Anaconda3を使いたい場合には別手順になる.

    事前に NVIDIA CUDA のバージョンを確認しておくこと(ここでは,NVIDIA CUDA ツールキット 11.8 が前もってインストール済みであるとする).

    PyTorch で,GPU が動作している場合には,「torch.cuda.is_available()」により,True が表示される.

    python -m pip install -U --ignore-installed pip
    python -m pip install -U torch torchvision torchaudio numpy --index-url https://download.pytorch.org/whl/cu118
    python -c "import torch; print(torch.__version__, torch.cuda.is_available())" 
    

    [image]

    Anaconda3を使いたい場合には, Anaconda プロンプト (Anaconda Prompt)管理者として実行し, 次のコマンドを実行する. (PyTorch と NVIDIA CUDA との連携がうまくいかない可能性があるため,Anaconda3を使わないことも検討して欲しい).

    conda install -y pytorch torchvision torchaudio pytorch-cuda=11.8 cudnn -c pytorch -c nvidia
    py -c "import torch; print(torch.__version__, torch.cuda.is_available())" 
    

    サイト内の関連ページ

    関連する外部ページ

MMPretrain のインストール(Windows 上)

インストールの方法は複数ある. ここでは, NVIDIA CUDA ツールキットを使うことも考え, インストールしやすい方法として,ソースコードからビルドしてインストールする方法を案内している.

  1. Windows で,コマンドプロンプト管理者として実行

    コマンドプロンプトを管理者として実行: 別ページ »で説明

  2. OpenMIM, MMPretrain のインストール

    python -m pip install -U --ignore-installed pip
    python -m pip uninstall -y openmim mmcv mmcv-full opencv-python opencv-python-headless
    python -m pip install -U openmim opencv-python
    cd %HOMEPATH%
    rmdir /s /q mmpretrain
    git clone https://github.com/open-mmlab/mmpretrain.git
    cd mmpretrain
    pip install -r requirements.txt
    mim uninstall -y mmpretrain
    mim install mmpretrain
    python -c "import mmpretrain; print(mmpretrain.__version__)"
    mim list
    
  3. インストール終了の確認

    エラーメッセージが出ていないこと.

    (途中省略)
    [image]

MMpretrain を用いた画像分類の実行(Windows 上)

事前学習済みモデル

Mmpretrain の model zoo のページ: https://github.com/open-mmlab/mmpretrain/blob/master/docs/en/model_zoo.md

ここではResNet50 を選ぶことにする. ImageNet-1k データセットで学習済みのモデルである.

  1. Windows で,コマンドプロンプト管理者として実行

    コマンドプロンプトを管理者として実行: 別ページ »で説明

  2. 次の Python プログラムを実行する.

    Python プログラムは,公式ページ https://mmpretrain.readthedocs.io/en/latest/user_guides/inference.html のものを書き換えて使用.

    import os
    import torch
    import mmpretrain
    import mmcv
    
    os.chdir((os.getenv('HOMEPATH') + '\\' + 'mmpretrain'))
    device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
    model = mmpretrain.get_model('configs/resnet/resnet50_8xb32_in1k.py', pretrained=True, device=device)
    img = 'demo/demo.JPEG'  # or img = mmcv.imread(img), which will only load it once
    result = mmpretrain.inference_model(model, img)
    print(result)
    

    [image]
    (以下省略)