在之前写的一文“关于PDNN、Theano、Numpy以及Scipy的安装”中介绍了Theano的安装,

下面简单的介绍一下PDNN的安装与使用,哎,这个从学习的角度来讲自己亲自动手实现一遍深度学习中的算法,

这个当然是最好了,不过目前嘛用一下toolkit也不算大错吧,何况搞编程的不是说不能重复造轮子么。

具体安装方法在官网上有,http://www.cs.cmu.edu/~ymiao/pdnntk.html,我在这而就当一个搬运工罢了。

感兴趣的可以来看看。

为什么使用PDNN?

------------------------------------------------------------------别人叫这个叫做分割线

PDNN实现了一整套的(深度学习)模型。包括有无监督的学习(SDAs,RBMs),

监督学习(DNN,CNN)和多任务的学习都可以在这个单一的框架内实现。

PDNN是在考虑非DL研究人员的需要开发出一种易于使用的工具包。

训练一个深度学习的模型正如调用下面的命令那样简单。

在CPU和GPU之间的转换是自动进行的,这取决于GPUs是否检测到存在。

python pdnn/cmds/run_DNN.py --train-data "train.pickle.gz,partition=600m,random=true" \
--valid-data "valid.pickle.gz,partition=600m,random=true" \
--nnet-spec "784:1024:1024:1024:1024:1024:1901" \
--wdir ./ --param-output-file dnn.mdl

(我居然把上面的哪个例子直接拿来用,真是见鬼了,上面那个例子只是示范,不能真正运行)

PDNN也有利于进一步的开发。层次化的代码组织(commands->models->layers)具有很好的可读性。

Theano的安装环境支持梯度计算。这使得用户能够将精力集中在算法/结构的设计上,而不是被令人头疼的梯度求导所困扰。

(多一句嘴,确实,在搞这些机器学习算法的时候,大多需要进行优化计算以寻找到最优的参数,而最优化问题目前还是梯度法用的最多)

安装

-------------------------------------------------------------------------------分割线又来了

1. 安装Theano。

2. 检查GitHub上PDNN的稳定版本。

git clone https://github.com/yajiemiao/pdnn

3. 添加PDNN的路径到PYTHONPATH

export PYTHONPATH=/path/to/pdnn:$PYTHONPATH

这个PDNN应该算是python的第三方库,由于我对python不熟练,

在bash下,运行echo $PYTHONPATH,发现啥都没有,然后懵逼了,死活不知道怎么搞着pdnn路径

后来还是搞清楚了,上面的第三局还是照常执行,然后效果要在python中看,如下图

PDNN安装与使用的更多相关文章

  1. 关于PDNN、Theano、Numpy以及Scipy的安装

    最近为了用下PDNN,先得安装这玩意,不装不知道,一装吓一跳,依赖关系也太多了吧,顿时有种贵圈真乱的感觉,如图1. 不过这B还得装下去. 图1 安装PDNN的依赖关系 之前也碰了好多问题,不过各种参考 ...

  2. PDNN: 深度学习的一个Python工具箱

    PDNN: 深度学习的一个Python工具箱 PDNN是一个在Theano环境下开发出来的一个Python深度学习工具箱.它由苗亚杰(Yajie Miao)原创.现在仍然在不断努力去丰富它的功能和扩展 ...

  3. PDNN中数据格式和数据装载选项

    吃人家嘴短,拿人家手短,用别人的东西就不要BB了,按规矩来吧. 训练和验证的数据都在命令行以变量的形式按如下方式指定: --train-data "train.pfile,context=5 ...

  4. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  5. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

  6. Sublime Text3安装JsHint

    介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...

  7. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  8. gentoo 安装

    加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...

  9. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

随机推荐

  1. 【微信小程序】:客服消息教程

    1.本教程完全链接W3Cschool的教程,已经讲的非常清晰和透彻. 2.链接:https://www.w3cschool.cn/weixinapp/weixinapp-api-custommsg-c ...

  2. php开发中sql语句拼接示例(插入、查询、更新)

    1.插入语句 $sql="insert into Ad(AdClassID,AdType,AdTit,AdFileName,AdUrl,AShow,Addtime) values('&quo ...

  3. PHP基于Sphinx+Swcs中文分词的全文的检索

    简介 Sphinx是开源的搜索引擎,它支持英文的全文检索.所以如果单独搭建Sphinx,你就已经可以使用全文索引了 但是有些时候我们还要进行中文分词所有scws就出现了,我们也可以使用Coreseek ...

  4. leetcode689:Maximum Sum of 3 Non-Overlapping Subarrays

    给定数组a[N](每个元素都是正整数)和一个整数k(k小于等于N/3),要求从数组a中找出不相交的三个数组,每个数组长度都为k,使得三个数组之和最大.输出(i,j,k)表示三个子数组的开始下标,如果有 ...

  5. eclipse安装插件的方式 三种:links、eclipse中使用插件安装向导安装、直接copy插件到对应的eclipse目录 MyEclipse10安装SVN插件

    myeclipse安装插件 1.直接将插件copy到myeclipse目录下的dropins目录下(没有目录就新建一个),重启,详细参考 MyEclipse使用总结——MyEclipse10安装SVN ...

  6. MyEclipse和Microsoft Visual Studio常用快捷键

    MyEclipse       Visual Studio            NOTEF5            F11                 单步执行 F6            F1 ...

  7. Java annotation 自定义注释@interface的用法

    最近看到很多项目都是用了自定义注解,例如 1.什么是注解? 元数据(metadata),就是指数据的数据,元数据是描述数据的,就像数据库中的,表的字段,每一个 字段描述这个字段下面·的数据的含义,j2 ...

  8. windows平台安装redis服务

    有时候我们需要在windows平台上使用redis作为缓存服务,这个时候就需要将redis安装为window服务. 现在将我安装过程记录下来,方便自己或者有类似需求的同学参考.主要是参考网上现有的例子 ...

  9. PLSQL_统计信息系列10_统计信息过旧导致程序出现性能问题

    2014-11-15 Created By BaoXinjian

  10. PSAPI和ToolHelpAPI学习笔记

    标 题: PSAPI学习笔记 作 者:北极星2003 时 间:2005-07-24 18:36 链 接:http://bbs.pediy.com/showthread.php?threadid=154 ...