今日から、TensorFlow 2.xの学習を正式に開始したとしても、うまくやりたい場合は、まずツールを研ぎ澄ます必要があります。前回の記事では、開発を容易にするために、Linuxサーバーを用意し、RTX3070グラフィックカードを購入したことにも触れました。ハードウェア機器はすでに設置されているので、今日はTensorFlow2.xを提供する必要があります。コーディング環境が構成されています。「TensorFlow2.xを一緒に学ぼう」の列に従って、関連するコンテンツのロックを解除してください〜
目次
2.NVIDIAディスクリートグラフィックスドライバーをインストールします
2.2カーネルバージョンがソースパッケージバージョンと一致しているかどうかを確認します
2.3NVIDIAドライバーパッケージをダウンロードしてアップロードする
5.3PyCharmがPython仮想環境をリモートで呼び出す
1.Anacondaのダウンロードとインストール
1.1インストールパッケージをダウンロードする
最初にPythonをインストールする必要があります。便宜上、Anaconda3を使用します。まず、Anacondaの公式Webサイトにアクセスして、Anacondaをダウンロードする必要があります。ここでは、以下に示すように、Anaconda3-5.0.1-Linux-x86_64.shをダウンロードしました。
ダウンロードしたインストールパッケージをLinuxに対応するディレクトリにアップロードします。
1.2インストールウィザードを実行します
1.次のコマンドを使用してインストールウィザードを実行します。
bash Anaconda3-5.0.1-Linux-x86_64.sh
2.次の契約に同意し、Enterキーを押します
3.次のコンテンツが表示されるまで[はい]を選択します
4.インストールパスを選択します。ここではデフォルトのインストールパスを選択し、Enterキーを押します。
/root/anaconda3
5.次に、インストールに時間がかかります。インストールプロセス中に、環境変数に追加するかどうかが表示されます。[はい]を選択します。次の画面が表示されたら、インストールは完了です。
1.3インストールが成功したかどうかをテストします
1.サーバーを再起動します
reboot
2.対応するバージョンを確認します
上記はAnacondaのインストールプロセスで、非常に簡単です。次は、NVIDIAドライバーのインストールです。
2.NVIDIAディスクリートグラフィックスドライバーをインストールします
RTX3070グラフィックカードを使用するには。最初にグラフィックカードドライバをインストールする必要があります。NVIDIAグラフィックスドライバーをインストールする方法を見てみましょう。
2.1設置ベースの依存環境
ここで、すべてのユーザーがこの手順を実行する必要があるわけではないことに注意してください。これらの依存パートナーが既に存在する場合は、この手順を直接無視できます。
yum -y install gcc kernel-devel kernel-headers
2.2カーネルバージョンがソースパッケージバージョンと一致しているかどうかを確認します
1.カーネルバージョンを確認します
ls /boot | grep vmlinu
2.ソースパッケージのバージョンを確認します
rpm -qa | grep kernel-devel
ここで、カーネルのバージョンがソースコードパッケージのバージョンと一致している必要があることに注意してください。一貫していない場合、インストールプロセス中にエラーが報告されます。一貫性がない場合は、ここをクリックしてダウンロードできます。
2.3NVIDIAドライバーパッケージをダウンロードしてアップロードする
1.まず、NVIDIAの公式Webサイトにアクセスして、対応するドライバーパッケージをダウンロードする必要があります。ここをクリックして、NVIDIAの公式Webサイトにジャンプします。以下に示すように、関連情報を入力し、[検索]をクリックします。
2.クリックしてダウンロード
3.ダウンロードしたドライバーパッケージを対応するディレクトリにアップロードし、アクセス許可を変更します。
chmod -R 777 ./NVIDIA-Linux-x86_64-455.45.01.run
2.4NVIDIAドライバーパッケージをインストールする
最も重要なステップは、ドライバーパッケージをインストールすることです。インストールの前に、多くのインストールチュートリアルを探しましたが、これをブロックし、サーバーを再起動して有効にする必要がありました。たぶん私はもっと勇気があり、常に不可能に挑戦したいと思っています。運が良かったのかもしれません。要するに、一度は正常にインストールできたので、今までのことを見てみましょう。
2.4.1グラフィカルインターフェイスを閉じる
Linuxシステムをインストールするとき、私はグラフィカルインターフェイスを維持し、インストールを最小化することを選択しませんでした。最小限のインストールの場合は、この手順を無視して、次の手順に直接進むことができます。最小限のインストールがない場合は、NVIDIAドライバーパッケージをインストールする前に、グラフィカルインターフェイスを閉じる必要があります。コマンドは次のとおりです。
systemctl set-default multi-user.target
グラフィカルインターフェイスを閉じた後、サーバーを再起動します(再起動)。
2.4.2ドライバパッケージをインストールします
./NVIDIA-Linux-x86_64-455.45.01.run
インストールが完了するのを待ちます。
2.4.3グラフィカルインターフェイスを開く
次のコマンドを使用して、グラフィカルインターフェイスを再度開きます。
systemctl set-default graphical.target
同様に、サーバーを再起動する必要があります。
2.4.4インストールが成功したかどうかをテストします
ターミナルで次のコマンドを入力します。
nvidia-smi
インストールに問題がない場合は、次のインターフェイスが表示されます。
さて、これまでのところ、NVIDIAドライバーも正常にインストールされています。次に、CUDAのインストールを見てみましょう。
3、CUDAツールキットをインストールします
3.1インストールパッケージをダウンロードする
1.同様に、我々はをクリックし、対応するインストールパッケージをダウンロードするには、公式ウェブサイトに行く必要があり、ここで、公式サイトにジャンプし、クリックしてダウンロード。
2.対応するターゲットプラットフォームを選択します
次に、ダウンロード手順が自動的に以下にポップアップ表示されます。
3.ターミナルで次のコマンドを実行してダウンロードします
wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.run
3.2CUDAをインストールする
3.2.1権限の変更
次のコマンドを使用して、インストールパッケージの実行権限を変更します。
chmod -R 777 ./cuda_11.1.0_455.23.05_linux.run
3.2.2インストール
./cuda_11.1.0_455.23.05_linux.run
インストールが完了すると、次のコンテンツが画面に表示されます。
Please make sure that
- PATH includes /usr/local/cuda-10.1/
- LD_LIBRARY_PATH includes /usr/local/cuda-10.1/lib64, or, add /usr/local/cuda-10.1/lib64 to /etc/ld.so.conf and run ldconfig as root
これは、環境変数を変更し、次のコンテンツを〜/ .bashrcファイルに追加するように求めるメッセージです。
# add nvcc compiler to path
export PATH=$PATH:/usr/local/cuda-11.1/bin
# add cuBLAS, cuSPARSE, cuRAND, cuSOLVER, cuFFT to path
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.1/lib64:/root/anaconda3/pkgs/cudatoolkit-11.0.221-h6bb024c_0/lib
3.2.3インストールが成功したかどうかをテストします
/ usr / local / cuda / extras / demo_suiteディレクトリで次のコマンドを実行します。
./bandwidthTest
次の図が表示された場合、インストールは成功しています。
もちろん、nvcc-Vを入力して以下を表示することもできます。
CUDAをインストールした後、cuDNNをインストールする必要があります。ディープニューラルネットワークライブラリ(cuDNN)は、GPUによって高速化されたディープニューラルネットワークプリミティブライブラリです。cuDNNは、標準ルーチン(畳み込み層、プーリング層、正規化層、順方向および逆方向伝搬用のアクティブ化層など)の実装を大幅に最適化できます。
第四に、cuDNNのインストール
4.1インストールパッケージをダウンロードする
同様に、あなたは、対応するインストールパッケージをダウンロードするには、公式ウェブサイトに行かなければならない。クリックしてくださいここにダウンロードする。cuDNNは、ダウンロードに登録する必要があり、ダウンロードはCUDAのバージョンに対応する必要があることに留意すべきです。
ダウンロードが完了したら、tarパッケージを対応するディレクトリにアップロードします。
4.2cuDNNをインストールする
4.2.1解凍
次のコマンドを実行して、ディレクトリ内のtarパッケージを解凍します。
tar -zxvf ./cudnn-11.1-linux-x64-v8.0.5.39.tgz -C ../modules/
4.2.2対応するファイルをコピーする
次の方法で、対応するファイルをcudaに対応するディレクトリにコピーします。
cp /opt/modules/cuda/include/cudnn.h /usr/local/cuda/include/
cp /opt/modules/cuda/lib64/libcudnn* /usr/local/cuda/lib64/
4.2.3ファイルのエンパワーメント
対応するファイル権限を付与します。
chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
cuDNNのインストールがここにある場合でも、インストールは少し簡単です。次のステップはTensorFlowのインストールです。
5、TensorFlowをインストールします
5.1TensorFlowをインストールする
1.最初にcondaを使用して、新しい仮想環境(xzw)を作成します
conda create -n xzw
2.仮想環境に入ります
source activate xzw
3. TensorFlowをインストールします。ここではcondaを使用してインストールできますが、ダウンロード速度が非常に遅いため、ここではpipインストールを使用します。
pip install tensorflow
tensorflow-gpuを意図的にインストールする必要はなく、直接tensorflowをインストールするだけです。もちろん、バージョン要件がある友人は、次のようにインストール時にバージョンを指定できます。
pip install tensorflow==2.4.0
バージョンを指定しない場合、デフォルトで最新バージョンがインストールされます。インストールが完了するのを待ちます。condalistコマンドを使用して、インストールされているすべてのコンテンツを一覧表示できます。
4.次のコマンドを使用して、仮想環境を終了します
conda deactivate
5.次のコマンドを使用して、仮想環境を削除します
conda remove -n xzw --all
5.2全体的なテスト
最後に、全体的なテストの時間です。すべての環境が基本的にセットアップされたので、全体的なテストを開始できます。簡単なTensorFlowコードを記述して、コードの実行速度を向上させるためにGPUを使用しているかどうかを確認します。 。以下に示すように、テストコードは比較的単純です。
import tensorflow as tf
from tensorflow.keras import *
(train_images, train_labels), (test_images, test_labels) = tf.keras.datasets.mnist.load_data(
path='mnist.npz'
)
network = tf.keras.models.Sequential()
network.add(tf.keras.layers.Dense(512, activation='relu', input_shape=(28 * 28,)))
network.add(tf.keras.layers.Dense(10, activation='softmax'))
network.compile(optimizer='rmsprop',
loss='categorical_crossentropy',
metrics=['accuracy'])
train_images = train_images.reshape((60000, 28 * 28))
train_images = train_images.astype('float32') / 255
test_images = test_images.reshape((10000, 28 * 28))
test_images = test_images.astype('float32') / 255
train_labels = tf.keras.utils.to_categorical(train_labels)
test_labels = tf.keras.utils.to_categorical(test_labels)
network.fit(train_images, train_labels, epochs=5, batch_size=128)
test_loss, test_acc = network.evaluate(test_images, test_labels)
print('test_acc:', test_acc)
上記のコードをtest.pyファイルに保存し、python test.pyを実行し、次のコマンドを使用してGPUリソースを監視します。
watch -n 0.1 nvidia-smi
上の図から、GPUが加速していることがわかります。これは、環境構成に問題がないことを示しており、最終的にコードを楽しく押すことができます。ただし、別の問題があります。Linuxシステムでコードをデバッグするのは非常に不便なので、次の操作を使用できます。
5.3PyCharmがPython仮想環境をリモートで呼び出す
1. [新しいプロジェクト]をクリックします
2.通訳を追加する
3.サーバーに対応するホスト、ポート、ユーザー名、およびその他の情報を入力し、[次へ]をクリックします。
4.パスワードを入力します
5.サーバーに対応するPython仮想環境の場所を見つけて、パスを追加します。
6.プロジェクトが保存されているパスを変更します。このパスは、ローカルで記述されたコードがLinuxサーバーに同期されるパス、つまりプロジェクトがサーバーに保存されるパスです。[作成]をクリックして、プロジェクトの作成を完了します。
この場合、ローカルでコードを記述してデバッグし、問題がなければサーバー上で実行することができます。今回は、本当に楽しくコードを書くことができます。
この時点で、TensorFlow 2.xコード環境は基本的にセットアップされており、TensorFlow 2.xを一緒に学習するのを待っています。この記事は終わりに近づいています。このプロセスで発生した問題があれば、メッセージを残してください。皆さんが遭遇した問題を見てみましょう〜