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

matlab 使用deeplearning Toolbox出现索引错误

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

笔者是用matlab2016、cpu、SAE方法进行mnist深度学习测试。

首先放一下问题,当用Deeplearning Toolbox工具包和SAE进行mnist数据训练和测试时出现这种情况,这是因为程序用的是原来matlab里自带的lmiunpck、nnsetup子函数,而不是Deeplearning Toolbox工具包里的函数,所以导致冲突。如下图所示:

笔者搜集了一下,整理出以下解决步骤:

1 安装 deeplearning Toolbox工具包

在github上直接下载:https://github.com/rasmusbergpalm/DeepLearnToolbox

然后把安装包放到matlab的toolbox安装路径下,我的路径是:C:\Program Files\MATLAB\R2016b\toolbox

2 在matlab中添加刚才的路径,主页-设置路径-添加并包含子文件夹-路径。结果如下图。

 3 再运行就ok了。

 

 

 test_example_SAE.m如下:

load mnist_uint8;
train_x = double(train_x)/255;
test_x  = double(test_x)/255;
train_y = double(train_y);
test_y  = double(test_y);

%%  ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN
%  Setup and train a stacked denoising autoencoder (SDAE)
rand('state',0)
sae = saesetup([784 100]);
% sae = saesetup([784 100]);
sae.ae{1}.activation_function       = 'sigm';
sae.ae{1}.learningRate              = 1;
sae.ae{1}.inputZeroMaskedFraction   = 0.5;
opts.numepochs =   1;
opts.batchsize = 100;
sae = saetrain(sae, train_x, opts);
visualize(sae.ae{1}.W{1}(:,2:end)')

% Use the SDAE to initialize a FFNN
nn = nnsetup([784 100 10]);
nn.activation_function  = 'sigm';
nn.learningRate =1;
nn.W{1} = sae.ae{1}.W{1};

% Train the FFNN
opts.numepochs =   1;
opts.batchsize = 100;
nn = nntrain(nn, train_x, train_y, opts);
[er, bad] = nntest(nn, test_x, test_y);
disp([num2str(er*100) '%error']);


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
Delphi设计形象的动态三维饼图发布时间:2022-07-18
下一篇:
delphi中指针操作符^的使用发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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