• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

lonl/CDBN: Convolutional Deep Belief Networks with 'MATLAB','MEX&#39 ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

lonl/CDBN

开源软件地址(OpenSource Url):

https://github.com/lonl/CDBN

开源编程语言(OpenSource Language):

MATLAB 72.0%

开源软件介绍(OpenSource Introduction):

Convolutional Deep Belief Networks with 'MATLAB','MEX','CUDA' versions

This program is an implementation of Convolutional Deep Belief Networks. In this code, the binary and Gaussian visable types are both supported. In addition, CUDA acceleration is also included. We provide some demo programs to show the usage of the code.

Requirement

  • OS: Ubuntu 10.04 (64-bit) (only test on this plateform)
  • GNU C/C++ compiler
  • Matlab
  • CUDA 5.0 or above

Build

  • Change the path to 'CDBN/toolbox/CDBNLIB/mex'
  • edit 'Makefile', modify 'MATLAB_DIR' and 'CUDA_DIR' to your correct path.
  • make

Run the program

  • run 'setup_toolbox.m';
  • run 'DemoCDBN_Binary_2D.m' or 'DemoCDBN_Gaussian_2D.m'

Experiments

We have conducted classification experiments with 'Convolutional Deep Belief Networks', 'Deep Belief Networks', and 'Directed Softmax' in mnist data (2000 train data & 2000 test data). The detail parameters of these three ways can be found in code.

The comparison results (accuracy) are as follows:

No noise added in test data: CDBN: 95.1% DBN: 91.5% Softmax: 87.7%

10% noise added in test data: CDBN: 92.8% DBN: 86.7% Softmax: 83.2%

20% noise added in test data: CDBN: 84.4% DBN: 60.1% Softmax: 74.7%

Note

  • Different computation methods can be selected. Currently, matlab matrix computation, MEX, CDUA are supported. You can change the computation method globaly in 'CDBN/toolbox/CDBNLIB/default_layer2D.m' by select one of the methods.

layer.matlab_use = 0; layer.mex_use = 1; layer.cuda_use = 0;

or you can change the computation method in the layer defination, for example, you can add above lines to 'DemoCDBN_Binary_2D.m' at layer 1's defination as:

layer{1}.matlab_use = 0; layer{1}.mex_use = 0; layer{1}.cuda_use = 1;

  • The acceleration effect of 'CUDA' version is not obvious in first layer. But it may be better in the later layer for big size pictures.

Connection

If you have any problem, or you have some suggestions for this code, please contact me: [email protected], thank you very much!




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap