Ubuntu14.04下配置Keras2.0.4+Tensorflow1.1.0+CUDA7.5+cuDNN5.1.10
来源:互联网 发布:美国大学排名 知乎 编辑:程序博客网 时间:2024/05/16 14:32
Tensorflow1.0以后的版本对于CUDA的默认要求是8.0,所以如果打算直接使用pip命令安装Tensorflow,需要检查CUDA是否匹配,如果匹配,可以使用命令进行安装:
CPU版本:sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp27-none-linux_x86_64.whlGPU版本:sudo pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.1.0-cp27-none-linux_x86_64.whl本文在机器已经配置好了CUDA7.5的前提下进行环境配置,已经安装好了NVIDIA显卡驱动,为了避免更换CUDA8.0带来的麻烦,需要通过Tensorflow源码在CUDA7.5下安装Tensorflow1.1.0,关于CUDA的安装,可以参考以下文章:
Ubuntu 安装 tensorflow-gpu + keras
ubuntu16.04下安装TensorFlow(GPU加速)----详细图文教程
以上两篇都要通过deb安装,但是本人用runfile进行安装比较顺利,参考:
深度学习(TensorFlow)环境搭建:(二)Ubuntu16.04+1080Ti显卡驱动
深度学习(TensorFlow)环境搭建:(三)Ubuntu16.04+CUDA8.0+cuDNN7+Anaconda4.4+Python3.6+TensorFlow1.3
Ubuntu 14.04 安装 CUDA 问题及解决
1. cuDNN 5.1下载及环境配置
参考上述文章,选择CUDA和Linux对应的版本下载cuDNN 5.1并解压,将头文件和lib库复制到cuda的目录下,本文定义为/usr/local/cuda
sudo cp cuda/include/cudnn.h /usr/local/cuda/include # 复制到 include 中sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 # 复制到 lib64 中sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn* # 将头文件复制进去配置CUDA的环境变量,可以配置为用户环境变量或者全局环境变量,分别在~/bash_profile和/etc/profile中进行配置,配置完后source令其生效:
#set cuda environmentexport CUDA_HOME=/usr/local/cudaexport PATH=/usr/local/cuda/bin:/usr/local/bin:$PATHexport LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$CUDA_HOME/lib64:$CUDA_HOME/extras/CUPTI/lib64"运行以下命令检查CUDA配置是否生效
nvidia-settings # 打开 NVIDIA 设置界面nvidia-smi
2. 源码安装Tensorflow 1.1.0
2.1 安装编译工具bazel
首先从github下载相应版本的源码,然后安装编译工具bazel:https://bazel.build/versions/master/docs/install.html
安装JDK8
sudo add-apt-repository ppa:webupd8team/javasudo apt-get updatesudo apt-get install oracle-java8-installer把bazel加入到源
echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.listcurl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -安装bazel
sudo apt-get update && sudo apt-get install bazel在终端输入bazel测试是否安装成功
2.2 配置Tensorflow
解压源码,进入解压后目录,运行:./configure进行配置,配置选项如下:
Please specify the location of python. [Default is /usr/bin/python]: Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -march=native]: Do you wish to use jemalloc as the malloc implementation? [Y/n] jemalloc enabledDo you wish to build TensorFlow with Google Cloud Platform support? [y/N] NNo Google Cloud Platform support will be enabled for TensorFlowDo you wish to build TensorFlow with Hadoop File System support? [y/N] NNo Hadoop File System support will be enabled for TensorFlowDo you wish to build TensorFlow with the XLA just-in-time compiler (experimental)? [y/N] No XLA support will be enabled for TensorFlowFound possible Python library paths: /usr/local/lib/python2.7/dist-packages /usr/lib/python2.7/dist-packagesPlease input the desired Python library path to use. Default is [/usr/local/lib/python2.7/dist-packages]Using python library path: /usr/local/lib/python2.7/dist-packagesDo you wish to build TensorFlow with OpenCL support? [y/N] NNo OpenCL support will be enabled for TensorFlowDo you wish to build TensorFlow with CUDA support? [y/N] yCUDA support will be enabled for TensorFlowPlease specify which gcc should be used by nvcc as the host compiler. [Default is /usr/bin/gcc]: Please specify the CUDA SDK version you want to use, e.g. 7.0. [Leave empty to use system default]: 7.5Please specify the location where CUDA 7.5 toolkit is installed. Refer to README.md for more details. [Default is /usr/local/cuda]: Please specify the Cudnn version you want to use. [Leave empty to use system default]: 5.1.10Please specify the location where cuDNN 5.1.10 library is installed. Refer to README.md for more details. [Default is /usr/local/cuda]: Please specify a list of comma-separated Cuda compute capabilities you want to build with.You can find the compute capability of your device at: https://developer.nvidia.com/cuda-gpus.Please note that each additional compute capability significantly increases your build time and binary size.[Default is: "3.5,5.2"]: 3.0特别需要注意选择CUDA版本只要到7.5就好,但是选择cdDNN版本需要能找到对应的libcudnn.so.5.1.10这样的文件,在/usr/local/cuda/lib64中,所以版本选择5.1.10,其他默认即可
2.3 产生pip包并安装
# To build with GPU support:bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_packagebazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg # 在/tmp/tensorflow_pkg/文件夹下查找.whl文件,并pip安装,如名字为:tensorflow-1.1.0-cp27-cp27mu-linux_x86_64.whl sudo pip install /tmp/tensorflow_pkg/tensorflow-1.1.0-cp27-cp27mu-linux_x86_64.whl如果出现如下错误:
tensorflow-1.1.0-cp27-cp27mu-linux_x86_64.whl is not a supported wheel on this platform.Storing debug log for failure in /home/jiaqi/.pip/pip.log则进入/tmp/tensorflow_pkg目录,更改tensorflow-1.1.0-cp27-cp27mu-linux_x86_64.whl为tensorflow-1.1.0-cp27-none-linux_x86_64.whl
再次pip即可
2.4 设置Tensorflow,并安装到python中
# To build with GPU support:bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_packagemkdir _python_buildcd _python_buildln -s ../bazel-bin/tensorflow/tools/pip_package/build_pip_package.runfiles/org_tensorflow/* .ln -s ../tensorflow/tools/pip_package/* .sudo python setup.py develop安装成功后,运行 python -c "import tensorflow;print(tensorflow.__version__)"测试是否可行
运行以下测试用例测试GPU是否可用
import tensorflow as tfhello = tf.constant("hello TensorFlow!") sess=tf.Session() print(sess.run(hello)) a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a') b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b') c = tf.matmul(a, b) sess = tf.Session(config=tf.ConfigProto(log_device_placement=True)) print(sess.run(c))
3. 安装Keras 2.0.4
安装之前需要一些依赖,否则在安装scipy时会出错,比如Atlas和gfortran,其他深度学习常用赖项可参考:2015.08.17 Ubuntu 14.04+cuda 7.5+caffe安装配置中关于caffe的依赖设置
#安装scipy所需依赖sudo apt-get install libatlas-base-dev sudo apt-get install gfortran#安装kerassudo pip install keras==2.0.4使用命令
python -c "import keras"测试keras是否安装成功
- Ubuntu14.04下配置Keras2.0.4+Tensorflow1.1.0+CUDA7.5+cuDNN5.1.10
- Ubuntu14.04下配置Caffe+OpenCV2.4.10+CUDA7.5+cuDNN5.1.10
- 基于ubuntu14.04 cuda7.5 cudnn5.1caffe 配置
- 深度学习入门级框架MatConvNet环境配置(Ubuntu14.04+Cuda7.5+Cudnn5+Matlab2014a)
- ubuntu14.04 安装anaconda+pycharm+cuda+cudnn+theano0.90+keras2.0.2+tensorflow1.1.0
- ubuntu14.04下cuDNN配置(caffe+cuda7.5)
- cuda7.5+cudnn5.1+opencv3.1(ubuntu14.04上安装caffe并测试)
- ubuntu深度学习框架Matconvnet与caffe搭建 (Ubuntu14.04+Cuda7.5+Cudnn5+Matlab2015b
- ubuntu14.04安装caffe+cuda7.5+cudnn5.0+opencv3.0(亲测有效)
- Caffe+CUDA7.5+Ubuntu14.04配置
- 安装配置ubuntu14.04+cuda7.5+caffe
- Ubuntu16.04 (WIN10)+ cuda8.0 + cudnn5.1 + tensorflow1.0.1配置
- ubuntu16.04配置cuda8.0+cudnn5.1+tensorflow1.2
- Ubuntu14.04下配置CUDA7.0+OpenCV开发环境
- py-faster-rcnn(running the demo): ubuntu14.04+caffe+cuda7.5+cudnn5.1.3+python2.7环境搭建记录
- ubuntu14.04下tensorflow环境配置(tensorflow0.12多种安装方式+cuda7.5升级8.0)
- Ubuntu14.04安装cuda8.0+cudnn5.1+Tensorflow1.0.0(GPU)教程
- Ubuntu14.04+CUDA7.5+opencv3.0+MKL+Caffe配置
- Java NIO浅析
- Shi-Tomasi 角点检测
- 区间连续极值
- POJ-2184-01背包变形
- CSS定位之固定定位
- Ubuntu14.04下配置Keras2.0.4+Tensorflow1.1.0+CUDA7.5+cuDNN5.1.10
- 五子棋与AI
- byte类型进行运算的问题。
- 计算机体系结构——流水线技术
- Laravel 自动生成验证分析:login / logout
- javaScript 设置磨砂背景
- UITableView的优化处理(图像)
- HTTP请求GET与POST的区别
- git for windows快速入门教程