zoukankan      html  css  js  c++  java
  • tensorflow 安装

    PIP安装方式

    1.准备工作

    CentOS版本要求

    yum -y install git

    yum -y install zlib*

    yum -y install gcc*

    python2.7

    cuda

    安装 Cuda Toolkit 7.5 and cuDNN v4.

    Download and install Cuda Toolkit

    https://developer.nvidia.com/cuda-downloads

    Install the toolkit into e.g. /usr/local/cuda

    Download and install cuDNN

    https://developer.nvidia.com/cudnn

    解压缩后 将文件辅助到 cuda的安装目录下对应的地址,默认cuda陌路下有include,lib两个link ,辅助到link对应的目录下

    2.安装pip

    yum install python-pip python-dev

    3.通过pip安装带有GPU支持的tensorflow

    sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl

    安装完成后 默认路径在 

    /usr/lib/python2.7/site-packages/tensorflow

    补充:卸载tensorflow

    sudo pip uninstall   https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl

    4.运行测试

    $ cd tensorflow/models/image/mnist
    $ python 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!
    Epoch 0.00
    Minibatch loss: 12.054, learning rate: 0.010000
    Minibatch error: 90.6%
    Validation error: 84.6%
    Epoch 0.12
    Minibatch loss: 3.285, learning rate: 0.010000
    Minibatch error: 6.2%
    Validation error: 7.0%
     

    5.问题解决

    could not set cudnn filter descriptor: CUDNN_STATUS_BAD_PARAM

    通过pip安装 必须使用cudnn V4,只有通过源码安装才支持其他cudnn版本!

    ——————————————————————————————————————————————————————————

    源码安装方式

    1.下载tensorflow源码

    git clone --recurse-submodules https://github.com/tensorflow/tensorflow

    切换到当前release版本

    查看版本

    cd   /data/tensorflow/ (tensorflow的源代码目录)

    git tag 

    切换版本

    git checkout  v0.8.0rc0

     

    2.安装bazel

    下载文件bazel-0.2.3-installer-linux-x86_64.sh文件

    wget    https://github.com/bazelbuild/bazel/releases/download/0.2.3/bazel-0.2.3-installer-linux-x86_64.sh

    安装bazel命令

    chmod +x bazel-0.2.3-installer-linux-x86_64.sh

    ./bazel-0.2.3-installer-linux-x86_64.sh --user

    参考文档:

    http://bazel.io/docs/install.html

    3.安装依赖包

    yum -y install epel-release(centos 7需要执行)

     yum -y install numpy swig python-devel python-wheel python-pip

    pip install --upgrade pip

    4.配置安装(确定已经安装cuda,cudnn)

    在源码目录运行 

    cd   /data/tensorflow/ (tensorflow的源代码目录)

    ./configure

    (全部采用默认配置,选择y和回车,0.9按以下截图操作)

     
    5.安装
    创建pip包并安装(若安装分布式,操作完后加上分布式编译那一步即可,当成两个包来操作):

    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 

    出现错误:cp: cannot stat ‘bazel-bin/tensorflow/tools/pip_package/build_pip_package.runfiles/tensorflow’: No such file or directory

    直接打开文件 /home/data/tensorflow/tensorflow/tools/pip_package/build_pip_package.sh,修改路径成(标红为修改部分, 0.9不需要修改)

    ######################

     cp -R

    bazel-bin/tensorflow/tools/pip_package/build_pip_package.runfiles/__main__/{tensorflow,external}
    ${TMPDIR}
    # protobuf pip package doesn't ship with header files. Copy the headers
    # over so user defined ops can be compiled.
    rsync --include "*/" --include "*.h" --exclude "*" --prune-empty-dirs -a
    bazel-bin/tensorflow/tools/pip_package/build_pip_package.runfiles/__main__/google
    ${TMPDIR}
    rsync -a
    bazel-bin/tensorflow/tools/pip_package/build_pip_package.runfiles/__main__/third_party/eigen3
    ${TMPDIR}/third_party

    ######################

    6.执行成功上面命令安装tensorflow命令如下

    sudo pip install /tmp/tensorflow_pkg/tensorflow-0.8.0rc0-cp27-none-linux_x86_64.whl

    pip install /tmp/tensorflow_pkg/tensorflow-0.9.0-cp27-none-linux_x86_64.whl

    7、运行测试(使用普通账号也执行相同命令)

    cd /usr/lib/python2.7/site-packages/tensorflow/models/image/mnist

    python  convolutional.py

    8.编译tutorials_example_trainer包
    bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer
    bazel-bin/tensorflow/cc/tutorials_example_trainer --use_gpu
    运行无误即可

    9.查看tensorflow的安装版本

    pip list | grep ten’

    已知问题(今天安装未出现)

    安装时报错 

    ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443): Read timed out.

    增加--default-timeout=100 

    pip --default-timeout=100  install --upgrade …………

    补充:

    环境变量配置如下(仅作参考)

    export JAVA_HOME=/opt/jdk1.8.0_91

    export BAZEL_HOME=/usr/local/lib/bazel

    PATH=$JAVA_HOME/bin:$BAZEL_HOME/bin:$PATH:$HOME/bin:

    export PATH

    修改/etc/hosts文件,将ip和主机名对应上

  • 相关阅读:
    三数之和(排序+双指针)
    数值的整数次方(类快速幂)
    Z字形变换
    相交链表
    牛妹的蛋糕
    安置路灯
    迷路的牛牛
    Office 2003的卸载 与 Office 2013 的安装
    解决“飞鸽传书”无法显示局域网用户的方法
    bcd(Binary-Coded Decimal‎缩写)
  • 原文地址:https://www.cnblogs.com/xuchenCN/p/5888648.html
Copyright © 2011-2022 走看看