Не стоит переиспользовать массивы в генераторах Keras. Keras, после получения ссылки на ваш массив, не делает его глубокую копию. А вы в следующей итерации его мутируете. Учитывая, что генератор итерируется параллельно с обучением для скорости, там может происходить куча неприятных вещей из-за этого — например, данные и метки могут перестать соответствовать друг другу и никакого обучения не получится.
Видел пару раз как так делают по неопытности, а потом ломают голову, теперь всегда советую создавать новый массив внутри цикла для каждого yield.
Не стоит переиспользовать массивы в генераторах Keras. Keras, после получения ссылки на ваш массив, не делает его глубокую копию. А вы в следующей итерации его мутируете. Учитывая, что генератор итерируется параллельно с обучением для скорости, там может происходить куча неприятных вещей из-за этого — например, данные и метки могут перестать соответствовать друг другу и никакого обучения не получится.
Видел пару раз как так делают по неопытности, а потом ломают голову, теперь всегда советую создавать новый массив внутри цикла для каждого yield.