WinXP 32bit下安装theano和Keras

WinXP 32bit下安装theano和Keras

在自己的老爷机上折腾了好几天终于装上了theano和keras,接下来打算花精力学习keras,因为自己在安装上碰到很多问题,为了给和我一样想要学习keras的读者一点点帮助,同时也避免自己以后需要,先记下为好。

  • **注:网上可以找到很多win7以上系统的theano安装方法,方法都是大同小异的,我在另一台电脑(win7)上试验可行,所以如果你是win7以上系统的可以直接百度(或者本方法也可),方法很多。另外,由于本人的老爷机是A卡,所以这里并不实现GPU加速。

需要的软件:
- Anaconda(集成大部分安装所需要的Python包) https://www.continuum.io/downloads/
- TDM-GCC(为winXP提供g++编译器)http://tdm-gcc.tdragon.net/download


1.安装Anaconda和TDM-GCC

下载合适的Anaconda和TDM-GCC版本安装。安装TDM-GCC时可以勾选将安装路径添加path选项,便于测试g++环境是否安装成功,可以装在任意盘。安装完TDM-GCC后,打开winXP的命令提示符,输入cmd,输入g++ -v就可以看到gcc的版本信息,然后新建Hello.cpp输入下面的代码:

#include  "iostream"    
using namespace std;     
int main()     
{     
    cout<<"Hello,World!/n"; 
    return 0;     
}
 ...

cd到Hello.cpp保存的位置,输入g++ Hello.cpp,稍等一小会后输入“a”
后出现Hello world!表明配置成功。

2.安装libpython、theano和keras

打开Anaconda Prompt,分别输入:
1. 安装libPython:输入conda install libpython;注意不要加上mingw
2. 安装theano:输入pip install theano;
3. 从github下载最新theano-master下的theano子文件夹,将这个文件夹覆盖anaconda安装路径\Lib\site-packages\theano这个文件。(重要,我开始没有覆盖,import theano时报错,找不到g++);
4. 安装keras:输入pip install keras;

3.配置环境

安装Anaconda时如果勾选了“添加到path路径”就不用为Anaconda安装路径添加到环境变量,否则将Anaconda安装路径;Anaconda安装路径\Scripts;Anaconda安装路径\Library\bin添加到path;新建一个环境变量PYTHONPATH,输入Anaconda安装路径\Lib\site-packages\theano。接下来是重点,为theano指明gcc编译器的。在在home文件夹(命令提示符“cmd”显示的路径)下新建一个文本文档,取名为.theanorc.txt,并在里面输入内容:
[global]
openmp=False
[blas]
ldflags=
[gcc]
cxxflags=-I[TDM-GCC安装路径]\include -I[TDM-GCC安装路径]\mingw32\include
打开Anaconda下的IPython,输入import theano,没有显示任何信息则配置正确:
这里写图片描述
另输入import keras会报错,因为keras默认建立在tensorflow框架上,通过修改keras.json(在home文件夹\ .keras)这个文件的backend为“theano”就好了:
这里写图片描述

4.测试

打开Anaconda下的IPython,输入下面代码:

import numpy as np  
import time  
import theano  
A = np.random.rand(1000,10000).astype(theano.config.floatX)  
B = np.random.rand(10000,1000).astype(theano.config.floatX)  
np_start = time.time()  
AB = A.dot(B)  
np_end = time.time()  
X,Y = theano.tensor.matrices('XY')  
mf = theano.function([X,Y],X.dot(Y))  
t_start = time.time()  
tAB = mf(A,B)  
t_end = time.time()  
print("NP time: %f[s], theano time: %f[s] (times should be close when run on CPU!)" %(  
                                           np_end-np_start, t_end-t_start))  
print("Result difference: %f" % (np.abs(AB-tAB).max(), ))

正常情况,输出结果如下:
这里写图片描述


[1]:http://blog.csdn.net/youmy1111/article/details/51337054
[2]:http://deeplearning.net/software/theano/install_windows.html#git-install
[3]:http://www.jianshu.com/p/b8a703df5318
[4]:https://github.com/Theano/Theano/issues/4778

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值