はじめに
MacにTensorflow 2.0 Alphaの動作環境を構築した過程を記載します。
。
基本的にはこちらの公式チュートリアルの流れに沿って導入しています。
本記事は概要版となります。
詳細は最新版TensorFlow (2.0 Alpha) 動作環境構築 : Mac編(詳細版)で紹介しています。
構成
MacBook Pro (13-inch, 2016, Two Thunderbolt 3 ports)
TensorFlowインストール事前準備
アプリケーション→ユーティリティ→ターミナル.appを開き、以下を1行ずつ実行してください。
Python諸々のバージョン確認
python3 --version
pip3 --version
virtualenv --version
なお、現時点(2019/5/24)での私の環境では以下の通りになりました。
Python 3.7.3
pip 19.0.3
virtualenv 16.6.0
仮想環境の作成(推奨)
Mac本体のシステムから独立した環境を構築したほうが、色々といじるのに便利なため、virtualenvというツールを使った仮想環境の導入をします。
virtualenv --system-site-packages -p python3 ./venv
source ./venv/bin/activate
pip install --upgrade pip
pip list # 仮想環境内でインストールされているパッケージを表示
仮想環境を終了する場合は以下を実行してください。
なおTensorFlow使用時は有効になっている必要があります。
deactivate
TensorFlow 2.0 Alpha導入
以下コマンドを実行するとインストールが開始されます。
pip install --upgrade tensorflow==2.0.0-alpha0
動作確認
以下を入力し対話モードに入ります。
python
Tensorflowをtfとして読み込みます。
import tensorflow as tf
手書き数字のデータセットであるMNISTを読み込みます。
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
tf.keras.Sequentialモデルをビルドします。
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, activation='softmax')
])
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
学習と評価を行います。
model.fit(x_train, y_train, epochs=5)
model.evaluate(x_test, y_test)
このような感じで学習と評価がなされていれば導入完了です。
>>> model.fit(x_train, y_train, epochs=5)
Epoch 1/5
60000/60000 [==============================] - 4s 59us/sample - loss: 0.3015 - accuracy: 0.9122
Epoch 2/5
60000/60000 [==============================] - 3s 54us/sample - loss: 0.1462 - accuracy: 0.9564
Epoch 3/5
60000/60000 [==============================] - 3s 54us/sample - loss: 0.1100 - accuracy: 0.9662
Epoch 4/5
60000/60000 [==============================] - 3s 57us/sample - loss: 0.0910 - accuracy: 0.9722
Epoch 5/5
60000/60000 [==============================] - 3s 53us/sample - loss: 0.0765 - accuracy: 0.9760
<tensorflow.python.keras.callbacks.History object at 0x1123d6748>
>>>
>>> model.evaluate(x_test, y_test)
10000/10000 [==============================] - 0s 32us/sample - loss: 0.0730 - accuracy: 0.9781
[0.07304580859981943, 0.9781]
まとめ
TensorFlow 2.0 Alphaの導入、サンプル動作まで一通り実現できました。
今後は、オリジナルの学習モデルの構築を目標に勉強したいと思います。
本記事は概要版となります。
詳細は最新版TensorFlow (2.0 Alpha) 動作環境構築 : Mac編(詳細版)で紹介しています。