geneating high dimensioal banana shaped data sets or any artificial data sets
Show older comments
hi i do need to generate high dimensional banana shaped data sets in my thesis , actually i need to evaluate my classification algorithm with different type of artificial data sets in high dimensional space (for example 20D ), my prof has demanded me to generate 20D banana shaped data sets, in two classes which have no overlapping but are distributed in each other like the image below
<<

>> I have no clue how to do this, is there any one who can help me kindly?
thanks in advance
Answers (2)
John D'Errico
on 13 Jul 2015
0 votes
You need to decide what it means to have that shape. In a high number of dimensions, there are a huge number of possible "banana-like" shapes.
Start with a simple Gaussian set of data, in the appropriate number of dimensions. Then transform it.
1 Comment
Fereshteh....
on 16 Jul 2015
Image Analyst
on 13 Jul 2015
Like this, for one example in 3D:
numPoints = 1000;
z = rand(1,numPoints);
x = 0.07 * rand(1,numPoints) + 0.5;
y = 0.08 * rand(1,numPoints);
% Make Z follow a quadratic
stretchFactor = -4*(z-0.5).^2+0.5;
x = x .* stretchFactor;
scatter3(x,y,z, '.');
xlabel('X', 'FontSize', fontSize);
ylabel('Y', 'FontSize', fontSize);
zlabel('Z', 'FontSize', fontSize);
xlim([0,1]);
ylim([0,1]);
zlim([0,1]);

1 Comment
Fereshteh....
on 16 Jul 2015
Categories
Find more on Contrast Adjustment 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!