我已经实现了一个基于 SIM 的自定义指标,当我尝试代码时它可以工作。我已经使用张量和 np 数组实现了它,并且都给出了相同的结果。然而,当我开始拟合模型时,返回的值比加载训练生成的权重并应用相同函数时得到的值要高得多。
我的职能是:
def SIM(y_true,y_pred):
n_y_true=y_true/(K.sum(y_true)+K.epsilon())
n_y_pred=y_pred/(K.sum(y_pred)+K.epsilon())
return K.mean(K.sum( K.minimum(n_y_true, n_y_pred)))
当我编译 Keras 模型时,我将其添加到指标中,并在训练期间给出例如 SIM:0.7092。
当我加载权重并尝试时,SIM 分数约为 0.3。加载正确的权重(当使用这些权重重新开始训练时,会弹出相同的值)。有人知道我做错了什么吗?
与批量运行函数相比,为什么训练期间返回的指标要高得多?
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)