Divide training , validation and testing data.

12 Ansichten (letzte 30 Tage)
Sujith Jacob
Sujith Jacob am 27 Jun. 2022
Beantwortet: Image Analyst am 27 Jun. 2022
How can I divide only training and validation data randomly and have a separate contingous block for testing data.
for eg. if I have 2000 target points. I want to have randomly selected points from first 1500 points for training and validation but for testing I want 1501 to 2000 target points.

Akzeptierte Antwort

KSSV
KSSV am 27 Jun. 2022
A = rand(2000,3) ; % your data
Test = A(1501:end,:) ; % take test continuously
A = A(1:1500,:) ; % pick the left data
A = A(randperm(1500,1500),:) ; % randomise the data
train_idx = round(70/100*1500) ; % 70% training
Train = A(1:train_idx,:) ;
Valid = A(train_idx+1:end,:) ;
  2 Kommentare
Sujith Jacob
Sujith Jacob am 27 Jun. 2022
thank you for the help
KSSV
KSSV am 27 Jun. 2022
Thanks is accepting/ votinng the answer... :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Image Analyst
Image Analyst am 27 Jun. 2022
Depends on what kind of network training you're doing. If you're using trainNetwork and labels, then you can use imageDatastores and the function splitEachLabel
% Split the image data store into 80% for training, 10% for validation, and 10% for testing.
[trainingSet, validationSet, testSet] = splitEachLabel(imds, 0.8, 0.1);

Kategorien

Mehr zu Deep Learning Toolbox finden Sie in Help Center und File Exchange

Produkte


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by