Получение «Ошибка значения: Неизвестная функция активации: PReLU», когда я пытаюсь загрузить обученную модель, в которой в качестве функции активации используется PReLU?

#tensorflow #keras #tf.keras #activation-function #relu

Вопрос:

Поскольку название является самоописательным, я получаю ValueError: Unknown activation function: PReLU ошибку, когда пытаюсь загрузить свою обученную модель CNN, которая использовала PReLU функцию активации как для сверточных, так и для плотных слоев. Как я могу использовать эту модель? Есть ли обходной путь?

p.s. Я использую load_model функцию Keras для загрузки модели через предоставленный .h5 файл.

Комментарии:

1. Пожалуйста, предоставьте воспроизводимый код.

Ответ №1:

При использовании расширенных функций активации, таких как PReLU, лучше использовать его с помощью метода add (), а не оборачивать его с помощью «Активации». Например

 activation_function = keras.layers.advanced_activations.PReLU(init='zero', weights=None)

model = Sequential()
model.add(Dense(64, input_dim=14, init='uniform'))
model.add(activation_function)