NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.8, NVIDIA cuDNN 8, Python 開発環境,TensorFlow のインストール(Ubuntu 上)
- 前準備
- NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.8, NVIDIA cuDNN 8 のインストール(Ubuntu 上)
- Python3 開発用ファイル,pip, setuptools, venv のインストール,Python 開発環境,Python コンソール(Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, spyder)のインストール(Ubuntu 上)
- TensorFlow 2.14,Keras,MatplotLib, Python 用 opencv-python のインストール(Ubuntu 上)
- TensorFlow のプログラム例
【対象とする Ubuntu のバージョン】
NVIDIA CUDA ツールキット 11.8 の Linux 用パッケージレポジトリは,Ubuntu 22.04 と Ubuntu 20.04 向けに提供されている.Ubuntu 24.04 では CUDA 12 系のパッケージレポジトリを使用する.
【サイト内の主な Ubuntu 関連ページ】
【関連する外部ページ】
- TensorFlow の公式のインストール手順: https://www.tensorflow.org/install/pip
- TensorFlow の動作を確認済みのビルド構成(TensorFlow のバージョンと,NVIDIA CUDA ツールキット,NVIDIA cuDNN のバージョンの対応表): https://www.tensorflow.org/install/source#gpu
前準備
Ubuntu のシステム更新
Ubuntu で OS のシステム更新を行うときは, 端末で,次のコマンドを実行する.これは,パッケージ情報を最新の状態に保ち,インストール済みのパッケージをセキュリティアップデートやバグ修正を含めて更新するためである.
# パッケージリストの情報を更新
sudo apt update
# インストール済みのパッケージを包括的に更新 (依存関係も考慮)
sudo apt -y full-upgrade
# カーネルが更新された場合は再起動する
# sudo shutdown -r now
NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.8, NVIDIA cuDNN 8 のインストール(Ubuntu 上)
GPUとは
GPU は,グラフィックス・プロセッシング・ユニット(Graphics Processing Unit)の略である.その並列計算能力から,3次元コンピュータグラフィックス,3次元ゲーム,動画編集,科学計算,ディープラーニングなど,並列処理が必要な分野で利用されている.
NVIDIA ドライバ
NVIDIA ドライバは,NVIDIA 社製の GPU を動作させるのに必要なドライバである.Ubuntu では,後述の ubuntu-drivers コマンドでインストールできる.公式サイトからダウンロードすることもでき,そのときは,使用しているオペレーティングシステムと GPU に適したものを選ぶ.
【関連する外部ページ】 NVIDIA ドライバのダウンロードの公式ページ: https://www.nvidia.com/Download/index.aspx
【インストール手順の詳細説明】
- Windows での NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.8,NVIDIA cuDNN v8.9.7 のインストールと動作確認: 別ページ »で説明
- Ubuntu での NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.8, NVIDIA cuDNN 8 のインストール: 別ページ »で説明
NVIDIA CUDA ツールキット
NVIDIA CUDA ツールキット は,NVIDIA 社が提供する GPU 用のツールキットである.GPU を用いた演算のプログラム作成や動作のための各種機能を備えている.ディープラーニングでも利用されている.
【NVIDIA CUDA ツールキットの動作に必要なもの】
- CUDA 対応の NVIDIA GPU
Ubuntu で NVIDIA のグラフィックス・ボードの有無を確認するには,端末で,次のコマンドを実行する.
lspci | grep -i nvidia | grep VGA - NVIDIA ドライバ
NVIDIA CUDA ツールキットのバージョンごとに,動作に必要なドライバの最小バージョンが定められている.CUDA 11.8 では,Linux 用ドライバのバージョン 520.61.05 以上が必要である.
【関連する外部ページ】
- NVIDIA CUDA ツールキットのアーカイブの公式ページ: https://developer.nvidia.com/cuda-toolkit-archive
- NVIDIA CUDA ツールキット の Linux 版インストールガイド: https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html
- Linux 用の NVIDIA CUDA ツールキットのパッケージレポジトリ: https://developer.download.nvidia.com/compute/cuda/repos/
NVIDIA cuDNN
NVIDIA cuDNN は,NVIDIA CUDA ツールキット上で動作するディープラーニング用ライブラリである.畳み込みニューラルネットワーク (CNN) やリカレントニューラルネットワーク (RNN) などの学習と推論を高速化する.
【NVIDIA cuDNN の動作に必要なもの】
- 対応するバージョンのNVIDIA CUDA ツールキット
cuDNN のパッケージは,CUDA 11 用と CUDA 12 用が別々に配布されている.CUDA 11.8 を使用するときは,パッケージ名に「+cuda11.8」を含むバージョンを選ぶ.
- 公式サイトからファイルをダウンロードするときは,NVIDIA Developer Program メンバーシップへの加入が必要である.本ページで説明する手順では,NVIDIA CUDA パッケージレポジトリから apt でインストールするため,加入は不要である.
NVIDIA Developer Program の公式ページ: https://developer.nvidia.com/developer-program
【関連する外部ページ】
バージョンの組み合わせについての要点
- TensorFlow,
PyTorch を使うためには,
インストールする NVIDIA CUDA ツールキットのバージョン,NVIDIA cuDNN のバージョンの組み合わせを合わせる必要がある.
そのことについて,より詳しい説明は: 別ページ »で説明
- 本ページでは,NVIDIA CUDA ツールキット 11.8,NVIDIA cuDNN 8,TensorFlow 2.14 の組み合わせでインストールする.この組み合わせは TensorFlow の公式のビルド構成表に記載されている.
NVIDIA ドライバのインストール(Ubuntu 上)
- NVIDIA グラフィックス・ボードの確認
CUDA 対応の GPU であるかを確認のため, 端末で,次のコマンドを実行する.
(表示が空になるときは,NVIDIA のグラフィックス・カードが無い可能性がある).
lspci | grep -i nvidia | grep VGA
- 旧バージョンの NVIDIA ドライバとNVIDIA CUDA ツールキットのアンインストール
NVIDIA ドライバ,NVIDIA CUDA ツールキットがインストールされていた場合には,アンインストールする. 端末で,次のコマンドを実行する.
dpkg -l | grep cuda cd /tmp sudo apt --purge remove -y nvidia-* sudo apt --purge remove -y cuda-* sudo apt autoremove -y - カーネルヘッダーと,カーネル開発用パッケージのインストール
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新 sudo apt update sudo apt -y install linux-headers-$(uname -r) - NVIDIA ドライバのインストール操作
「sudo ubuntu-drivers install」を用いて NVIDIA ドライバをインストールする.オープンソースの nouveau ドライバの無効化は,NVIDIA ドライバのパッケージが自動で行う.
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新 sudo apt update sudo apt -y full-upgrade # インストール可能なドライバの一覧を表示(recommended が付いたものが推奨版) ubuntu-drivers devices sudo ubuntu-drivers install sudo update-initramfs -u - Ubuntu システムの再起動
グラフィックスドライバが入れ替わったので,Ubuntu システムを再起動する.
端末で,次のコマンドを実行する.
sudo /sbin/shutdown -r now
- NVIDIA ドライバの確認
システムの再起動後,端末で,次のコマンドを実行し,ドライバ等を確認する.
先頭の「Driver Version」のところに,ドライバのバージョンが表示される.CUDA 11.8 を使用するには 520.61.05 以上であること.
同じ行に表示される「CUDA Version」は,そのドライバが対応する CUDA の最大バージョンであり,インストール済みの NVIDIA CUDA ツールキットのバージョンではない.
nvidia-smi
NVIDIA CUDA ツールキット 11.8 のインストール
- Ubuntu のバージョンを確認
端末で,次のコマンドを実行する.
uname -m lsb_release -sc cat /etc/*release
Ubuntu のバージョンは,VERSION_ID の行で確認できる.
- NVIDIA CUDA パッケージレポジトリを,Ubuntu システムに追加
レポジトリの追加と GPG 公開鍵の登録は,NVIDIA が配布する cuda-keyring パッケージで行う.以前使われていた「apt-key adv」による鍵の登録は,apt-key コマンドの廃止に伴い使用しない.
端末で,次のように操作する.
- Ubuntu 22.04 の場合
cd /tmp wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb sudo dpkg -i cuda-keyring_1.1-1_all.deb sudo apt update - Ubuntu 20.04 の場合
cd /tmp wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.1-1_all.deb sudo dpkg -i cuda-keyring_1.1-1_all.deb sudo apt update
cuda-keyring パッケージのファイル名(バージョン番号の部分)は更新されることがある.次の URL でファイル名を確認できる. - Ubuntu 22.04 の場合
- インストールできる CUDA ツールキットのバージョンの確認
apt-cache search cuda-toolkit-11
- NVIDIA CUDA ツールキット 11.8 のインストール
パッケージ名に cuda-toolkit-11-8 を指定する.「cuda-11-8」を指定した場合は NVIDIA ドライバも同時にインストールされ,先にインストールしたドライバが置き換わることがある.
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新 sudo apt update sudo apt -y install cuda-toolkit-11-8 - NVIDIA CUDA ツールキットにパスを通す設定
端末で,次のコマンドを実行する.
export CUDA_PATH=/usr/local/cuda-11.8 echo 'export CUDA_PATH=/usr/local/cuda-11.8' >> ${HOME}/.bashrc export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:${LD_LIBRARY_PATH} echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:${LD_LIBRARY_PATH}' >> ${HOME}/.bashrc export PATH=/usr/local/cuda-11.8/bin:${PATH} echo 'export PATH=/usr/local/cuda-11.8/bin:${PATH}' >> ${HOME}/.bashrc
- インストールできたことの確認のため,CUDA ツールキットのバージョンを確認
端末で,次のコマンドを実行する.「release 11.8」と表示されることを確認する.
nvcc -V cat /usr/local/cuda-11.8/version.json
NVIDIA cuDNN 8 のインストール
NVIDIA CUDA パッケージレポジトリには,CUDA 11 用と CUDA 12 用の cuDNN 8 が登録されている.CUDA 11.8 用のバージョンを明示して指定する.
- インストールできる cuDNN のバージョンの確認
端末で,次のコマンドを実行する. 「+cuda11.8」が付いたバージョン番号(例: 8.9.7.29-1+cuda11.8)を確認する.
apt list -a libcudnn8 apt list -a libcudnn8-dev - いま確認したバージョンを指定して,NVIDIA cuDNN のインストール
端末で,次のコマンドを実行する. apt-mark hold は,システム更新の際に CUDA 12 用の cuDNN へ自動更新されることを防ぐためである.
# パッケージリストの情報を更新 sudo apt update sudo apt -y install libcudnn8=8.9.7.29-1+cuda11.8 libcudnn8-dev=8.9.7.29-1+cuda11.8 sudo apt-mark hold libcudnn8 libcudnn8-dev - インストールされたパッケージの確認
dpkg -l | grep cudnn
nvcc の動作確認
nvcc の動作確認のため,次のプログラム(SAXPY の計算を行う CUDA プログラム)を使用する.出典: https://developer.nvidia.com/blog/easy-introduction-cuda-c-and-c/
- エディタを開く(ここではエディタとして,「nano」を使っている).
nano hello.cu
- 次のプログラムを記入し,ファイルを保存.
ファイル hello.cu ができる.
#include <stdio.h> __global__ void saxpy(int n, float a, float *x, float *y) { int i = blockIdx.x * blockDim.x + threadIdx.x; if (i < n) y[i] = a * x[i] + y[i]; } int main(void) { int N = 1 << 20; float *x, *y, *d_x, *d_y; x = (float*)malloc(N * sizeof(float)); y = (float*)malloc(N * sizeof(float)); cudaMalloc(&d_x, N * sizeof(float)); cudaMalloc(&d_y, N * sizeof(float)); for (int i = 0; i < N; i++) { x[i] = 1.0f; y[i] = 2.0f; } cudaMemcpy(d_x, x, N * sizeof(float), cudaMemcpyHostToDevice); cudaMemcpy(d_y, y, N * sizeof(float), cudaMemcpyHostToDevice); saxpy<<<(N + 255) / 256, 256>>>(N, 2.0f, d_x, d_y); cudaMemcpy(y, d_y, N * sizeof(float), cudaMemcpyDeviceToHost); float maxError = 0.0f; for (int i = 0; i < N; i++) maxError = fmax(maxError, fabs(y[i] - 4.0f)); printf("Max error: %f\n", maxError); cudaFree(d_x); cudaFree(d_y); free(x); free(y); return 0; }
- ビルドと実行.
「nvcc hello.cu」で a.out というファイルができる. 実行して「Max error: 0.000000」と表示されればOK.
rm -f a.out nvcc hello.cu
./a.out
Python3 開発用ファイル,pip, setuptools, venv のインストール,Python 開発環境,Python コンソール(Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, spyder)のインストール(Ubuntu 上)
Python のインストールは行わない(Ubuntu のシステム Python を用いる.)
- python3 (Ubuntu のシステム Python)
- sudo pip3 (pip 3)
- jupyter qtconsole (Jupyter Qt Console)
- jupyter notebook (Jupyter ノートブック (Jupyter Notebook))
- jupyter lab (Jupyter Lab)
- spyder (spyder)
Python3 開発用ファイル,pip, setuptools, venv のインストール
Python3 開発用ファイル,pip, setuptools, venv のインストールのために,端末で,次のコマンドを実行する.
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install python-is-python3 python3-dev python3-pip python3-setuptools python3-venv build-essential
Ubuntu 23.04 以降では,システム Python に対する pip でのインストールが既定で禁止されており(PEP 668),「externally-managed-environment」というエラーになる.その場合は,次のようにvenv による仮想環境を作成し,その中で pip を使用する.
python3 -m venv ${HOME}/venv
source ${HOME}/venv/bin/activate
pip install -U pip setuptools
Python 開発環境(JupyterLab, Jupyter Qt Console, spyder)
- Python 開発環境,Python コンソール(Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, spyder)のインストール
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新 sudo apt update sudo apt -y install jupyter jupyter-qtconsole spyder3 sudo pip3 install -U jupyterlab jupyter-console jupytext - Ubuntu システムの python3 のバージョンの確認
python3 --version
- Jupyter Qt Console の起動チェック
まず,numpy, matplotlib のインストールのため, 端末で,次のコマンドを実行する.
# パッケージリストの情報を更新 sudo apt update sudo apt -y install python3-numpy python3-matplotlib端末で,次のコマンドを実行する. Jupyter Qt Console が開けば OK.
jupyter qtconsole
- 確認のため,Jupyter Qt Console で,次の Python プログラムを実行してみる.
次のプログラムは,NumPy と Matplotlib を使用して,0 から 6 までの範囲の sin 関数のグラフを描画する.
import numpy as np %matplotlib inline import matplotlib.pyplot as plt x = np.linspace(0, 6, 100) plt.style.use('default') plt.plot(x, np.sin(x))
- Jupyter Lab の起動チェック
端末で,次のコマンドを実行する. Web ブラウザで Jupyter Lab が開けば OK.
jupyter lab - 確認のため,Jupyter Lab で,次の Python プログラムを実行してみる.
そのために「Notebook」の下の「Python 3」をクリックし,次のプログラムを入れて実行する.
import numpy as np %matplotlib inline import matplotlib.pyplot as plt x = np.linspace(0, 6, 100) plt.style.use('default') plt.plot(x, np.sin(x))
- ノートブックの保存のときに,.ipynb ファイルと同時に .py ファイルも保存されるように設定する(この設定を行わないときは .ipynb ファイルのみが保存される).
jupytext の機能を使う.対象のノートブックを指定して,端末で,次のコマンドを実行する.
jupytext --set-formats ipynb,py <ノートブックのファイル名>.ipynbすべてのノートブックに対して既定で有効にするときは,設定ファイルを生成し,設定を追記する.
jupyter lab --generate-config echo 'c.ContentsManager.formats = "ipynb,py"' >> ${HOME}/.jupyter/jupyter_lab_config.py
numpy, scikit-learn のインストール
インストールするには, 端末で,次のコマンドを実行する.
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install python3-numpy python3-sklearn
numpy の動作確認のため Python プログラムの実行
python3
import numpy as np
print(np.sin(0))
exit()
Python の数値演算等の性能確認
Python プログラムの実行
- 2000x2000 の乱数行列 X と Y を生成し,それらの行列積を計算する.
- scikit-learn の PCA を使用して,X の主成分分析を行い,2 次元に次元削減する.
- NumPy の svd 関数を使用して,X の特異値分解を行う.
- scikit-learn の KMeans を使用して,X に対して 10 クラスタの k-means クラスタリングを行う.
各操作の実行時間を測定し,結果を出力するプログラムである.実行時間は,CPU の性能や BLAS ライブラリの構成により異なる.
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)
TensorFlow 2.14,Keras,MatplotLib, Python 用 opencv-python のインストール(Ubuntu 上)
環境変数 TF_FORCE_GPU_ALLOW_GROWTH の設定: true
NVIDIA CUDA ツールキット 11.8, NVIDIA cuDNN 8 の組み合わせで GPU を利用できる TensorFlow は 2.12 から 2.14 である(TensorFlow 2.15 以降は CUDA 12 系を使用する).本ページでは TensorFlow 2.14.1 をインストールする.
Keras は,TensorFlow 2.14 に対応する Keras 2.14 が TensorFlow の依存パッケージとして同時にインストールされる.「pip install keras」を実行すると Keras 3 に更新され,TensorFlow 2.14 と組み合わせて動作しないため,実行しない.
TensorFlow 2.14,Keras,MatplotLib, Python 用 opencv-python のインストール
- 端末を開く
- 既存パッケージのアンインストール操作
バージョンの競合を避けるために,次の操作でアンインストールを行っておく.
sudo apt -y remove python3-keras sudo pip3 uninstall -y tensorflow tensorflow-cpu tensorflow-gpu tensorflow-intel tensorflow-text tensorflow-estimator tf-models-official tf_slim tensorflow_datasets tensorflow-hub keras keras-tuner
- TensorFlow の前提パッケージのインストール
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新 sudo apt update 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 - TensorFlow, numpy, pillow, pydot, matplotlib, opencv-python のインストール
インストールするには, 端末で,次のコマンドを実行する.
# パッケージリストの情報を更新 sudo apt update sudo apt -y install python3-numpy python3-pil python3-pydot python3-matplotlib graphviz sudo apt -y install libopencv-dev libopencv-core-dev python3-opencv libopencv-contrib-dev opencv-data sudo pip3 install -U "tensorflow==2.14.1" tf_slim tensorflow_datasets tensorflow-hub keras-tuner sudo pip3 install git+https://github.com/tensorflow/docs sudo pip3 install git+https://github.com/tensorflow/examples.git - TensorFlow のバージョン確認
「2.14.1」のようにバージョン番号が表示されれば OK.
python3 -c "import tensorflow as tf; print( tf.__version__ )"
- このあと,TensorFlow から GPU が認識できているかの確認
端末で,次のコマンドを実行する.
python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"実行結果が「[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]」のようになれば,GPU が認識できている.空のリスト「[]」が表示されるときは,GPU が認識できていない.そのときは,nvidia-smi でドライバの動作を確認し,libcudnn8 のバージョンが「+cuda11.8」であることを確認する.
- 環境変数 TF_FORCE_GPU_ALLOW_GROWTH の設定
この環境変数を true に設定すると,TensorFlow は 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, Keras, VGG16, InceptionV3, ImageNet による画像分類を試してみる
- 前準備として h5py, pillow のインストール
# パッケージリストの情報を更新 sudo apt update sudo apt -y install python3-h5py python3-pillow - 画像の準備
10.png のようなファイル名で保存しておく
- Python プログラムの実行
cd <画像を置いたディレクトリ> python3 - VGG16, ImageNet による学習済みの重みデータによる画像分類を試してみる
次のプログラムをコピー&ペーストする.
Keras の公式ドキュメントで公開されているものを書き換えて使用.
「'10.png'」のところは,実際に使用する画像ファイル名に書き換えること.
VGG16 の入力画像サイズは 224x224 である.
Python プログラムの実行
Ubuntu では, Python プログラムを動かすために, 「python3」コマンドを使う. Python 開発環境(Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, Spyder, PyCharm など)も便利である. Python 開発環境の説明: 別ページ »にまとめimport numpy as np import tensorflow as tf from tensorflow.keras.applications.vgg16 import VGG16, preprocess_input, decode_predictions m = VGG16(weights='imagenet') img_path = '10.png' img = tf.keras.utils.load_img(img_path, target_size=(224, 224)) x = tf.keras.utils.img_to_array(img) x = np.expand_dims(x, axis=0) x = preprocess_input(x) preds = m.predict(x) print('Predicted:') for p in decode_predictions(preds, top=5)[0]: print("Score {}, Label {}".format(p[2], p[1]))
python3 の終了は「exit()」
- InceptionV3, ImageNet による学習済みの重みデータによる画像分類を試してみる
次のプログラムをコピー&ペーストする.
Keras の公式ドキュメントで公開されているものを書き換えて使用.
「'10.png'」のところは,実際に使用する画像ファイル名に書き換えること.
InceptionV3 の入力画像サイズは 299x299 である.
Python プログラムの実行
Ubuntu では, Python プログラムを動かすために, 「python3」コマンドを使う. Python 開発環境(Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, Spyder, PyCharm など)も便利である. Python 開発環境の説明: 別ページ »にまとめimport numpy as np import tensorflow as tf from tensorflow.keras.applications.inception_v3 import InceptionV3, preprocess_input, decode_predictions m = InceptionV3(weights='imagenet') img_path = '10.png' img = tf.keras.utils.load_img(img_path, target_size=(299, 299)) x = tf.keras.utils.img_to_array(img) x = np.expand_dims(x, axis=0) x = preprocess_input(x) preds = m.predict(x) print('Predicted:') for p in decode_predictions(preds, top=5)[0]: print("Score {}, Label {}".format(p[2], p[1]))
python3 の終了は「exit()」
TensorFlow のプログラム例
TensorFlow がインストールできたかを確認する.
Python プログラムの実行
Python のまとめ: 別ページ »にまとめ
python3
- 次の Python プログラムを実行してみる.
結果として 「tf.Tensor(b'Hello, TensorFlow!', shape=(), dtype=string)」のように表示されるので確認する.
import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') print(hello)
- 今度は,次の Python プログラムを実行する.
結果として 「tf.Tensor(42, shape=(), dtype=int32)」のように表示されるので確認する.
「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 )
- 今度は,次の Python プログラムを実行する.
結果として 「tf.Tensor([[12.]], shape=(1, 1), dtype=float32)」のように表示されるので確認する.
import tensorflow as tf matrix1 = tf.constant([[3., 3.]]) matrix2 = tf.constant([[2.],[2.]]) print( tf.matmul(matrix1, matrix2) )
python3 の終了は「exit()」