深层学习库包Theano、Lasagne、TensorFlow在Ubuntu支持GPU的安装
来源:互联网 发布:办公网络布线教程 编辑:程序博客网 时间:2024/05/16 11:41
随着深层学习的火热,越来越多的人开始使用深层学习训练自己的模型。
用GPU训练的速度比CPU快很多倍,可让需要训练一周的模型只在一天内完成。
这篇post就介绍如何在Ubuntu14.04上安装用GPU训练的Theano、Lasagne、TensorFlow
- Anaconda
- 安装
- 使用
- GPU配置
- 安装CUDA
- 安装cuDNN
- Theano
- 安装
- GPU环境变量设置
- GPU运行测试
- Lasagne
- 安装
- 教程
- TensorFlow
- 安装
- CPU only
- GPU enabled
- GPU环境变量设置
- 简单测试
- TensorBoard
- 追踪数据
- 分析模型
- 教程
- 安装
转载请标明原地址:http://blog.csdn.net/u010751535/article/details/50806073
Anaconda
由于将会用到很多python的库包,安装Anaconda将会很方便
安装
下载完毕后,执行,根据提示安装到想要安装的目录下 >sudo bash Anaconda2-2.5.0-Linux-x86_64.sh
如果遇到 Error: Missing write permissions in: */anaconda2
You don't appear to have the necessary permissions to update packages
into the install area */anaconda2
运行下面指令,更改组群可以解决(请把usr 和 */ 替换为自己的内容) >sudo chown -R usr */anaconda2
使用
所有指令都可以在Using conda找到
这里列出几个常用指令
- 更新conda
>conda update conda
- 显示可用packages
>conda list
- 从conda安装package
>conda install package-name
- 如果conda没有,可从anaconda.org上搜索,键入所显示的指令即可
>conda install -c channel package-name
- 删除package
>conda remove package-name
- 更新package
>conda update package-name
GPU配置
安装CUDA
CUDA download(本文将选择network安装)
下载完毕后执行 >sudo dpkg -i cuda-repo-ubuntu1404_7.5-18_amd64.deb
>sudo apt-get update
>sudo apt-get install cuda
(耗时)
拥有cuda的并行计算模块就可以用GPU训练Theano的模型了
安装cuDNN
Theano也支持cuDNN(可选),而Tensorflow则必需要cuDNN
cuDNN download(需要注册),下载完毕后执行 >tar xvzf cudnn-7.0-linux-x64-v4.0-prod.tgz
>sudo cp cuda/include/cudnn.h /usr/local/cuda/include
>sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
>sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
Theano
由于Theano对模型拥有很高的控制权,深受研究人员喜欢
安装
>sudo apt-get install g++ libopenblas-dev
>conda install git
>pip install --upgrade --no-deps git+git://github.com/Theano/Theano.git
也可以从anaconda.org上搜索
GPU环境变量设置
>export CUDA_ROOT=/usr/local/cuda-7.5/
>export PATH=$PATH:$CUDA_ROOT/bin
>export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA_ROOT/lib64
>export THEANO_FLAGS=mode=FAST_RUN,device=gpu,floatX=float32,allow_gc=False
>export CUDA_LAUNCH_BLOCKING=1
需要注意的是GPU只支持float32的数据,想要更多的速度,就要把数据的类型都转为float32
GPU运行测试
from theano import function, config, shared, tensor, sandboximport numpyimport timevlen = 10 * 30 * 768 # 10 x #cores x # threads per coreiters = 1000rng = numpy.random.RandomState(22)x = shared(numpy.asarray(rng.rand(vlen), config.floatX))f = function([], tensor.exp(x))print(f.maker.fgraph.toposort())t0 = time.time()for i in range(iters): r = f()t1 = time.time()print("Looping %d times took %f seconds" % (iters, t1 - t0))print("Result is %s" % (r,))if numpy.any([isinstance(x.op, tensor.Elemwise) and ('Gpu' not in type(x.op).__name__) for x in f.maker.fgraph.toposort()]): print('Used the cpu')else: print('Used the gpu')
CPU结果:
[Elemwise{exp,no_inplace}(<TensorType(float64, vector)>)]Looping 1000 times took 3.060987 secondsResult is [ 1.23178032 1.61879341 1.52278065 ..., 2.20771815 2.29967753 1.62323285]Used the cpu
GPU结果:
Using gpu device 0: GeForce GTX 980 Ti (CNMeM is disabled, CuDNN 4007)[GpuElemwise{exp,no_inplace}(<CudaNdarrayType(float32, vector)>), HostFromGpu(GpuElemwise{exp,no_inplace}.0)]Looping 1000 times took 0.208453 secondsResult is [ 1.23178029 1.61879349 1.52278066 ..., 2.20771813 2.29967761 1.62323296]Used the gpu
Lasagne
安装
Lasagne是写在Theano之上的库包,可以使用户更简单的使用深层学习训练
这里将要安装的是Lasagne 0.2.dev1版本,直接执行 >conda install -c http://conda.anaconda.org/toli lasagne
教程
这里有Lasagne tutorial 和 Lasagne tutorial2的简单ipython教程
TensorFlow
TensorFlow是由Google开源的深层学习包,在概念上和Theano十分相似,都是生成computational graph并可自动求导,虽然表达上比Theano简洁了一些,但对于模型结构的控制能力不如Theano。当前的GPU版本还在显存占用方便有问题。总体来说十分“年轻”。但是拥有强大的公司背景。使人十分期待未来发布的版本。
安装
CPU only
>pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl
GPU enabled
>pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl
遇到如下问题时 Cannot remove entries from nonexistent file /usr/local/bin/anaconda2/lib/python2.7/site-packages/easy-install.pth
执行,删除后setuptools再运行 >conda remove setuptools
GPU环境变量设置
>export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64
>export CUDA_HOME=/usr/local/cuda
简单测试
import tensorflow as tfhello = tf.constant('Hello, TensorFlow!')sess = tf.Session()print(sess.run(hello))
Hello, TensorFlow!
a = tf.constant(10)b = tf.constant(32)print(sess.run(a + b))
42
期间你将会看到类似的信息
Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 980 Ti, pci bus id: 0000:01:00.0)
TensorBoard
比较人性化的地方是工具TensorBoard可以自动生成如下的交互界面,允许用户更好的追踪数据和分析自己所建的模型
追踪数据
分析模型
教程
还有很多教程可以参考官网
- 深层学习库包Theano、Lasagne、TensorFlow在Ubuntu支持GPU的安装
- Theano、Lasagne、TensorFlow在Ubuntu14.04 64支持GPU的安装 py27
- linux下theano/tensorflow安装cuda支持gpu
- 基于深度学习框架theano的库-----Lasagne
- 在 Ubuntu 16.04 中安装支持 CPU 和 GPU 的 Google TensorFlow 神经网络软件
- Ubuntu 16.04 安装 Tensorflow(GPU支持)
- Ubuntu 16.04 安装 TensorFlow(GPU支持)
- 在Macbook Pro上安装支持GPU的TensorFlow
- ubuntu安装Theano库与Tensorflow
- 在Docker Ubuntu镜像中安装tensorflow-gpu
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- CentOS服务器的目录映射为Windows磁盘驱动器的方法(安装samba)
- i++ 容易判断错误的情况
- java学习之——安装与配置环境变量
- [BZOJ1968][AHOI2005]COMMON 约数研究(数论)
- A*求15码
- 深层学习库包Theano、Lasagne、TensorFlow在Ubuntu支持GPU的安装
- NYOJ93(栈&&模拟)
- 排序算法总结之快速排序、归并排序、shell排序
- HBase-0.98集群安装
- [leetcode Q41] First Missing Positive
- BP神经网络训练
- JMeter 入门
- dbms_errlog.create_error_log
- 全国身份证身份数据库sql(2016最新)