matlab 524288,Cannot display summaries of variables with more than 524288 elements. 怎么...
急求!!!!!!!!
cnn进行MNIST手写数字库识别
程序已调通
但查看中间层数据却提示Cannot display summaries of variables with more than 524288 elements.
后来查到可以保存为excel
但保存为excel 时提示Index exceeds matrix dimensions.
不知道该怎么办
求解
代码如下
clear all
% Hyper-parameters
imageSize = 28;
filterNum1 = 10;
filterSize1 = 5;
poolDim1 = 2;
filterNum2 = 10;
filterSize2 = 5;
poolDim2 = 2;
convDim1 = imageSize - filterSize1 + 1;
outputDim1 = convDim1/poolDim1;
convDim2 = outputDim1 - filterSize2 + 1;
outputDim2 = convDim2/poolDim2;
classNum = 10;
sampleSize = 60000;
mbSize = 50; % mini-batch sample size
r = 0.05; % learning rate
wdr = 0.00; % weight decay rate
mom = 0.5; % momentum
epochNum = 1;
% Load data
addpath('E:/YUI/common');
images = loadMNISTImages('E:/YUI/common/train-images-idx3-ubyte');
images = reshape(images,imageSize,imageSize,[]);
labels = loadMNISTLabels('E:/YUI/common/train-labels-idx1-ubyte');
labels(labels==0) = 10;
labelMat = full(sparse(labels,1:length(labels),1));
% Initialize parameters
Wc1 = 0.1*(randn(filterSize1,filterSize1,filterNum1));
bc1 = zeros(filterNum1,1);
Wc2 = 0.1*(randn(filterSize2,filterSize2,filterNum1,filterNum2));
bc2 = zeros(filterNum2,1);
Wd = 0.01*(rand(classNum,filterNum2*outputDim2^2) - 0.5);
bd = zeros(classNum,1);
% Velocity of parameters
vel_Wc1 = zeros(size(Wc1));
vel_bc1 = zeros(size(bc1));
vel_Wc2 = zeros(size(Wc2));
vel_bc2 = zeros(size(bc2));
vel_Wd = zeros(size(Wd));
vel_bd = zeros(size(bd));
%% Training
for e = 1:epochNum
err = 0;
rp = randperm(sampleSize);
for s = 1:mbSize:(sampleSize-mbSize+1)
mbImages = images(:,:,rp(s:s+mbSize-1));
% Feedforward
o1 = zeros(convDim1,convDim1,filterNum1,mbSize);
for i = 1:filterNum1
o1(:,:,i,:) = convn(mbImages,rot90(Wc1(:,:,i),2),'valid') + bc1(i);
end
o1Pooled = zeros(outputDim1,outputDim1,filterNum1,mbSize);
o1PoolIdx = zeros(outputDim1^2,filterNum1,mbSize);
for i = 1:mbSize
for j = 1:filterNum1
[o1Pooled(:,:,j,i) o1PoolIdx(:,j,i)] = MaxPooling(o1(:,:,j,i),[poolDim1 poolDim1]);
end
end
o2 = zeros(convDim2,convDim2,filterNum2,mbSize);
for i = 1:filterNum2
for j = 1:filterNum1
o2(:,:,i,:) = o2(:,:,i,:) + convn(o1Pooled(:,:,j,:),rot90(Wc2(:,:,j,i),2),'valid');
end
o2(:,:,i,:) = o2(:,:,i,:) + bc2(i);
end
o2Pooled = zeros(outputDim2,outputDim2,filterNum2,mbSize);
o2PoolIdx = zeros(outputDim2^2,filterNum2,mbSize);
for i = 1:mbSize
for j = 1:filterNum2
[o2Pooled(:,:,j,i) o2PoolIdx(:,j,i)] = MaxPooling(o2(:,:,j,i),[poolDim2 poolDim2]);
end
end
o2PooledVec = reshape(o2Pooled,[],mbSize);
o3 = Wd*o2PooledVec + repmat(bd,[1,mbSize]);
% Back Propagation
y = labelMat(:,rp(s:s+mbSize-1));
delta_d = o3 - y;
delta_s2 = Wd' * delta_d;
delta_s2 = reshape(delta_s2,outputDim2,outputDim2,filterNum2,mbSize);
delta_c2 = zeros(convDim2,convDim2,filterNum2,mbSize);
for i = 1:mbSize
for j = 1:filterNum2
delta_c2(:,:,j,i) = upsampleMax(delta_s2(:,:,j,i),o2PoolIdx(:,j,i),poolDim2);
end
end
delta_s1 = zeros(outputDim1,outputDim1,filterNum1,mbSize);
for i = 1:filterNum1
for j = 1:filterNum2
delta_s1(:,:,i,:) = delta_s1(:,:,i,:) + convn(delta_c2(:,:,j,:),Wc2(:,:,i,j),'full');
end
end
delta_c1 = zeros(convDim1,convDim1,filterNum1,mbSize);
for i = 1:mbSize
for j = 1:filterNum1
delta_c1(:,:,j,i) = upsampleMax(delta_s1(:,:,j,i),o1PoolIdx(:,j,i),poolDim1);
end
end
grad_Wd = (1/mbSize)*delta_d*o2PooledVec';
grad_bd = zeros(size(bd));
for i = 1:classNum
grad_bd(i) = (1/mbSize)*sum(delta_d(i,:));
end
grad_Wc2 = zeros(size(Wc2));
grad_bc2 = zeros(size(bc2));
for i = 1:filterNum2
for j = 1:filterNum1
for k = 1:mbSize
grad_Wc2(:,:,j,i) = grad_Wc2(:,:,j,i) + conv2(o1Pooled(:,:,j,k),rot90(delta_c2(:,:,i,k),2),'valid');
end
grad_Wc2(:,:,j,i) = (1/mbSize)*grad_Wc2(:,:,j,i);
end
tmp_grad_bc2 = delta_c2(:,:,i,:);
grad_bc2(i) = (1/mbSize)*sum(tmp_grad_bc2(:));
end
grad_Wc1 = zeros(size(Wc1));
grad_bc1 = zeros(size(bc1));
for i = 1:filterNum1
for j = 1:mbSize
grad_Wc1(:,:,i) = grad_Wc1(:,:,i) + conv2(mbImages(:,:,j),rot90(delta_c1(:,:,i,j),2),'valid');
end
grad_Wc1(:,:,i) = (1/mbSize)*grad_Wc1(:,:,i);
tmp_grad_bc1 = delta_c1(:,:,i,:);
grad_bc1(i) = (1/mbSize)*sum(tmp_grad_bc1(:));
end
vel_Wd = mom*vel_Wd - r*grad_Wd - wdr*Wd;
vel_bd = mom*vel_bd - r*grad_bd - wdr*bd;
vel_Wc2 = mom*vel_Wc2 - r*grad_Wc2 - wdr*Wc2;
vel_bc2 = mom*vel_bc2 - r*grad_bc2 - wdr*bc2;
vel_Wc1 = mom*vel_Wc1 - r*grad_Wc1 - wdr*Wc1;
vel_bc1 = mom*vel_bc1 - r*grad_bc1 - wdr*bc1;
Wd = Wd + vel_Wd;
bd = bd + vel_bd;
Wc2 = Wc2 + vel_Wc2;
bc2 = bc2 + vel_bc2;
Wc1 = Wc1 + vel_Wc1;
bc1 = bc1 + vel_bc1;
mbErr = mean(delta_d(:).^2);
err = err + mbErr;
end
fprintf('Epoch %d Training error: %f\n',e,err);
r = 0.98*r;
end
cnnTest;
源代码为 github.com/yaolubrain/cnn_linear_max
matlab 524288,Cannot display summaries of variables with more than 524288 elements. 怎么...相关推荐
- 在Linux命令行下运行Matlab
在Linux下安装完matlab后,会在/usr/local/bin/下生成matlab文件,可以使用matlab命令. Usage: matlab [-h|-help] | [-n | -e] ...
- format函数使用matlab,Matlab基本函数-format函数
1.format函数:控制输出.显示格式 2.用法说明 format 缺省格式,同short.Matlab中常用的显示格式有: (1)format short表示5位近似定点数 (2)format l ...
- Linux x64 下 Matlab R2013a 300 kb 脚本文件调试的 CPU 占用过高问题的解决办法
(1) 系统+软件版本 CentOS 6.5 (Final), 64 位,内核initramfs-2.6.32-431.5.1.el6.x86_64, MATLAB Version: 8.1.0.60 ...
- Matlab线性/非线性规划优化算法(1)
在Matlab中解形如下式的线性规划问题: 其中包括优化对象 f' * x, 不等式约束,等式约束,以及约束变量的上下界. 在Matlab中提供了linprog函数进行线性优化的求解: eg: [x, ...
- format函数使用matlab,Matlab基本函数-format函数 | 学步园
1.format函数:控制输出.显示格式 2.用法说明 format 缺省格式,同short.Matlab中常用的显示格式有: (1)format short表示5位近似定点数 (2)format l ...
- Linux环境下运行matlab以及执行m文件
在Linux下安装完matlab后,会在/usr/local/bin/下生成matlab文件,可以使用matlab命令. 在命令行下执行: $ matlab -help 可以得到帮助文件: Usage ...
- matlab官方文档翻译之MATLAB 快速入门
来源:https://cn.mathworks.com/help/matlab/learn_matlab/desktop.html 这个是从官方网站上一条一条翻译下去的,自己也是初学者在学习. Des ...
- matlab simulink相图,Simulink小问题集锦(转)
命令行如何运行simulink外部模式build和start 用sim()函数 该函数的调用格式为: [t,x,y]=sim(f1,tspan,options,ut) 其中f1为SIMULINK的模型 ...
- Matlab生成棋盘格点图
转自zhouyelihua**http://blog.csdn.net/zhouyelihua/article/details/46674191** 在摄像机标定过程中常常需要打印棋盘格程序,还有就是 ...
最新文章
- linux上传github项目
- latex二元关系符号
- MVC架构中,用户的请求简单梳理
- h.264 rtp打包
- Android学习之四大组件简单介绍
- c++使用单向链表存储一组有序数据_初试攻略丨计算机考研中数据结构知识点总结,硬核!...
- 有关ElasticSearch的基本概念
- scala学习-12-scala读取java项目下Src目录下的properties文件
- 开源一款超实用的 Dubbo 测试工具,已用半年,感觉很有feel~
- STM32采集电阻触摸贴膜
- Arcgis javascript那些事儿(十六)——GP服务的发布与使用
- 一个虚拟社交公司的融资历程
- 笔记--《谷歌和亚马逊是怎么做产品的》第一至三章
- Windows Server 2008 R2 Enterpris服务器上安装一个Moodle
- POJO和po,vo,bo
- 10款3D桌面推荐,很不错哦
- netscape.exe_评论-Netscape 6.1
- 大数据薪水大概多少_大数据工程师工资待遇一般多少?高吗
- mac 解压rar文件
- 阿里天池二手车交易价格预测(一)——EDA
热门文章
- LSF---【bsub命令】
- 【医疗人工智能论文】使用深度强化学习的腹腔镜机器人辅助训练
- SpringBoot - Tomcat 容器 Spring 绿色叶子灰色解决方案
- Registry私有仓库搭建及认证【转】
- 仓储控制系统(WCS)设计
- 21、关于破解点触的验证码
- java yyyy-mm-ddthh:mm:ssz,解析格式为YYYY-MM-DDTHH-MM-SSZ的ISO 8601日期时间
- 【趣文】秦始皇与区块链竟然有关系
- 苹果笔记本显卡性能测试软件,测试结果来了!新款Macbook Pro显卡性能怎样?
- 苹果新款笔记本_苹果自研CPU最快下月杀到 搭配史上最便宜Mac笔记本(全文)_苹果 新款MacBook Pro 13英寸_笔记本新闻...