我在写模型时,使用了自定义的评分函数,函数如下:
def bit_err(y_true, y_pred):
err = 1 - tf.reduce_mean(
tf.reduce_mean(tf.cast(tf.equal(tf.sign(y_pred - 0.5), tf.cast(tf.sign(y_true - 0.5), tf.float32)),tf.float32), 1))
return err
model.compile(optimizer=optimizer, loss='mse', metrics=[bit_err])
在使用load_model函数加载这个模型时遇到了找不到bit_err 这个自定义函数的问题。
解决方法:将自定义函数作为参数传进去。
model = load_model("weights_best_model2.hdf5",custom_objects={'bit_err': bit_err})