use of train and test data

2 ビュー (過去 30 日間)
Elahe Karimi
Elahe Karimi 2019 年 5 月 18 日
編集済み: Elahe Karimi 2019 年 5 月 18 日
hello,
I've used this code to separate data to test and train .for example i have a dataset include of 6 image. when i run this code, training data is correct and have 3 image but testing data is like this image :(The third image is repeated again).
I can't understand what is the problem .
Please help me
thank you
idx = 1:numImageFiles ;
PTrain = 0.50 ;
Ptest = 0.50;
train_idx = baseFileNames(1:round(PTrain*numImageFiles)); % training indices
test_idx = baseFileNames(round(Ptest*numImageFiles):end,:) ; %test

採用された回答

Walter Roberson
Walter Roberson 2019 年 5 月 18 日
You use round(PTrain*numImageFiles) as the upper limit for train_idx, and you use the same round(PTrain*numImageFiles) as the lower limit for test_idx . That is going to include round(PTrain*numImageFiles) exactly in both train_idx and test_idx .
  3 件のコメント
Walter Roberson
Walter Roberson 2019 年 5 月 18 日
The round is not the problem. Consider you are doing the equivalent of
x(1:3) %index 1, 2, 3
x(3:6) %index 3, 4, 5, 6
When your first range ends at N, then your second range needs to start from at least one greater than N or else you will have overlap.
Elahe Karimi
Elahe Karimi 2019 年 5 月 18 日
編集済み: Elahe Karimi 2019 年 5 月 18 日
ok,I understood. Thank you very much for response.
round(Ptest*numImageFiles)+1

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeImage Data Workflows についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by