序文
ディープラーニングでは通常、モデルをトレーニングする際に繰り返し最適化とトレーニングを行う必要があり、CPU だけでトレーニングすると時間がかかりますが、GPU を使用してトレーニング モデルを高速化できるため、トレーニングのコストを大幅に削減できます。モデルの時間 次の図は、トレーニング モデル中に GPU アクセラレーションを使用した場合と使用しなかった場合にかかる時間の比較です。
この図から、GPU アクセラレーションを使用した方が、GPU アクセラレーションを使用しないモデルのトレーニングよりもはるかに高速であることがわかります。次に、深層学習のトレーニング モデルのプロセスで GPU アクセラレーションを使用する方法を説明します。
注: 次のインストール手順とコマンドは Windows 環境でのインストールのみをサポートしており、後で他のオペレーティング システムのインストール チュートリアルを公開します。
NVIDIA グラフィックス ドライバーをインストールする
まず、検索バーでデバイス マネージャーを検索して開き、ディスプレイ アダプターにあるコンピューター グラフィックス カードのバージョンを見つけます。
次に、NVIDIA の公式 Web サイトでコンピューター グラフィックス カードに対応するドライバーのバージョンを見つけてインストールします。
NVIDIA グラフィックス ドライバーのダウンロード リンク
グラフィック カードの対応するバージョンを見つけて、グラフィック カード ドライバーをダウンロードします。
検索後、対応するバージョンを見つけてダウンロードします
ダウンロード後にインストールする
ここでは、デフォルトのインストール場所を選択し、「OK」をクリックします。その他のフォローアップ手順は比較的簡単で、「次へ」をクリックしてインストールするだけです。問題が発生した場合は、次のリンクを参照して特定のインストール手順を確認してください。 ] NVIDIA
ドライバーをインストールする
最後に、コマンド プロンプトを開き、nvidia-smi コマンドを入力して、コンピューターのグラフィックス カードのドライバー情報を表示します。
nvidia-smi
NVIDIA グラフィック カード ドライバーが正常にインストールされていることを証明するには、次の情報を参照してください。
CUDA と cuDNN をインストールする
序章
CUDA と cuDNN はどちらも、NVIDIA によって発売されたディープ ラーニング開発ツールです。
CUDA は Compute Unified Device Architecture の略で、開発者が C++、Fortran、Python などのプログラミング言語を使用して NVIDIA GPU でコードを実行できるようにする、NVIDIA によって策定された汎用並列コンピューティング プラットフォームおよびプログラミング モデルです。CUDA Toolkit は、GPU アクセラレーション ライブラリ、デバッグおよび最適化ツール、C/C++ コンパイラ、ランタイム ライブラリを含む、CUDA プラットフォームに基づく開発ツールキットです。
cuDNN の正式名は CUDA Deep Neural Network library で、畳み込みニューラル ネットワークやリカレント ニューラル ネットワークを含むさまざまなニューラル ネットワーク モデルをサポートし、一般的なディープ ラーニング フレームワークと互換性のある高性能 GPU アクセラレーション ディープ ラーニング ライブラリです。 TensorFlow、PyTorch、Caffe2 などを統合します。cuDNN は、畳み込み、プーリング、正規化、活性化などの一般的な操作を含む、高度に最適化された実装を提供しており、cuDNN を使用することで、深層学習タスクの処理速度を高速化できます。
バージョンの互換性を確認する
バージョンの互換性の問題を解決するために何度もインストールとアンインストールを繰り返したため、バージョンの互換性は GPU アクセラレーションにとって非常に重要です。
最後に、TensorFlow と NVIDIA の公式ドキュメントで、対応する GPU、CUDA、cuDNN、Python のバージョンを見つけました。以下のリンクを参照してバージョンを選択できます。
TensorFlow 公式ドキュメントNVIDIA
公式ドキュメント
各 CUDA バージョンでサポートされる GPU モデルのリストは、NVIDIA の公式ドキュメントに記載されています。ページの左側のメニューで、必要な CUDA バージョンを選択し、[サポートされているオペレーティング システム] リンクをクリックして、そのバージョンでサポートされているオペレーティング システムを表示します。「サポートされている CUDA GPU」リンクをクリックすると、このバージョンでサポートされている GPU モデルのリストが表示されます。
この表に従って、インストールする CUDA、cuDNN、Python、tensorflow-GPU のバージョンを選択することもできます
ブロガーの各バージョンの対応情報:NVIDIA GeForce GTX 1080、NVIDIA GeForce GTX 1650、Python3.9.0、CUDA 11.2.0、cuDNN 8.1.0、tensorflow-gpu 2.6.0
CUDAをインストールする
CUDA 11.2 のダウンロード リンク: CUDA 11.2.0
最初にCUDA対応システムバージョン情報を選択します
最後にクリックしてダウンロードします
ダウンロードが完了したら、exeファイルをクリックしてインストールします
ここでは、デフォルトのインストール場所を選択します。
[OK] をクリックして待ちます。
次に、CUDA インストール インターフェイスに入ります。
システムチェック --> 使用許諾契約に同意 --> カスタムオプションを選択 --> インストール完了
インストール プロセス中に、カスタム インストール オプションを選択することが重要です。
関連するすべての構成を確認します。
最後に、インストールが完了し、「閉じる」をクリックします。
他に特に注意すべき点はありませんが、その他の問題が発生した場合は、関連リンクを参照するか、コメント欄にメッセージを残していただければ、順次回答させていただきます。
注: 環境変数は、インストール プロセス中に自動的に追加されます。インストールが完了したら、コンピューターを再起動する必要があります。デフォルトの
インストール パスは、C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2 です。
コンピューターを再起動した後、コマンド プロンプトに nvcc -V コマンドを入力して、CUDA が正常にインストールされているかどうかを確認します。
上記の情報は、CUDA が正常にインストールされたことを証明するために表示されます。
cuDNNをインストールする
ダウンロード リンクをクリックすると、対応するバージョンが表示されます。ダウンロードする前に、NVIDIA 開発者プログラムに登録してログインし、基本的な個人情報を入力する必要があります。
以下では、例として cuDNN 8.1.0 をダウンロードしてインストールします。
ダウンロードが完了したら、解凍してcudaフォルダを取得します。
このフォルダーを開くと、bin、include、lib の 3 つのフォルダーがあることがわかります。
以前の CUDA 11.2.0 インストール パス: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2 を見つけてフォルダーを開くと、対応するフォルダーが 3 つ見つかります。
cudnn 内の 3 つのフォルダーを cuda に対応するフォルダーにコピーします。
対応するフォルダー内のすべてのコンテンツを選択し、コピーして cuda フォルダーに貼り付けることができます
環境変数を構成する
「この PC」を右クリックし、「プロパティ」をクリックし、「システムの詳細設定」をクリックします。
環境変数をクリックし、システム環境変数でパス環境変数を見つけ、クリックして入力します
以下をパス環境変数に追加します
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
通常、最初の 2 つの環境変数は CUDA のインストール時に自動的に構成されているため、後の 2 つを追加するだけで済みます。
cuDNN のバージョンが異なるとバージョン番号を変更できる
最後に、パス内のこれら 4 つの場所を確認して、環境変数の構成が成功したことを証明できます。
cuDNN が正常にインストールされていることを確認します
ターミナル コマンド プロンプトを開き (win+r を押して cmd を入力)、
CUDA ファイル パスを入力します: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite
cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite
deviceQuery.exeを実行すると、次のレンダリングが表示されます。
引き続き、bandwidthTest.exeを実行すると、次の効果図が表示されます。
最後に、cuDNN が正常にインストールされました。
TensorFlow で利用可能な GPU を確認する
Python3.9.0をインストールする
リンクをクリックしてダウンロードしてインストールします。インストールが完了したら、コマンド プロンプトで「python」と入力して 、現在の Python バージョンを表示します。
入力: exit()は、Python コンパイル環境を終了します。
tensorflow-gpu 2.6.0 をインストールする
コマンド プロンプトで次のように入力します: pip install tensorflow-gpu 2.6.0インストールが完了するまで待ちます。
ご質問がございましたら、コメント欄にメッセージを残してください
最後に、ターミナルに「pip list」と入力して、インストールされている tensorflow-gpu 2.6.0 を表示します。
利用可能なGPUを確認する
ターミナルに次のコードを入力して、Python コンパイル環境または他のコンパイラに入り、利用可能な GPU を確認できます。
import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU')))
出力結果が >0 である限り、使用可能な GPU があることが証明されます。
コードのテスト
エディターで test_model.py ファイルを作成し、次のコードを入力して GPU アクセラレーション効果を表示します。
import tensorflow as tf
# 列出可用的 GPU 设备
print(tf.config.list_physical_devices('GPU'))
# 设置 TensorFlow 使用 GPU 进行计算
gpu_devices = tf.config.list_physical_devices('GPU')
if gpu_devices:
for device in gpu_devices:
tf.config.experimental.set_memory_growth(device, True)
# 加载数据集
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
# 定义模型
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10)
])
# 编译模型
loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True)
model.compile(optimizer='adam', loss=loss_fn, metrics=['accuracy'])
# 训练模型
model.fit(x_train, y_train, epochs=5)
# 评估模型
model.evaluate(x_test, y_test, verbose=2)
操作結果:
要約する
インストールプロセスで最も重要なことはバージョンの互換性であり、公式ドキュメントを確認してください。最後に、ご質問がございましたら、コメント欄にメッセージを残してください。返信して問題の解決をお手伝いします。