Haw can convert categories array to array of numeric or logical ?
이전 댓글 표시
I am creating a neural network in MATLAB,but i got this error
Error using nntraining.setup>setupPerWorker (line 96)
Targets T{1,1} is not numeric or logical.
outputFolder= fullfile(tempdir, '');
rootFolder = fullfile(outputFolder, '');
categories = {'2', '1', '0'};
imds = imageDatastore(fullfile(rootFolder, categories), 'LabelSource', 'foldernames');
numImageCategories = size(categories(imds.Labels),1); % get category labels
[trainingDS,validationDS] = splitEachLabel(imds,0.7,'randomize'); % generate training and validation set
LabelCnt = countEachLabel(imds); % load lable information
p=[];
t1=[];
[l,m]=size(trainingDS.Files);
for q=1:l
im1=readimage(trainingDS,q);
im=double( im1);
[r,c]=size(im)
p11=[];
for i=1:r
for j=1:c
p11=[p11;im(i,j,1)];
end
end
p=[p p11];
t1=[t1 trainingDS.Labels(q)];
t = categories(t);
end
% % % %% Multilayer backpropagation neural network
% % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
net=newff(minmax(p), [4096 5 1], {'logsig','logsig','logsig'}, 'traingdx');
[net,tr,Y,E,Pf,Af]=train(net,p,t);
net
댓글 수: 10
Walter Roberson
2020년 3월 5일
Try passing in categorical(t)
dziri halima
2020년 3월 5일
dziri halima
2020년 3월 5일
Walter Roberson
2020년 3월 5일
Then do not use
categories = {'2', '1', '0'};
Use
categories = [2,1,0];
dziri halima
2020년 3월 5일
Walter Roberson
2020년 3월 5일
Sigh. Then
t = char(categories(t(:))) - '0';
dziri halima
2020년 3월 5일
Walter Roberson
2020년 3월 5일
Where do you assign to t to be able to use it in the line
t = categories(t);
? You have been building up t1 but not t.
dziri halima
2020년 3월 5일
dziri halima
2020년 3월 5일
답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Programming에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!