Lab学习笔记02:Tensorflow下载与安装及第一个训练神经网络模型
步骤过程参照:http://wiki.jikexueyuan.com/project/tensorflow-zh/get_started/os_setup.html#install_cuda
一、安装过程
我选择了文档更推荐的基于VirtualEnv 的安装方法。
我是macOS系统,这里列举的是mac的安装方法。
1. 安装必备工具
$ sudo easy_install pip # 如果还没有安装 pip $ sudo pip install --upgrade virtualenv
由于我在之前的课程中,安装过pip和virtualenv,所以该步骤跳过。
2. 建立全新的virtualenv 环境. 为了将环境建在 ~/tensorflow
目录下, 执行:
$ virtualenv --system-site-packages ~/tensorflow $ cd ~/tensorflow
3. 激活 virtualenv:
$ source bin/activate # 我使用的是bash (tensorflow)$ # 终端提示符应该发生变化
4. 在 virtualenv 内, 安装 TensorFlow:
(tensorflow)$ pip install --upgrade <$url_to_binary.whl>
注意:在这里我遇到了问题,在Stack Overflow上找到解决方案,将<$url_to_binary.whl>改为如下方式成功:
(tensorflow)$ pip install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.8.0-py2-none-any.whl
5. 运行TensorFlow程序
6. 当时使用完TensorFlow:
(tensorflow)$ deactivate # 停用 virtualenv
二、训练第一个 TensorFlow 神经网络模型
我利用 tensorflow/lib/python2.7/site-packages/tensorflow/models/image/mnist文件夹中的convolutional.py文件,训练模型得到如下结果:
/Users/yang/tensorflow/bin/python2.7 /Users/yang/tensorflow/lib/python2.7/site-packages/tensorflow/models/image/mnist/convolutional.py Successfully downloaded train-images-idx3-ubyte.gz 9912422 bytes. Successfully downloaded train-labels-idx1-ubyte.gz 28881 bytes. Successfully downloaded t10k-images-idx3-ubyte.gz 1648877 bytes. Successfully downloaded t10k-labels-idx1-ubyte.gz 4542 bytes. Extracting data/train-images-idx3-ubyte.gz Extracting data/train-labels-idx1-ubyte.gz Extracting data/t10k-images-idx3-ubyte.gz Extracting data/t10k-labels-idx1-ubyte.gz Initialized! Step 0 (epoch 0.00), 5.3 ms Minibatch loss: 12.054, learning rate: 0.010000 Minibatch error: 90.6% Validation error: 84.6% Step 100 (epoch 0.12), 456.5 ms Minibatch loss: 3.269, learning rate: 0.010000 Minibatch error: 6.2% Validation error: 6.9% Step 200 (epoch 0.23), 403.6 ms Minibatch loss: 3.474, learning rate: 0.010000 Minibatch error: 12.5% Validation error: 3.6% Step 300 (epoch 0.35), 440.9 ms Minibatch loss: 3.215, learning rate: 0.010000 Minibatch error: 7.8% Validation error: 3.4% Step 400 (epoch 0.47), 428.5 ms Minibatch loss: 3.224, learning rate: 0.010000 Minibatch error: 6.2% Validation error: 2.8% Step 500 (epoch 0.58), 419.7 ms Minibatch loss: 3.303, learning rate: 0.010000 Minibatch error: 7.8% Validation error: 2.6% Step 600 (epoch 0.70), 352.2 ms Minibatch loss: 3.212, learning rate: 0.010000 Minibatch error: 6.2% Validation error: 2.7% Step 700 (epoch 0.81), 398.7 ms Minibatch loss: 3.008, learning rate: 0.010000 Minibatch error: 3.1% Validation error: 2.4% Step 800 (epoch 0.93), 365.9 ms Minibatch loss: 3.082, learning rate: 0.010000 Minibatch error: 6.2% Validation error: 2.1% Step 900 (epoch 1.05), 382.6 ms Minibatch loss: 2.941, learning rate: 0.009500 Minibatch error: 3.1% Validation error: 1.5% Step 1000 (epoch 1.16), 400.3 ms Minibatch loss: 2.858, learning rate: 0.009500 Minibatch error: 0.0% Validation error: 1.8% ......