When I add new image , I want to get "the result" of image in neural network pattern recognition. How can I do this according to codes added?
조회 수: 1 (최근 30일)
이전 댓글 표시
I am studying about mammogram images to detect cancer on breast image. There are three situations benign, malign and normal.
I trained my neural netwok with 100 images and get result 95% . I will create user interface and will select an image and get the result of what is this image benign or malign or normal .
I mean my training is done and I want to see my neural network ability to detect result. I will upload a new image in user interface and want to see result of image benign or malign or normal . But I don't know which codes can I add in neural network?
Here is code neural pattern recognition created by matlab ownself. Which code should be added to detect new image (for example for 101 th image) ?
% Solve a Pattern Recognition Problem with a Neural Network
% Script generated by Neural Pattern Recognition app
% Created 07-Feb-2021 15:50:44
%
% This script assumes these variables are defined:
%
% x - input data.
% y - target data.
x = x;
t = y;
% Choose a Training Function
% For a list of all training functions type: help nntrain
% 'trainlm' is usually fastest.
% 'trainbr' takes longer but may be better for challenging problems.
% 'trainscg' uses less memory. Suitable in low memory situations.
trainFcn = 'trainscg'; % Scaled conjugate gradient backpropagation.
% Create a Pattern Recognition Network
hiddenLayerSize = 10;
net = patternnet(hiddenLayerSize, trainFcn);
% Setup Division of Data for Training, Validation, Testing
net.divideParam.trainRatio = 70/100;
net.divideParam.valRatio = 15/100;
net.divideParam.testRatio = 15/100;
% Train the Network
[net,tr] = train(net,x,t);
% Test the Network
y = net(x);
e = gsubtract(t,y);
performance = perform(net,t,y)
tind = vec2ind(t);
yind = vec2ind(y);
percentErrors = sum(tind ~= yind)/numel(tind);
% View the Network
view(net)
% Plots
% Uncomment these lines to enable various plots.
%figure, plotperform(tr)
%figure, plottrainstate(tr)
%figure, ploterrhist(e)
%figure, plotconfusion(t,y)
%figure, plotroc(t,y)
댓글 수: 0
답변 (1개)
Abhishek Gupta
2021년 2월 17일
편집: Abhishek Gupta
2021년 2월 17일
Hi,
As per my understanding, you want to make predictions for new input using your trained network. You can do the same using the 'predict()' function in MATLAB: -
predictions = predict(trainedNetwork,newImages);
For more information, check out the documentation here: -
댓글 수: 4
Abhishek Gupta
2021년 2월 22일
What error are you getting while using "predict()"? What is the dimension of 'a'? Note that "a" should be an N-by-numFeatures numeric array, where N is the number of observations and numFeatures is the number of features of the input data. I see N=1 in your case, so "a" should be of (1x88) dimension.
For more information, check out the "Input Arguments" section of the documentation: -
참고 항목
카테고리
Help Center 및 File Exchange에서 Pattern Recognition and Classification에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!