记录一下我的tensorflow学习之旅,希望以后能少走弯路
一、前言
前提最好是对python和神经网络有一定的熟悉1、记住tensorflow的官网,tensorflow的官网非常完善,从安装,开发教程,API手册,社区都齐全了,社区也非常活跃
先从tensorflow的中文社区学习,把mnist的初级和高级教程都看完就可以
TensorFlow 官方文档中文版:http://wiki.jikexueyuan.com/project/tensorflow-zh/
TensorFlow 中文社区:http://www.tensorfly.cn/tfdoc/get_started/introduction.html
先对tensorflow有一点的了解后再推荐去看一个比较简单轻松的视频教程
2、优酷上一个tensorflow 的中文视频教程
莫烦 tensorflow 神经网络 教程:http://i.youku.com/i/UMTYyNjI2NDYw?spm=a2h0j.8191423.subscription_wrap.DD~A
二、安装
下面再讲一讲安装的事情
tensorflow的安装很简单,官网上介绍了四种方式,下面只介绍两种常见的安装方法:pip安装法和源编译法
官方安装教程:https://www.tensorflow.org/install/
2.1、pip安装法
sudo apt-get install python-pip python-dev
pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.1-cp27-none-linux_x86_64.whl
注意:
1、最后的URL是要根据自己的Python版本,操作系统以及想要下载的tensorflow版本决定的。
2、现在已经出到v1.3版本了,可以上网站查看自己想要的版本(PS:该网站就是一个xml网页,可以搜索tensorflow_gpu-xxx寻找自己的版本对应的URL)
2.2、源代码
通过源代码编译的方法可以去编译支持自己的GPU版本和相应的cuda版本
源代码的安装也可以参考官网,但这里有个更好的安装教程
Install Bazel:
Add Bazel distribution URI as a package source (one time setup)
echo "deb http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
curl https://storage.googleapis.com/bazel-apt/doc/apt-key.pub.gpg | sudo apt-key add -
Install java 8
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Install bazel
sudo apt-get update && sudo apt-get install bazel
sudo apt-get upgrade bazel
sudo apt-get install python-numpy swig python-dev python-wheel
Configure and build tensorflow:
First we have to allow it working with gcc 5.x
Edit file $tensorflow_sources_folder/third_party/gpus/crosstool/CROSSTOOL
Add this line:
cxx_flag: "-D_FORCE_INLINES"
cxx_flag: "-D_MWAITXINTRIN_H_INCLUDED"
below any tool_path { name: “gcc” path: “clang/bin/crosstool_wrapper_driver_is_not_gcc” }
and build it:
./configure
bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer
bazel-bin/tensorflow/cc/tutorials_example_trainer --use_gpu
Build pip installation:
bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
pip install /tmp/tensorflow_pkg/tensorflow-0.8.0-py2-none-any.whl(注意版本)
Internal Test:
cd tensorflow/models/image/mnist
python convolutional.py
2.3、验证是否安装成功
python
然后依次敲入以下代码:
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
第一行代码后若能成功import基本是安装成功了,第三行代码之后会输出显卡的信息,第四行代码之后若打印出以下内容说明tensorflow安装成功
Hello, TensorFlow!
2.4、卸载