http://blog.csdn.net/u012162613/article/details/42651233

author:wepon

@blog:http://blog.csdn.net/u012162613/article/details/42651233

1、Theano简介

Theano是深度学习的一个python库,在deeplearning.net上有它的tutorial,它可以方便我们写深度学习模型,它提供了在GPU上训练模型的选项,极大加快训练速度。

如此强大而方便的工具,必须上手,下面我详细记录一下我在安装Theano过程中碰到的问题,以及最终的解决方法。我的系统是Fedora,对于其他linux系统,方法也是类似的。在fedora、Redhat、CentOS中,用到的软件包管理工具是yum,在ubuntu、debian系统中用到的是与yum类似的apt-get。所以,将我下面安装过程中的yum命令换成apt-get,或许是一样的。当然,我的安装过程仅供参考,I'm not responsible for any responsibility。

2、Theano安装过程

Theano的安装依赖于很多其他的软件包,有必需的,也有可选的,下面分开来说。此外,python的版本必须大于python2.6,在shell下直接键入python,查看你的版本,如果小于2.6,得先升级。

(1)必须安装的依赖项

首先,进入shell,su切换到root用户,安装以下几个软件包

  • 安装numpy
[python] view plaincopy
  1. >>>sudo yum install numpy
  • 安装scipy
[python] view plaincopy
  1. >>>sudo yum install numpy
  • 安装BLAS
[python] view plaincopy
  1. >>>sudo yum install blas blas-devel lapack lapack-devel atlas atlas-devel --nogpgcheck

BLAS是基础线性代数程序集(Basic Linear Algebra Subprograms),安装了BLAS之后,numpy、scipy会自动依赖于BLAS加速,检验numpy是否成功依赖于BLAS编译,可以进入python环境,键入:

[python] view plaincopy
  1. >>> import numpy
  2. >>> id(numpy.dot) == id(numpy.core.multiarray.dot)
  3. False

结果是False表明成功依赖了BLAS加速,True的话表明用的是python自己的实现,并未加速。

  • 安装g++
[python] view plaincopy
  1. >>>yum install gcc gcc-c++

注意fedora下g++编译器的名称是gcc-c++,在debian系统下则是g++,用apt-get install gcc g++

(2)安装可选依赖项

可选的依赖项有nose、Sphinx、Git、pydot、NVIDIA CUDA drivers and SDK、libgpuarray,其中nose是python的一个测试工具,我已经装过了,其他的因为我暂时不用到,就先不安装了,以后装了再更新,特别是最后面两项CUDA、gpu,用于加速的,迟早会用到。

(3)安装pip

接着按照官网建议,通过pip从PyPi上面拽theano,所以得先安装pip,安装pip有好几种方法,可以参考官网:http://pip-cn.readthedocs.org/en/latest/installing.html

安装pip有两种方法,一种是通过脚本安装,一种是通过软件包管理器来安装,我建议直接用软件包管理器来安装,只需要键入一行代码:

[python] view plaincopy
  1. >>>sudo yum install python-pip

通过yum管理器安装一般都会成功。如果你想通过脚本安装的话,你需要先下载get-pip.py,把它放到linux的当前目录下,然后键入:

[python] view plaincopy
  1. python get-pip.py

运气不好的话,你会碰到这样的错误:

[python] view plaincopy
  1. ImportError: No module named 'pip._vendor.requests'

这个问题我也碰到了,在stackoverflow上找到了解决方法: 问题地址,问题出现的原因是系统中的_ssl模块没安装好,所以需要先安装好openssl模块:

[python] view plaincopy
  1. >>>yum install openssl-devel

然后重新编译python,具体的方法见: python安装完毕后,提示找不到ssl模块的解决步骤

我没试过,挺麻烦的。

(4)安装theano

上面已经安装好了pip,现在可以通过pip来安装theano了,pip类似于easy_install,用来安装python的第三方库的,它的默认源地址是:https://pypi.python.org/simple/ 

使用这个源有两个弊端:(1)国内访问速度极慢。(2)这个源上使用了https协议,如果系统上openssl或ssl模块没安装好,会导致pip访问失败。不信的话,你可以试一下键入:

[python] view plaincopy
  1. >>>pip  install theano

如果你很快安装好了theano,那说明上面(1)和(2)提到的问题你都没碰到。如果你运气不好,像我一样,(1)和(2)的问题都给我遇上了:下载theano软件包的速度非常慢,下到80%的时候,“Hash of the ....Bad md5 hash.... ”错误退出,多半是ssl模块的问题。

所以,这里说一个方法,绕开(1)和(2)这两个弊端:

从 http://www.pypi-mirrors.org/ 上查看国内的PyPi镜像源,你可以发现一半都是china的,可悲又可喜啊~~

ok,我用了清华的镜像源,键入下面的代码:

[python] view plaincopy
  1. >>>pip install theano -i https://pypi.tuna.tsinghua.edu.cn/simple/

很快就安装完毕。

3、测试Theano是否安装正确

安装完后,进入python环境,键入:
[python] view plaincopy
  1. >>>import theano
  2. >>>theano.test()

