Why i Get low accuracy when i give unseen data to Trained Model?
3 次查看(过去 30 天)
显示 更早的评论
I have combine dataset of signals which have 14 classes. I have split them using
imds = imageDatastore('E:\SNR-Dataset\DATA-11-time\Data-for-training\', 'FileExtensions', '.mat', 'IncludeSubfolders',true, ...
'LabelSource','foldernames',...
'ReadFcn',@matReader);
[imdsTrain,imdsValidation, imdsTest] = splitEachLabel(imds,0.7,0.2, 'randomized');
.
.
.
[net2,tr] = trainNetwork(augimdsTrain,lgraph,options);
imdsTest_resize = augmentedImageDatastore([224,224],imdsTest);
[YPred,probs] = classify(net2,imdsTest_resize);
accuracy = mean(YPred == imdsTest.Labels)
Whenever i use imdsTest from splitEachLabel it give me 99% accuracy (Note that the train validation and test are in one folder)
I have unseen data which save in different folder and i use the following code to check the model accuracy on unseen data
imdsTest1 = imageDatastore('E:\SNR-Dataset\DATA-11-time\snr-test-data\Final-Test-data\snr30', 'FileExtensions', '.mat', 'IncludeSubfolders',true, ...
'LabelSource','foldernames',...
'ReadFcn',@matReader);
imdsTest_resize1 = augmentedImageDatastore([224,224],imdsTest1);
[YPred,probs] = classify(net2,imdsTest_resize1);
accuracy = mean(YPred == imdsTest1.Labels)
i got the 30% test accuracy
Please Assist why i get low accuracy when testing a model on unssen data which are in saparate folder?
0 个评论
回答(2 个)
yanqi liu
2022-3-7
may be modify layers,add some dropoutLayer
if possible,may be upload data and code to debug
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Deep Learning Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!