【このページの目次】
サイト内の関連ページ
先人に感謝.
このWebページに記載しているプログラムは https://github.com/tensorflow/tensorflow#download-and-setup をもとに作成
参考 Web ページ
Ubuntu で OS のシステム更新を行うときは, 端末で,次のコマンドを実行.
sudo apt update sudo apt -yV upgrade sudo /sbin/shutdown -r now
GPU とは,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある.
Ubuntu での NVIDIA グラフィックスドライバのインストール: 別ページで説明している.
CUDA とは,NVIDIA社が提供している GPU 用のプラットフォームである.
NVIDIA CUDA ツールキットの URL: https://developer.nvidia.com/cuda-toolkit-archive
指定されているバージョンより高いものは使わない. その根拠は次のページ. URL: https://www.tensorflow.org/install/source#common_installation_problems
Ubuntu での NVIDIA CUDA ツールキットのインストール: 別ページで説明している.
NVIDIA 機械学習パッケージレポジトリからダウンロードして,インストールするという手順を説明する.
NVIDIA 機械学習パッケージレポジトリの URL: https://developer.download.nvidia.com/compute/machine-learning/repos/
NVIDIA 機械学習パッケージレポジトリの URL: https://developer.download.nvidia.com/compute/machine-learning/repos/
Ubuntu 20.04 の場合は,https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu2004/x86_64/ で確認.
スクロールして「nvidia-machine-learning-repo ・・・」を探す
端末で,次のように操作する. このとき,確認したファイル名を指定すること.
Ubuntu 20.04 での手順を示す.他のバージョンの Ubuntu でも同様の手順になる.
cd /tmp wget https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu2004/x86_64/nvidia-machine-learning-repo-ubuntu2004_1.0.0-1_amd64.deb sudo dpkg -i nvidia-machine-learning-repo-ubuntu2004_1.0.0-1_amd64.deb sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/7fa2af80.pub sudo apt update
apt-cache search cudnn
Ubuntu 20.04 での手順を示す.他のバージョンの Ubuntu でも同様の手順になる.
sudo apt -y install libcudnn8 libcudnn8-dev
dpkg -l | grep cuda
Python 関係の使い方のまとめ.
インストールするには, 端末で,次のコマンドを実行.
sudo apt -y install python3-dev python3-pip python3-setuptools python3-venv
インストールするには, 端末で,次のコマンドを実行.
sudo pip3 uninstall ptyprocess sniffio terminado tornado jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder sudo apt -y install jupyter jupyter-qtconsole spyder3 sudo apt -y install python3-ptyprocess python3-sniffio python3-terminado python3-tornado sudo pip3 install -U jupyterlab nteract_on_jupyter
端末で,次のコマンドを実行. Jupyter QtConsole が開けば OK.
jupyter qtconsole
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
import warnings
warnings.filterwarnings('ignore') # Suppress Matplotlib warnings
x = np.linspace(0, 6, 100)
plt.plot(x, np.sin(x))
端末で,次のコマンドを実行. ntetact が開けば OK.
jupyter nteract
そのために「Start a new notebook」の下の「Python」をクリック,次のプログラムを入れ実行.
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
import warnings
warnings.filterwarnings('ignore') # Suppress Matplotlib warnings
x = np.linspace(0, 6, 100)
plt.plot(x, np.sin(x))
インストールするには, 端末で,次のコマンドを実行.
sudo apt -y install python3-numpy python3-sklearn
numpy の動作確認
python3 import numpy as np print(np.sin(0)) exit()
import time import numpy import numpy.linalg import sklearn.decomposition import sklearn.cluster X = numpy.random.rand(2000, 2000) Y = numpy.random.rand(2000, 2000) # 行列の積 a = time.time(); Z = numpy.dot(X, Y); print(time.time() - a) # 主成分分析 pca = sklearn.decomposition.PCA(n_components = 2) a = time.time(); pca.fit(X); X_pca = pca.transform(X); print(time.time() - a) # SVD a = time.time(); U, S, V = numpy.linalg.svd(X); print(time.time() - a) # k-means a = time.time(); kmeans_model = sklearn.cluster.KMeans(n_clusters=10, random_state=10).fit(X) labels = kmeans_model.labels_ print(time.time() - a)
実行結果の例
設定の要点
環境変数 TF_FORCE_GPU_ALLOW_GROWTH の設定: true
トラブルの可能性を減らすために,次の操作でアンインストールを行っておく.
sudo pip3 uninstall -y tensorflow tensorflow-cpu tensorflow-gpu tensorflow_datasets tensorflow-hub keras
端末で,次のコマンドを実行.
sudo pip3 uninstall six wheel astunparse tensorflow-estimator numpy keras-preprocessing absl-py wrapt gast flatbuffers grpcio opt-einsum protobuf termcolor typing-extensions google-pasta h5py tensorboard-plugin-wit markdown werkzeug requests-oauthlib rsa cachetools google-auth google-auth-oauthlib tensorboard tensorflow sudo apt -y install python3-six python3-wheel python3-numpy python3-grpcio python3-protobuf python3-termcolor python3-typing-extensions python3-h5py python3-markdown python3-werkzeug python3-requests-oauthlib python3-rsa python3-cachetools python3-google-auth
インストールするには, 端末で,次のコマンドを実行.
sudo apt -y install python3-numpy python3-pil python3-pydot python3-matplotlib sudo apt -y install libopencv-dev libopencv-core-dev python3-opencv sudo pip3 install -U tensorflow tf-models-official tensorflow_datasets tensorflow-hub keras keras-tuner sudo pip3 install git+https://github.com/tensorflow/docs sudo pip3 install git+https://github.com/tensorflow/examples.git
バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.
python3 -c "import numpy; print( numpy.__version__ )"
バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.
python3 -c "import tensorflow as tf; print( tf.__version__ )"
python3 -c "from tensorflow.python.client import device_lib; print(device_lib.list_local_devices())"
次のように「device_type: "GPU"」があれば,GPUが認識できている.エラーメッセージが出ていないことを確認しておくこと.
環境変数の名前 TF_FORCE_GPU_ALLOW_GROWTH 値 true
端末で,次のコマンドを実行.
export TF_FORCE_GPU_ALLOW_GROWTH=true
echo 'export TF_FORCE_GPU_ALLOW_GROWTH=true' >> ${HOME}/.bashrc
TensorFlow がインストールできたかを確認したい.
Python プログラムを動かす.
※ Python プログラムを動かすために, Windows では,「python」コマンドを使う. Ubuntu では「python3」コマンドを使う.
Python プログラムを動かすために, pythonやpython3などのコマンドを使う. あるいは, 開発環境や Python コンソール(Jupyter Qt Console,spyder,PyCharm,PyScripter など)の利用も便利である.
結果として 「b'Hello, TensorFlow!'」のように表示されるので確認する.
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
print(hello)
結果として 「42」のように表示されるので確認する.
「tf.add(a, b)」と「a + b」は,同じ結果になる
import tensorflow as tf a = tf.constant(10) b = tf.constant(32) print( tf.add(a, b) ) print( a + b )
結果として 「[[ 12.]]」のように表示されるので確認する.
import tensorflow as tf matrix1 = tf.constant([[3., 3.]]) matrix2 = tf.constant([[2.],[2.]]) print( tf.matmul(matrix1, matrix2) )