divideint divides the same way every time even when I place 'rng shuffle' before it.

조회 수: 1 (최근 30일)
Hi,
Code below returns the indices for each of those sets of data but the indices are always the same. How do I set it up so they are different each time?
Thank you,
Brent
rng shuffle;
[trainT,valT,testT] = divideint(nn_config.UnCleanLength,CONFIG.dataSplit.trainingFraction,CONFIG.dataSplit.validationFraction,CONFIG.dataSplit.testFraction);

채택된 답변

Asvin Kumar
Asvin Kumar 2020년 8월 6일
divideint uses a deterministic algorithm to partition the indices. You can use dividerand instead for a random partition of indices.
If you’re working with image/audio datastores, you can also use the splitEachLabel function. The documentation page has good examples.
If you’d like to do it without any existing function, you can do it as follows. This is similar to how it’s done in the YOLOv2 Object Detection example:
shuffledIndices = randperm(N);
idx = floor(0.6 * length(shuffledIndices) );
trainingIdx = 1:idx;
validationIdx = idx+1 : idx + 1 + floor(0.1 * length(shuffledIndices) );
testIdx = validationIdx(end)+1 : length(shuffledIndices);

추가 답변 (0개)

제품

Community Treasure Hunt

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

Start Hunting!

Translated by