Win7下成功安装深度学习库的完整教程 这两天我忙着安装那个深度学习库。我是真的尝试了好多遍。CMake、MinGW、BLAS这些东西, 我全部都装了。然后自己试着去编译, 在网上也搜索了一大堆教程。但是不管怎么弄, 就是都没有成功。一直到昨晚的晚上, 我回家把电脑清理干净了。接着我又小心翼翼地重装了一遍。这一次是成功的。到今天我到了公司之后, 又按照这个办法装了一遍。结果发现再次成功。所以现在我决定把所有的步骤记录下来。本步骤是针对WIN7 64位操作系统进行的, 具体的软件版本号为3.4.3 64bit。1. 请你把电脑里面干净一下。还要清理那些之前安装的MinGW这些工具的环境变量。2. 先进行安装, 需要安装的是SDK for 7和.NET 4。链接在这里, 密码是: iy4c。3. 步骤是完成对软件的安装, 具体的安装对象为CUDA5.5, 相关的资源链接已经准备在下方, 对应的访问密码则是p9r4, 请直接参考使用。4. 安装步骤, 需要去下载安装GCC这个软件工具链接地址在那里, 具体的访问密码是zvsx。在实施安装操作的过程中, 务请注意勾选那个名为空字符串的选项, 切记不要勾选标称为“add to PATH”的选项。5. 等你把GCC安装程序执行完毕, 接着要去把“D:\TDM-GCC-64\bin”和“D:\TDM-GCC-64\-w64-”添加到环境变量里头的设定中。请注意一下, 我当前这里的情况是把软件装在D盘这个位置了, 所以具体的操作需要你按照自己实际选择的安装所在路径来进行相应的修改和调整。6. 安装这个方法。如果采用原生方式去操作的话, 还得另行安装BLAS也就是基础线性代数程序集。自己单独去安装这个东西其实是非常麻烦的。之所以选择使用这种发行包, 主要的原因在于它能够自动链接MKL库。这样一来, 我们就不需要亲自动手去编译和安装BLAS了。此外, 这个发行包里还直接包含了诸如numpy、scipy、nltk、PyQt4等数十个日常常用的库。链接地址是: 密码为: yc78。想要去检查 numpy 以及那些类似的库, 它们到底有没有用到 blas, 来进行加速处理的话, 你可以在当前的环境里面, 直接输入相关的代码内容:importnumpyid(numpy.dot) id(numpy.core.multiarray.dot)若出现的结果是: False, 这就意味着已经达成了BLAS加速的效果。7. 需要去创建属于GCC那个链接库的相关东西。要在命令行终端里面把当前的工作目录, 移动到你所安装的磁盘符号所代表的那个根路径下面。紧接着, 就可以开始执行对应的操作指令了。gendef WinPython-64bit-3.4.3.2\python-3.4.3.amd64\python34.dlldlltool --dllname python34.dll --def python34.def --output-lib WinPython-64bit-3.4.3.2\python-3.4.3.amd64\libs\libpython34.dll.a8. 进行安装这一操作。根据官方给出的推荐意见, 是采用git来进行安装的。我自己尝试过按照这个方案操作了, 最后还是决定采用手动安装的方式, 把之前下载得到的, 名称是“-0.7.0-py3-none-any.whl”的那个文件, 放置到“\-64bit-3.4.3.2\-3.4.3.amd64\Lib\site-”这个位置里面去, 然后执行在那个目录底下存在的, “文件名以.exe结尾”的程序, cd到site-目录, 输入: pip -0.7.0-py3-none-any.whl。链接是: , 提取密码则是: nye6。# 2015.05.20更新# 推荐大家使用开发版的官方解释是修复了海量BUG…# 先下载git for , 链接的网址后面会给出, 密码是ayi6。# 然后进入site-文件夹右键Git Bash Here输入git clone然后, 把注意力切换到该文件夹里面, 去执行一下安装的操作就行了, 使用的文件是*setup.py*。9. 配置。在相应目录里面的那个文件夹之中去创建一个文件, 文件名是“..txt”, 然后在它里面输入这样一些内容。[global]floatX float32device gpu[cuda]root D:\cuda5.5\bin注意: 这里的, cuda的目录, 根据你安装路径自行调整10. 现在你需要重新启动你的电脑, 这步操作非常关键。11. 我们要对那个是否安装成功了这件事进行测试, 步骤是这样子的, 先去打开IDLE这个玩意儿, 然后在里面键入那些官方提供的测试代码, 要知道官方的那段原始代码是基于某种情况写的, 我这边已经把它修改成了可以直接执行的那种格式的代码了:fromtheanoimportfunction, config, shared, sandboximporttheano.tensor as Timportnumpyimporttimevlen 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([], sandbox.cuda.basic_ops.gpu_from_host(T.exp(x)))print(f.maker.fgraph.toposort())t0 time.time()foriinrange(iters):r f()t1 time.time()print(Looping %d times took% iters, t1 - t0,seconds)print(Result is, r)print(Numpy result is, numpy.asarray(r))ifnumpy.any([isinstance(x.op, T.Elemwise)forxinf.maker.fgraph.toposort()]):print(Used the cpu)else:print(Used the gpu)一旦完成了相关的动作, 屏幕上就有可能会呈现出类似于下面所展示出来的那一种具体的信息。Using gpu device 0: GeForce 605[GpuElemwise{exp,no_inplace}()]Looping 1000 times took 0.48799991607666016secondsResultisNumpy resultis[ 1.23178029 1.61879349 1.52278066 ..., 2.20771813 2.299677611.62323296]Used the gpu嗯……公司的电脑的显卡是605。这样以后就完全搞定了, 我自己在摸索着进行安装操作的时候, 碰到了好多各种各样的错误消息, 大家要是也遇上了有什么搞不定的地方, 可以留下来言说, 也许我能找到方法来解决问题呢。