加载中…
个人资料
雪中小浣熊
雪中小浣熊
  • 博客等级:
  • 博客积分:0
  • 博客访问:114,943
  • 关注人气:9
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

windows7环境下theano安装

(2015-07-26 09:30:26)
标签:

it

python

theano

deep-learning

anaconda

分类: Tec

         要做卷积神经网络的一些东西,所以要装theano,网上很多Theano安装教程版本较老,而各安装包更新很快,参考价值有限。走了很多弯路才装好,把这个过程记录下来,希望对大家有帮助~ ~

       我的配置:win7,32位(64和32位安装步骤没差,下安装包版本有差而已),vs2012

       首先推荐一篇英文安装指南,写的十分详细,很多安装指南都是参考的这篇。不过因为这篇里存在着一些冗余成分,个人酌情参考,不过遇到难题时可以看看:http://deeplearning.net/software/theano/install.html#install

0.操作系统

       ubuntu下安装会比windows下省事很多,但是好像是直接装进系统里的,python出问题会崩系统(忘了从哪里看的了),可以考虑pip个虚拟环境。我平时的工作环境是windows,并不好装,但是用起来方便一点(个人感觉)。

1.安装anaconda(已内置python,numpy和scipy两个必要库以及一些其他库,自带安装。)

       地址:http://www.continuum.io/downloads

       选择原因:安装简单,网上参考资料多。

       也有人会选pythonxy,提醒一下,网上pythonxy资源不多,我装完pythonxy, import theano之后出现了这个问题ImportError: not import name gof,百度谷歌上能试的解决方式我都试了,然并卵。

2.安装mingw

       装完anaconda直接pip install theano是行不通的,在python里搜g++会发现搜不到,有些参考资料里面写:

       添加环境变量: path: C:\Anaconda\MinGW\bin;C:\Anaconda\MinGW\x86_64-w64-mingw32\lib;  

       新建环境变量:PYTHONPATH: C:\Anaconda\Lib\site-packages\theano;

         问题在于anaconda底下根本没有MinGW包,不要听信什么自己下个zip,安装到anaconda底下,正确方法:cmd输入:conda install mingw libpython

 MinGW等文件夹会自动装到anaconda下面,life is short, save your time.

3.环境配置

      在用户变量中,PATH添加C:\Anaconda;C:\Anaconda\Scripts; 

      并新建 PYTHONPATH:C:\Anaconda\Lib\site-packages\theano;

       在cmd的home目录中新建 .theanorc.txt 文件(注意名字中的“.”),根据自己安装MinGW的路径写上MinGW的路径,我的如下:

[blas]
ldflags=


[gcc]
cxxflags = -IC:\Anaconda\MinGW

      重启电脑

4.安装theano

       别用什么theano.zip解压到目录底下或者theano_installer_latest.msi,不嫌麻烦你就去试,正确方式:cmd输入:pip install theano

(pip用法看这里:http://www.ttlsa.com/python/how-to-install-and-use-pip-ttlsa/)

       装完之后在ipython中输入以下两行代码测试一下:

       import theano

       theano.test()

       没有error的话,恭喜你,安装成功了~ ~

5.GPU加速

       GPU加速首先就是安装CUDA,然而CUDA只支持NVIDIA显卡,因为CUDA软件就是他家出的,如果你的本并不是NVIDIA显卡,别费劲了

6.BLAS

       看看numpy是不是已经默认BLAS加速了,在python里输入:

       import numpy 

       id(numpy.dot) == id(numpy.core.multiarray.dot) 

       结果为False表示已经成功依赖了BLAS加速,如果是Ture则表示用的是python自己的实现,并没有加速。

 

参考(然而他们的完全有用的话,我就没必要写这些了~ ~):

http://blog.csdn.net/tulip561/article/details/46696113

http://blog.163.com/yuyang_tech/blog/static/216050083201469101518900/

http://www.cnblogs.com/hanahimi/p/4127026.html

http://blog.csdn.net/zhouyongsdzh/article/details/24449645

 

 

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
后一篇:学会提问
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

    后一篇 >学会提问
      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有