Попытка понять случайность внутри мини-пакета в наборе данных tenorflow - PullRequest
0 голосов
/ 01 февраля 2020

С здесь Я понимаю, что делают shuffle, batch и repeat. Я работаю над данными медицинских изображений, где каждая мини-партия имеет фрагменты из одной записи пациента. Я ищу способ перемешать в мини-пакете во время тренировки. Я не могу увеличить размер буфера, потому что не хочу, чтобы фрагменты из разных записей смешивались. Может кто-нибудь объяснить, как это можно сделать?

dataset = tf.data.Dataset.from_tensor_slices(tf.range(1, 20)) 
data = dataset.batch(5).shuffle(5).repeat(1)
for element in data.as_numpy_iterator(): 
  print(element)
Current Output : 
[ 6  7  8  9 10]
[1 2 3 4 5]
[11 12 13 14 15]
[16 17 18 19]
Expected Output : 
[ 6  8  9  7 10]
[3 4 1 5 2]
[15 12 11 14 13]
[16 17 19 20 17]

1 Ответ

0 голосов
/ 01 февраля 2020

Я только что понял, что нет необходимости тасовать в мини-партии, так как тасовка в мини-партии никак не способствует улучшению обучения. Оцените, если у кого-то есть другие взгляды на это.

...