首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在10^5稀疏矩阵上运行Matlab自动编码器时出现内存不足错误

在10^5稀疏矩阵上运行Matlab自动编码器时出现内存不足错误
EN

Stack Overflow用户
提问于 2016-09-12 05:45:21
回答 1查看 161关注 0票数 0

我有一个10^5平方的稀疏矩阵,叫做pbAttack。每个元素表示节点i和节点j之间是否有连接,如果有连接,则pbAttack(i,j) = 1,否则pbAttack (i,j) = 0。然后我想在本教程之后使用它:Matlab Autoencoders。我使用的代码与链接的Matlab教程中的代码相同。我只是为了使用我的数据而改变它。但是,我得到了以下错误:

代码语言:javascript
复制
Error using bsxfun
Out of memory. Type HELP MEMORY for your options.

Error in mapminmax.apply (line 8)
y = bsxfun(@plus,y,settings.ymin);

Error in mapminmax.create (line 44)
 y = mapminmax.apply(x,settings);

Error in mapminmax (line 51)
[y,settings] = mapminmax.create(x,param);

Error in nnet.internal.configure.input (line 31)
[x,config] = feval(processFcns{j},x,processParams{j});

Error in network/configure (line 234)
net = nnet.internal.configure.input(net,i,X{i});

Error in nntraining.config (line 116)
net = configure(network(net),X,T);

Error in nntraining.setup>setupPerWorker (line 68)
[net,X,Xi,Ai,T,EW,Q,TS,err] =   nntraining.config(net,X,Xi,Ai,T,EW,configNetEnable);

Error in nntraining.setup (line 43)
[net,data,tr,err] = setupPerWorker(net,trainFcn,X,Xi,Ai,T,EW,enableConfigure);

Error in network/train (line 335)
[net,data,tr,err] =    nntraining.setup(net,net.trainFcn,X,Xi,Ai,T,EW,enableConfigure,isComposite);

Error in Autoencoder.train (line 490)
        net = train(net,X,X,'useGPU',iYesOrNo(useGPU));

Error in trainAutoencoder (line 105)
autoenc = Autoencoder.train(X, autonet, paramsStruct.UseGPU);

Error in workflow_autoencoder (line 8)
autoenc1 = trainAutoencoder(pbAttack,hiddenSize,...

所有这些错误都是由矩阵的巨大尺寸引起的吗?有没有办法让它不需要这么多内存?非常感谢。

EN

回答 1

Stack Overflow用户

发布于 2016-09-12 05:53:28

这只是意味着你没有足够的内存(因为你的矩阵不是那么稀疏)。您可以尝试通过减小矩阵的大小来重复代码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39440939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档