毕竟,在Linux上设置Tensorflow的正确方法是什么?
我有一些关于Tensorflow的错误信息问题。很多地方的信息很多,而且还不够完整。毕竟,在Linux上设置Tensorflow的正确方法是什么?
我使用CUDA 8.0,cuDNN建立了我的系统,并且我有Keras + Theano在python 2.7中正常工作。我正在尝试移动到Tensorflow。
正如我曾与numpy的和其他的东西兼容性问题,当我试图在同一个环境中进行安装,我安装miniconda2,创造了一个虚拟的ENV它conda create -n tensorflow pip
并激活它,按照指示在这里:https://www.tensorflow.org/install/install_linux#InstallingAnaconda
环境似乎可操作。
后来,我从https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.1-cp27-none-linux_x86_64.whl安装tensorflow也Keras,才发现我已经重复上conda list
一些模块,一些标有一个版本字符串,别人只标有<pip>
。特别是,我得到了一个Tensorflow-gpu 1.2.1和Tensorflow 1.1.0。两个都。旧版本与Keras一起来。
此外,还有警告无数的约Tensorflow不被编译使用某些CPU指令集,这里面的这个答案How to compile Tensorflow with SSE4.2 and AVX instructions?关于使用basel
编译它,但我真的不觉得在哪里把源的任何信息代码以及运行该bazel命令行后要移到哪个文件。更糟糕的是,每当我运行一个简单的20x20矩阵乘法代码作为设备时,代码列表中可怕的警告正确检测到GTX 1070的存在,但从未真正确认它是用于计算的。 在"/cpu:0"
上跑得更快。我多么想念Theano ...
有人能指出我发现我在哪里可以找到:
- 什么版本下载Tensorflow是当前(不一定是最新的)吗?
- 简明的步骤来完成它,如何测试如果这些步骤是正确的?
我使用Linux Mint的18
我已经使用畅达,并且已经安装Tensorflow = 1.1.0,但似乎永远都蟒蛇内工作正常。我还遇到过github问题,蟒蛇目前正在研究Tensorflow GPU版本,所以无论我在蟒蛇中尝试过什么,它都没有使用我的Tesla NVIDIA P100-SXM2-16GB卡,它仅使用CPU。
我建议你使用正常的环境,直到他们得到Tensorflow-gpu才能在Anaconda工作。
要检查tensorflow-gpu是否有效,我使用TF0.12/TF1.0的Inception v3模型。
这是我通过安装tensorflow1的过程。0:
步骤0
sudo -i
apt-get install aptitude
aptitude install software-properties-common
apt-get install libcupti-dev pip
apt-get update
apt-get upgrade libc6
步骤1.安装NVIDIA组件。我想你已经有安装
从 https://developer.nvidia.com/rdp/cudnn-download (注册中需要NVIDIA的加速计算开发者计划)
Cudnn 5.1工程以及下载NVIDIA cuDNN 5.1 CUDA 8.0与大多数架构和操作系统的出有
步骤2.安装巴泽勒和tensorflow
apt-get install bazel
你可以去这个链接https://pypi.python.org/pypi/tensorflow-gpu/1.1.0rc0,做一个
pip install <python-wheel-version>
如果你有python2.7和python 3 *安装,然后使用PIP2来安装python2.7
第3步:安装的openjdk
apt-get install openjdk-8-jdk
步骤4. GIT中克隆启模型代码
git clone https://github.com/tensorflow/models.git
cd models
git checkout master
cd inception
这就是其中bazel进来的图片。请参阅Bazel的Getting Started文档以获取有关目标的更详细说明。所以,如果你做一个
ls -lstr
你可能会看到5个巴泽勒相关的符号链接
bazel-bin bazel-genfiles bazel-inception bazel-out bazel-testlogs
这些都是你建立你的具体型号
目标目录假设你是型号/成立目录
bazel build inception/imagenet_train
这激活了符号链接
注意:要使此imagenet_train.py正常工作,您需要准备imagenet数据集。你要么跳过这一部分还是经过这样的:
STEP 5在运行的第一次训练脚本准备Imagenet数据集 ,你需要将ImageNet数据下载和转换为本地TFRecord格式。 首先,您需要注册一个ImageNet帐户才能访问数据。查找注册页面,创建一个帐户并请求访问密钥以下载数据。
在您拥有USERNAME和PASSWORD后,即可开始运行我们的脚本。确保您的硬盘至少有500 GB的可用空间用于下载和存储数据。在这里,我们选择DATA_DIR = $ HOME/imagenet-data作为这样一个位置,但可以相应地进行编辑。
当您运行下面的脚本时,请在出现提示时输入USERNAME和PASSWORD。这将在一开始就发生。输入这些值后,您将不需要再次与脚本进行交互。
#location of where to place the ImageNet data
DATA_DIR=$HOME/imagenet-data
这里$ HOME是/根
# build the preprocessing script.
bazel build inception/download_and_preprocess_imagenet
# run it
bazel-bin/inception/download_and_preprocess_imagenet "${DATA_DIR}"
# Place the tensor records at /root/dataset
步骤6.源巴泽勒和tensorflow 此步骤是非常重要的。这将激活python软件包,我想你可能会得到错误,因为tensorflow的python软件包没有激活。 如果跳过第5步,那么你可能要到
/models/inception/sample
和运行gpu.py脚本
python gpu.py
这应该确认您的tensorflow版本与您的GPU
source /opt/DL/bazel/bin/bazel-activate
source /opt/DL/tensorflow/bin/tensorflow-activate
您还可以通过导入tensorflow到python 例如: 导入tensorflow作为tf
找到一个Hello World例如在其网站上,如果这使错误,那么它并没有被正确安装
第7步:运行imagenet培训 - 您可以跳过这一步,如果你跳过第5步
bazel-bin/inception/imagenet_train --num_gpus=1 --batch_size=256 --train_dir=/tmp --data_dir=/root/dataset/ --max_steps=100
StackOverflow是关于帮助人们修复他们的编程代码。安装调试,教程,研究,工具,建议,库和代码的请求是无关紧要的。 ***请***阅读http://stackoverflow.com/help/how-to-ask,http://stackoverflow.com/help/dont-ask,http://stackoverflow.com/help/mcve和参加[旅游](http://stackoverflow.com/tour),然后在此发布更多Q.祝你好运。 – shellter
与代码/输入/期望输出/当前输出/错误消息一起发布1问题。祝你好运。 – shellter