Керрас функциональные изменения имена уровень API в каждый API
Когда я запускаю функциональный API в модели для кросс-валидации k-fold, числа в именовании плотного слоя увеличиваются в модели return fitted каждой складки.
Как в первом сгибе это dense_2_acc, так и во втором сгибе это dense_5_acc.
По моей модели резюме показывает, что моя модель верна. почему он меняет имена в приспособленной модели history объекта каждой складки?
1 ответ:
Это действительно хороший вопрос, который показывает что-то действительно важное о
keras. Причина, по которой имена изменяются таким образом, заключается в том, чтоkerasне очищает ранее определенные переменные даже при перезаписи модели. Вы можете легко проверить, что переменные все еще находятся вsession.graph, вызвав:from keras import backend as K K.get_session().graph.get_collection('variables')Чтобы очистить предыдущие переменные модели, можно вызвать:
Однако будьте осторожны, так как вы можете потерять существующую модель. Если вы хотите сохранить имена одинаковыми, вы можете просто назовите слои, добавив параметрK.clear_session()nameв экземпляр слоя, например:Dense(10, activation='softmax', name='output')
