我在Keras中创建了一个度量函数来计算平均分数误差;也就是说,对于每个实际/预测对,我计算 abs(实际 - 预测)/实际,然后找到所有数据的平均值。代码如下。
def avg_frac_error(y_actual, y_pred):
return K.mean(K.abs(y_actual - y_pred)/ y_actual)
在小数据集上应用度量标准(比如6,000个标量值)时,会准确生成结果。在较大的值(10,000个值)上计算时,结果为 inf 。我怀疑它在K.mean失败了,因为当我尝试手动计算平均值时也是如此。我测试了tensorflow和theano后端。
我可以采取哪些解决方法来计算平均值?