TensorFlow 1.0.0rc1 入坑记 ——转自 慢慢学TensorFlow 微信公众号
来源:互联网 发布:java 开源电商 编辑:程序博客网 时间:2024/04/28 10:58
TensorFlow 从开源到现在已经过去一年多时间,版本号从 0.5.0、0.6.0、0.7.0、0.7.1、0.8.0(开始支持分布式)、0.9.0、0.10.0、0.11.0、0.12.0(开始支持 Windows)以小步快跑的方式不断更新,这也给我们这些初学者带来了不少烦恼,刚刚部署好的环境,最新版本需求又变了,还要折腾一遍……
在 2017 年 1 月 9 号(伴随本公众号的呱呱坠地)1.0-alpha 终于发布了。很快,在春节之前又发布了 1.0.0-rc0,前两天发布了 1.0.0-rc1(跟上我的节奏,呦~呦~),忍不住手贱将之前机器上的旧版本丢弃,跳入新坑。
先从官方下载源码https://github.com/tensorflow/tensorflow/releases/tag/v1.0.0-rc1
在机器上编译时首先遇到了第一个坑就是 bazel 版本太低。
$ wget https://github.com/tensorflow/tensorflow/archive/v1.0.0-rc1.tar.gz
$ tar zxvf v1.0.0-rc1.tar.gz
$ cd tensorflow-1.0.0-rc1/
$ ./configure
……
查了下官方 issue(https://github.com/tensorflow/tensorflow/issues/6436),需要升级 bazel 版本到 0.4.2。继续折腾。
$ wget https://github.com/bazelbuild/bazel/archive/0.4.2.tar.gz
$ tar zxvf 0.4.2.tar.gz
$ cd bazel-0.4.2/
$ ./compile.sh
这时又遇到问题。
每次遇到"bootstrap"相关问题,总是类似"鸡生蛋蛋生鸡"的场景。
按照错误提示,运行如下命令得以解决:
$ bazel build //src:bazel
编译过程需要几十秒钟。编译完成如下图:
编译成功!这时需要将新生成的 bazel 替换原来旧的(如果你不确定旧的 bazel 路径,先用 $ which bazel 命令查看下):
$ sudo mv /usr/local/bin/bazel /usr/local/bin/bazel-old
$ sudo cp bazel-bin/src/bazel /usr/local/bin/
回到 TensorFlow 1.0.0rc1 源码目录。用新版本 bazel 编译。
发现 configure 过程中,问答题相比前一个版本多了 XLA just-in-time compiler,这也是 1.0.0 的 feature 之一,为了方便后面研究,将这一项设为 yes。
configure 之后就开始了漫长的依赖包获取过程,视网速,快的话几分钟,慢的可能几个小时,偶尔还会出现断线情况……注意断线后,千万别重新运行 ./configure,因为会清掉之前的缓存(说多了都是泪……),稳妥的方法是运行:
$ bazel fetch "//tensorflow/... -//tensorflow/examples/android/..."
多试几次,直到出现下图才算成功:
接下来就是官方标准的三步走:
$ 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/
$ sudo pip install --upgrade /tmp/tensorflow_pkg/
编译成功的标志如下:
生成 whl 文件成功的标志如下:
安装成功的标志如下:
验证一下是否安装成功。
$ cd ~
$ python
>>> import tensorflow
>>> help(tensorflow)
查看 help 信息最后一行的版本:
可见确实安装了 TensorFlow 1.0.0-rc1。
后面坑还很多,下篇继续。
微信扫描下面二维码关注此公众号!
- TensorFlow 1.0.0rc1 入坑记 ——转自 慢慢学TensorFlow 微信公众号
- TensorFlow 1.0.0rc1 入坑记(续)——转自 慢慢学TensorFlow 微信公众号
- TensorFlow 1.0.0rc1上玩量化神经网络 ——转自 慢慢学TensorFlow 微信公众号
- TensorFlow 增加自定义运算符 ——转自 慢慢学TensorFlow 微信公众号
- TensorFlow 如何避免重复下载数据 ——转自 慢慢学TensorFlow 微信公众号
- 利用 TensorFlow 集装箱快速搭建交互式开发环境——转自 慢慢学TensorFlow 微信公众号
- TensorFlow Session 中关于 GPU 的配置项解析 ——转自 慢慢学TensorFlow 微信公众号
- 《慢慢学TensorFlow》微信公众号之TensorFlow 图像数据预处理及可视化
- 《慢慢学TensorFlow》往期内容回顾
- Tensorflow——去噪自编码器
- CSDN学霸课表——微信公众号开发全部流程
- 我还没死!!微信公众号——自媒体的营销之路
- 第二篇 微信开发 探秘微信公众号(转载自walkingmanc专栏)【转】
- win10安装Tensorflow 0.12 && Tensorflow 1.0.0
- AI-Tensorflow—Windows7安装TensorFlow方法
- 一起艳学Springboot开发微信公众号(一)
- 一起艳学Springboot开发微信公众号(二)
- 微信公众号——OAuth2.0网页授权
- Docker常用配置
- 猫哥带你去战斗——Java Web开发——Java篇[8]——连接MySQL
- 选择Python科学计算发行版
- Android RecyclerView + SwipeRefreshLayout 分页、下拉刷新
- iOS非常全的第三方库
- TensorFlow 1.0.0rc1 入坑记 ——转自 慢慢学TensorFlow 微信公众号
- redis、memcached、mongoDB 对比
- Java进阶
- HDU 1005 Number Sequence 【找循环周期(瞎搞)】
- cpp12.10
- JAVA开发Web Service几种框架介绍
- Redis单实例安装与配置
- javascript中的import和export使用
- Supervisor永不挂掉的进程