geneating high dimensioal banana shaped data sets or any artificial data sets

1 vue (au cours des 30 derniers jours)
Fereshteh....
Fereshteh.... le 12 Juil 2015
Modifié(e) : Fereshteh.... le 16 Juil 2015
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

Réponses (2)

John D'Errico
John D'Errico le 13 Juil 2015
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 commentaire
Fereshteh....
Fereshteh.... le 16 Juil 2015
thank you very much for your answer , actually i don't know how to put Gaussian data sets to gather till they get a banana shaped form in two classes without overlapping!

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 13 Juil 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 commentaire
Fereshteh....
Fereshteh.... le 16 Juil 2015
thank you very much for the answer i used what you wrote to generate those data in a pic i put above , my problem is when dimension gets more than 3 how to define quadratics, i mean for example how to do a similar thing like these lines (% Make Z follow a quadratic stretchFactor = -4*(z-0.5).^2+0.5; x = x .* stretchFactor;)

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by