divideint divides the same way every time even when I place 'rng shuffle' before it.
2 次查看(过去 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);
0 个评论
采纳的回答
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 个评论
更多回答(0 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!