PDNN: 深度学习的一个Python工具箱
PDNN: 深度学习的一个Python工具箱
PDNN是一个在Theano环境下开发出来的一个Python深度学习工具箱。它由苗亚杰(Yajie Miao)原创。现在仍然在不断努力去丰富它的功能和扩展它的应用。PDNN发布在under Apache 2.0, one of the least restrictive licenses available。
为什么使用PDNN?
PDNN实现了一整套的模型,在这个单一的框架内,无监督学习(SDAs,RBMs),有监督学习(DNN,CNN)和多任务学习都可以实施。
PDNN是一个易于使用的工具箱,developed with the needs of non-DL reseachers in mind。训练一个DNN只需调用如下命令那么简单。在CPU和GPU的转换是自动的,这取决于GPU是否被检测到。
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。更多的细节参考Theano安装。如果你正在运行Ubuntu Linux,在这篇文档中的步骤将会帮你安装Theano。
2. 从GitHub上获取稳定版的PDNN。
> git clone https://github.com/yajiemiao/pdnn
3. 增加PDNN路径到PYTHONPATH
> export PYTHONPATH=/path/to/pdnn:$PYTHONPATH
例子
在pdnn/examples目录下可以找到案例。这些案例文档将会不断地更新和丰富。在每个文档页的底部,你都可以找到每个案例的使用命令。
文档
关于PDNN一些一般的信息见如下链接:
Speed up CNN Training with cuDNN
在pdnn/cmds目录下的命令能进行一般目的的DL,其中包括:
Training Convolutional Neural Networks
Training Stacked Restricted Boltzmann Machines
Training Stacked Denoising Autoencoders
Feature Extraction with a Trained Network
文档—pdnn/cmds2
---------------------------------------------------------------------------------------------------
在目录pdnn/cmds2目录下的命令是特地为ASR准备的
Generating and Save Convolution Layer Activation
Kaldi-formatted Feature Extraction with a Trained Network
联系他们
---------------------------------------------------------------------------------------------------
(建议)将你的问题,建议和讨论发送到GitHub Issues。你也可以发送emails给 Yajie Miao(yajiemiao@gmail.com)
引用
---------------------------------------------------------------------------------------------------
如果你在你的论文/出版物中使用了PDNN请引用如下稿件:
Yajie Miao, "Kaldi+PDNN: Building DNN-based ASR Systems with Kaldi and PDNN," arXiv:1401.6984, 2014.
PDNN: 深度学习的一个Python工具箱的更多相关文章
- 一个可扩展的深度学习框架的Python实现(仿keras接口)
一个可扩展的深度学习框架的Python实现(仿keras接口) 动机 keras是一种非常优秀的深度学习框架,其具有较好的易用性,可扩展性.keras的接口设计非常优雅,使用起来非常方便.在这里,我将 ...
- [深度学习]实现一个博弈型的AI,从五子棋开始(1)
好久没有写过博客了,多久,大概8年???最近重新把写作这事儿捡起来……最近在折腾AI,写个AI相关的给团队的小伙伴们看吧. 搞了这么多年的机器学习,从分类到聚类,从朴素贝叶斯到SVM,从神经网络到深度 ...
- [深度学习]实现一个博弈型的AI,从五子棋开始(2)
嗯,今天接着来搞五子棋,从五子棋开始给小伙伴们聊AI. 昨天晚上我们已经实现了一个五子棋的逻辑部分,其实讲道理,有个规则在,可以开始搞AI了,但是考虑到不够直观,我们还是顺带先把五子棋的UI也先搞出来 ...
- 深度学习 + OpenCV,Python实现实时视频目标检测
使用 OpenCV 和 Python 对实时视频流进行深度学习目标检测是非常简单的,我们只需要组合一些合适的代码,接入实时视频,随后加入原有的目标检测功能. 在本文中我们将学习如何扩展原有的目标检测项 ...
- 【神经网络与深度学习】【python开发】caffe-windows使能python接口使用draw_net.py绘制网络结构图过程
[神经网络与深度学习][python开发]caffe-windows使能python接口使用draw_net.py绘制网络结构图过程 标签:[神经网络与深度学习] [python开发] 主要是想用py ...
- MINIST深度学习识别:python全连接神经网络和pytorch LeNet CNN网络训练实现及比较(三)
版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com 在前两篇文章MINIST深度学习识别:python全连接神经网络和pytorch LeNet CNN网 ...
- 2020年12月18号--21号 人工智能(深度学习DeepLearning)python、TensorFlow技术实战
深度学习DeepLearning(Python)实战培训班 时间地点: 2020 年 12 月 18 日-2020 年 12 月 21日 (第一天报到 授课三天:提前环境部署 电脑测试) 一.培训方式 ...
- [深度学习]实现一个博弈型的AI,从五子棋开始
好久没有写过博客了,多久,大概8年???最近重新把写作这事儿捡起来……最近在折腾AI,写个AI相关的给团队的小伙伴们看吧. 搞了这么多年的机器学习,从分类到聚类,从朴素贝叶斯到SVM,从神经网络到深度 ...
- 2021年1月15日【深度学习DeepLearning(python)实战班】
深度学习网络课程QQ群群号: 1057802989(加群备注:杨春娇邀请) 强化学习QQ交流群群号: 872395038(加群备注:杨春娇邀请)
随机推荐
- 解决sitemesh3装饰页面不能使用freemarker标签问题
如题,这个问题其实在sitemesh2中已经很好的解决了,不过在sitemesh3中可能没有解决,所以要自己写代码解决了,下面我先讲下sitemesh2是如何解决的: <servlet> ...
- 如何使php页面中不再出现NOTICE和DEPRECATED的错误提示
在php.ini配置文件中修改: error_reporting=E_ALL & ~E_NOTICE & ~E_DEPRECATED 亲测有效,拿去用吧
- 转:PHP关于反斜杠处理函数addslashes()和stripslashes()的用法
1.php处理\函数:addslashes()和stripslashes()函数 addslashes():对输入字符串中的某些预定义字符前添加反斜杠,这样处理是为了数据库查询语句等的需要.这些预定义 ...
- windows添加开机启动项
http://www.cnblogs.com/jokey/archive/2010/06/17/1759370.html添加开机启动项(通过注册表) 例子:增加QQ开机启动项 第一步:找到注册表的启动 ...
- Redis基本操作——List
Redis基本操作——List(原理篇) 学习过数据结构的同学,一定对链表(Linked List)十分的熟悉.相信我们自己也曾经使用过这种数据结构. 链表分为很多种:单向链表,双向链表,循环链表,块 ...
- AP_自动付款工作台设定和操作(流程)
2014-06-04 Created By BaoXinjian
- Android特性与系统架构
Android特性与系统架构 一.Android特性 • 应用程序框架支持组件的重用与替换 • Dalvik 虚拟机专为移动设备优化 • 集成的浏览器基于开源的WebKit 引擎 • 优化的图形库包括 ...
- Android github上开源项目、酷炫的交互动画和视觉效果地址集合
Android上开源的酷炫的交互动画和视觉效果:http://blog.csdn.net/u013278099/article/details/50323689 Awesome-android-ui: ...
- STM32 可编程电压监测器(PVD)实现数据掉电保存
STM32内部有一个完整的上电复位和掉电复位电路,当供电电压达到2v时系统即能正常工作. STM32内部自带PVD功能,用于对MCU供电电压VDD进行监控.通过电源控制寄存器中的PLS[2:0]位可以 ...
- docker lnmp php
使用 Docker 构建 LNMP 环境 https://segmentfault.com/a/1190000008833012 Docker 快速上手指南 https://segmentfault. ...