MATLAB中的卷积神经网络。再增加一层
我想做的是证明一个事实,如果我在CNN中增加一层,准确度会更高 代码在下面 此代码来自 我正处于CNN的初级阶段,试图扩展更多的层面,包括 卷积和池化阶段。我试过几种方法,但似乎都不管用。有人能告诉我如何再扩展一层吗 谢谢。下面是代码 主要功能代码:MATLAB中的卷积神经网络。再增加一层,matlab,deep-learning,conv-neural-network,Matlab,Deep Learning,Conv Neural Network,我想做的是证明一个事实,如果我在CNN中增加一层,准确度会更高 代码在下面 此代码来自 我正处于CNN的初级阶段,试图扩展更多的层面,包括 卷积和池化阶段。我试过几种方法,但似乎都不管用。有人能告诉我如何再扩展一层吗 谢谢。下面是代码 主要功能代码: clear all; close all; clc; maxtrain = 10000; iter = 10; eta = 0.01; %% Data Load trlblid = fopen('train-labels-idx1-ubyte
clear all; close all; clc;
maxtrain = 10000;
iter = 10;
eta = 0.01;
%% Data Load
trlblid = fopen('train-labels-idx1-ubyte');
trimgid = fopen('train-images-idx3-ubyte');
tslblid = fopen('t10k-labels-idx1-ubyte');
tsimgid = fopen('t10k-images-idx3-ubyte');
% read train labels
fread(trlblid, 4);
numtrlbls = toint(fread(trlblid, 4));
trainlabels = fread(trlblid, numtrlbls);
% read train data
fread(trimgid, 4);
numtrimg = toint(fread(trimgid, 4));
trimgh = toint(fread(trimgid, 4));
trimgw = toint(fread(trimgid, 4));
trainimages = permute(reshape(fread(trimgid,trimgh*trimgw*numtrimg),trimgh,trimgw,numtrimg), [2 1 3]);
% read test labels
fread(tslblid, 4);
numtslbls = toint(fread(tslblid, 4));
testlabels = fread(tslblid, numtslbls);
% read test data
fread(tsimgid, 4);
numtsimg = toint(fread(tsimgid, 4));
tsimgh = toint(fread(tsimgid, 4));
tsimgw = toint(fread(tsimgid, 4));
testimages = permute(reshape(fread(tsimgid, tsimgh*tsimgw*numtsimg),tsimgh,tsimgw,numtsimg), [2 1 3]);
%% CNN Training
[missimages, misslabels] = cnntrain(trainlabels,trainimages,testlabels,testimages,maxtrain,iter,eta);
%% CNN Testing
showmiss(missimages,misslabels,testimages,testlabels,25,2);
培训代码:
功能[missimages,misslabels]=cnntrain(列车标签,列车图像,测试标签,测试图像,maxtrain,iter,eta)
显示准确性的代码
function [] = showmiss(missim,misslab,testimages,testlabels,numshow,numpages)
nummiss = nnz(missim);
page = 1;
showsize = floor(sqrt(numshow));
for f=1:numshow:nummiss
figure(floor(f/numshow) + 1);
for m=f:min(nummiss,f+numshow-1)
subplot(showsize,showsize,m-f+1);
imshow(testimages(:,:,missim(m)));
title(strcat(num2str(testlabels(missim(m))), ':', num2str(misslab(m))));
end
page = page + 1;
if page > numpages
break;
end
end
end
函数toint
function [x] = toint(b)
x = b(1)*16777216 + b(2)*65536 + b(3)*256 + b(4);
end
function [x] = toint(b)
x = b(1)*16777216 + b(2)*65536 + b(3)*256 + b(4);
end