PDNN安装与使用
在之前写的一文“关于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安装与使用的更多相关文章
- 关于PDNN、Theano、Numpy以及Scipy的安装
最近为了用下PDNN,先得安装这玩意,不装不知道,一装吓一跳,依赖关系也太多了吧,顿时有种贵圈真乱的感觉,如图1. 不过这B还得装下去. 图1 安装PDNN的依赖关系 之前也碰了好多问题,不过各种参考 ...
- PDNN: 深度学习的一个Python工具箱
PDNN: 深度学习的一个Python工具箱 PDNN是一个在Theano环境下开发出来的一个Python深度学习工具箱.它由苗亚杰(Yajie Miao)原创.现在仍然在不断努力去丰富它的功能和扩展 ...
- PDNN中数据格式和数据装载选项
吃人家嘴短,拿人家手短,用别人的东西就不要BB了,按规矩来吧. 训练和验证的数据都在命令行以变量的形式按如下方式指定: --train-data "train.pfile,context=5 ...
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法
如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...
- Sublime Text3安装JsHint
介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...
- Fabio 安装和简单使用
Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...
- gentoo 安装
加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...
- 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. ...
随机推荐
- HDUOJ----4509湫湫系列故事——减肥记II
湫湫系列故事——减肥记II Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Tot ...
- HawkHost退款流程详解
http://www.senzw.com/newsfile/2011928115323.htmlHawkhost提供30天退款保证,退款流程也比较简单,下面为大家介绍一下整个退款流程. 首先登录客户中 ...
- 关于android闹钟,设置定时提醒的一点心得
首先在设置提醒之前你需要一个入口,比如说onclick事件中,在此不做赘述. android中使用闹钟进行提醒其实非常简单,你只需要告知系统你想在什么时候被提醒,然后需要一个闹钟的广播接收器,当到你设 ...
- 工作总结 public DateTime? CollectionTime 可空类型 Code First
数据库生成就对应生成 可以为空 的字段
- 转 生成 HTMLTestRunner 测试报告
转自:http://www.cnblogs.com/hero-blog/p/4128575.html 04.生成 HTMLTestRunner 测试报告 1.HTMLTestRunner 是 P ...
- Latex 转 word 技法大全
Latex 转 word 技法大全 在稿件接收后,经常会遇到出版社要求变更稿件格式,其中最多的是latex变为word格式.如果手工操作,是非常麻烦的,还容易出错.如果钱多得花不了,可以让出版社找人去 ...
- Java中的static关键字的用法
1.静态方法 static:通常在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法 声明为static的方法有以下几条限制: (1)它们仅能调用其他的static方法. (2 ...
- linux权限详解
一个用户.一个组 我们来看一看 Linux 权限和所有权模型.我们已经看到每个文件属于一个用户和一个组.这正是 Linux 中权限模型的核心.您可以在 ls -l 清单中查看用户和组: $ ls -l ...
- ps曲线
>>曲线的基本原理. 输入:在坐标的底部横着的是输入,显示的是当前图片上的颜色信息. 输出:竖着的是输出线,使我们调整图片的输出结果. 输入和输出轴上都有一条明暗信息,告诉我们那边是阴影那 ...
- C#扩展方法实现 byte[] 输出为HEX字符串形式
public static class Util { public static string ToHexString(this byte[] bytes) { string byteStr = st ...