整个测试过程大概20~30分钟,我的测试结果:

[python] view plaincopy
  1. Ran 2441 tests in 1793.373s
  2. FAILED (errors=18)
  3. <nose.result.TextTestResult run=2441 errors=18 failures=0>

并且前面出现了许多“Errors”和"KnownFailureTest",这些是“已知”的errors,并无大碍。

最后,推荐一个Google group:theano-users ,KnownFailureTest的问题在上面就有人提过。

-----------------------------GPU、CUDA等其他包的安装待续--------------------------------------

【DeepLearning工具】Fedora下安装theano相关推荐

  1. fedora下安装pps

    fedora下安装pps成功,官方下载的deb包解压,然后手动安装. 大致讲一下方法,如下: 到官方下载deb包,右键解压后,进入解压的文件夹,将两个tar包解压,得到etc,opt,usr,三个文件 ...

  2. SIPp工具Linux下安装

    2019独角兽企业重金招聘Python工程师标准>>> 一.SIPp介绍 SIPp是一个测试SIP协议性能的工具软件,这是一个开源软件.      它可使用INVITE和B YE建立 ...

  3. win10系统下安装theano+lasagne

    win10系统下安装theano+lasagne 由于最近需要跑一个全景视频显著性检测的网络SalGan360,是用theano搭建的,比较古老的一种框架,很多博客写的都不是很全,之前也尝试过配置环境 ...

  4. ###Fedora下安装Retext

    使用Markdown. #@date: 2012-05-07#@author: gr#@email: forgerui@gmail.com 因为习惯了Markdown的简单,所以需要在自己的Fedor ...

  5. Fedora 下安装Mplayer(添加源和解决错误问题)

    Mplyer fedora不给大家提供带有版权问题或是封源的软件,这个给我们下载软件带来了许多麻烦,所以在这里提供RPM Fusion源,来补充我们Linux的"软件库". 直接复 ...

  6. linux安装meb工具,linux-docker下安装禅道全部

    友情提示:按照步骤走,99%的人会安装成功,1%的人可以咨询度娘 64位电脑安装禅道,满足发送邮件功能 第一步: docker ps 查看docker中的容器是否有禅道(docker ps -a    ...

  7. linux nvidia驱动安装rpm,Fedora 下安装NVIDIA显卡驱动

    rpmfusion安装法: 相对于ATi,在Linux下安装NVIDIA就简单得多.只需要一个命令即可完成驱动的安装: 首先要确保你已经添加rpmfusion的源,如果你不能确认你可以安装输入此命令添 ...

  8. linux无法安装at命令,在Ubuntu/Debian/CentOS/Fedora下安装At及各种At命令的用法

    本文介绍在Linux系统下安装At的方法,可安装在Ubuntu/Debian/CentOS/Fedora发行版下,及各种At命令的用法.at是一个命令行实用程序,可让您安排在特定时间执行的命令,使用a ...

  9. directx修复工具win7_win10下安装win7双系统的惨痛教训!

    今天 给大家介绍做双系统,win10下安装win7,双系统下的惨痛教训! 开始: 寻找win7要安装的盘符,发现没有空闲的磁盘,重启进U盘PE,切割磁盘,预留一块80G空闲分区. 将准备好的Ghost ...

最新文章

  1. cve-2017-12617 tomcat远程代码执行漏洞复现测试
  2. python怎么安装requests库-Python3.6安装及引入Requests库的实现方法
  3. ms project(第一篇笔记)
  4. html5标签及属性大全,HTML5 标签 和属性 列表.pdf
  5. android内部类broadcastreceiver,android 公开静态内部类BroadcastReceiver
  6. Table of Contents
  7. 开机出现grub rescue
  8. Ext2.0的EditorGridPanel
  9. apipost如何使用mock测试
  10. 牛客网 - 编程初学者入门训练 - 分支控制(BC50~BC77)
  11. 【王者荣耀】入门战斗经验
  12. TCP-Hybla拥塞算法
  13. Android蓝牙手柄摇杆 十字按键监听手机focus焦点
  14. CSS 第005 背景-理论
  15. 植物识别小系统:“ 花草树木 皆有名“一热爱自然,从认识自然开始 ~
  16. 软件测试之python高级软件测试开发第13期柠檬班,重写unittest
  17. 微信公众号开发教程(四)自定义菜单
  18. 【三大锁】悲观锁——mysql悲观锁
  19. 【PV操作】买面包的叫号算法(存疑)
  20. 服务器被大流量攻击怎么办?

热门文章

  1. android 按下home键执行什么,Android下得到Home键按下的消息
  2. mysql unsupported data type._数据查询Unsupported command错误
  3. Maven 的 settings.xml 配置中的mirror节点
  4. websphere 内存溢出处理
  5. leetcode算法题--Russian Doll Envelopes
  6. DPDK源码编译(二十八)
  7. HTTP1.0和HTTP1.1区别
  8. redis 集群搭建_一文轻松搞懂redis集群原理及搭建与使用
  9. Ant Design 4.0 进行时!
  10. Django 基于角色的权限控制