Neural Turing Machines-NTM系列(二)开发环境搭建

来源:互联网 发布:驱动精灵相似软件 编辑:程序博客网 时间:2024/06/11 02:10

Neural Turing Machines-NTM系列(二)开发环境搭建

1.OpenSource

在NTM系列文章(一)中我们对NTM的原理做了简单介绍,接下来就来说说它的实现。目前网上能够找到各种版本的开源source:
1.基于Theano的python语言实现2:https://github.com/snipsco/ntm-lasagne
2.基于Theano的python语言实现1:https://github.com/shawntan/neural-turing-machines
3.基于Torch的实现:https://github.com/kaishengtai/torch-ntm
4.基于Tensor Flow的实现:https://github.com/carpedm20/NTM-tensorflow
5.基于C#的实现:https://github.com/JanTkacik/NTM
6.基于JS语言的实现:https://github.com/gcgibson/NTM
7.GO语言实现:https://github.com/fumin/ntm
其中第一个版本ntm-lasagne相对实现较为完整,我们就以它为例展开说明。

2.环境搭建

  1. 首先确保有一台N系列的显卡的高配PC,ubuntu操作系统,正确配置的eclipse开发环境。
  2. 安装最新的cuda库,安装完成后,在用户主目录下(/home/用户名/)按ctrl+h显示隐藏文件,将如下内容添加到文件.theanorc中
    [blas]
    ldflags = -lopenblas
    [global]
    floatX=float32
    device=gpu
    [cuda]
    root=/usr/local/cuda-7.5
    [nvcc]
    fastmath = True
    flags = -arch=sm_30
    注意,最后一项内容应该是sm_52,只有当编译时nvcc报错说不支持当前版本时才需要修改。
  3. 安装Theano,并完成相关配置:http://blog.csdn.net/niuwei22007/article/details/50439478Theano是一个不错的开源DL框架,这里有中文的帮助文章,这里还有一个翻译自官网的中文系列文章。
  4. 安装eclipse的pyDev开发插件,该插件让你可以使用eclipse的IDE来调试,编写python程序,提高效率。
  5. clone ntm-lasagne项目到本地目录并安装:
    git clone https://github.com/snipsco/ntm-lasagne.git
    cd ntm-lasagne/
    pip install -r requirements.txt
    python setup.py install
  6. 打开eclipse,选择new project->pyDev project:
    这里写图片描述
  7. 点击Next按钮,在设置对话框中随便起一个名字(这里写”NTMTheano”),最后的单选项,选择”Create links to existing source”,点Next
    这里写图片描述

8.在弹出的对话框中点击”Add external source folder”按钮,选择ntm-lasagne根目录:
这里写图片描述
9.eclipse中出现如下工程目录:
这里写图片描述
10.我们发现代码中有不少红叉,不用理会,在examples目录下的任意文件上右键点击:
Run As(如果是Debug选择Debug As)->python run,如果配置没问题,程序将顺利执行。这里我们以task-copy.py为例
11.在task-copy.py的main函数第3行,有一个输入参数“max_iter”,是设置训练时的迭代次数,默认值较大,建议改为一个较小的值,这样可以很快看到结果,这里改为了100:
这里写图片描述
12.程序开始运行后,可能会出现一些报错,只要表明运行的小红块没有变灰,说明该错误并不影响程序运行,就直接无视:
这里写图片描述
13.程序运行完成后,弹出一个对话框,显示了执行结果:
这里写图片描述
14.如果遇到错误
ImportError: No module named matplotlib.pyplot
解决方法:
sudo apt-get install python-matplotlib
15.可能还会有一些错误导致程序无法运行:如果编译时提示ImportError找不到XXX,则直接在命令行执行pip install XXX,再重新编译。

0 0
原创粉丝点击