How to input a 3D matrix to SVMtrain? (2class problem)
Show older comments
Hi. I have a 3D matrix Training (4x12x7) with first dimension being the number of samples. Group gives the labels +1 or -1. I get an error when I try to input this to svmtrain
Training(:,:,1) = [0 0 0 0 0 0 1 0 2 1 3 0; 0 0 0 1 1 0 0 1 2 2 1 0; 0 1 0 0 0 0 0 0 0 0 1 1;0 0 0 0 1 0 2 0 2 0 2 0];
Training(:,:,2) = [0 0 0 0 0 0 1 0 2 1 0 0; 0 0 0 1 1 0 0 1 0 2 1 1; 0 1 0 0 0 0 0 0 0 0 1 1;0 0 0 0 1 0 2 0 3 0 2 2];
Training(:,:,3) = [0 0 0 0 0 0 1 0 2 1 3 0; 0 0 0 0 1 0 0 1 2 0 1 0; 0 1 0 0 5 0 0 0 0 0 1 1;0 0 0 0 0 0 0 0 2 0 3 2];
Training(:,:,4) = [1 1 0 0 0 0 1 0 0 1 3 0; 0 4 0 2 0 0 0 0 2 0 2 1; 0 1 0 0 0 0 0 0 0 0 1 1;0 1 2 0 0 0 1 0 0 0 0 2];
Training(:,:,5) = [0 0 2 0 0 0 1 0 2 0 0 0; 0 0 0 3 1 0 0 1 2 2 1 1; 0 1 0 2 0 0 0 0 0 0 3 1;0 0 0 0 1 0 0 0 2 0 2 3];
Training(:,:,6) = [0 0 0 0 0 0 1 0 2 1 3 0; 0 0 0 1 0 0 0 1 1 2 0 1; 0 1 0 0 0 0 0 0 0 0 1 1;0 0 0 0 0 0 2 0 2 0 0 2];
Training(:,:,7) = [1 0 0 0 0 0 0 0 2 0 3 0; 0 0 0 1 1 0 0 1 2 1 1 1; 0 1 0 0 0 0 5 0 0 0 1 1;0 0 0 0 1 0 2 0 2 0 2 2];
Group = [1 1 -1 -1];
SVMStruct = svmtrain(Training,Group);
The error is below
??? Error using ==> svmtrain at 453
Error calculating the kernel function:
Transpose on ND array is not defined.
I think it is an issue with input of more than 2 dim. If "Training" is 4x12, there is no problem. Can any one help me? Thanks
Accepted Answer
More Answers (0)
Categories
Find more on MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!