Error using == Matrix dimensions must agree.

i have message error in matlab : Error using == Matrix dimensions must agree.
Error in Pengujian (line 39) [m,n] = find(output==target); please help me what can i do?

3 Kommentare

Birdman
Birdman am 26 Feb. 2018
What are your output and target variables look like?
Novy Bua Rante
Novy Bua Rante am 26 Feb. 2018
Bearbeitet: Walter Roberson am 26 Feb. 2018
i will classification the image of green bean coffee using matlab with neural network backpropagation
---------
input = [metric;eccentricity];
target = zeros(1,96);
target(:,1:30) = 1;
target(:,31:51) = 2;
target(:,52:72) = 3;
target(:,73:96) = 4;
load net
output = round(sim(net,input));
[m,n] = find(output==target);
akurasi = sum(m)/total_images*100;
Walter Roberson
Walter Roberson am 26 Feb. 2018
Your net is not returning one result for each input, or else it is returning a column vector which you are trying to compare to a row vector. I suspect that is the problem, that you will need to transpose one of the two to compare them.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Walter Roberson
Walter Roberson am 26 Feb. 2018

1 Stimme

Assuming that you are trying to find the indices of each value of output within the matrix target, then:
[tf, idx] = ismember(output, target);
m = zeros(size(output));
n = zeros(size(output));
[m(tf), n(tf)] = ind2sub( size(target), idx(tf) );
Any value that does not appear within target will have m and n pairs of 0.

Kategorien

Gefragt:

am 26 Feb. 2018

Kommentiert:

am 26 Feb. 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by