gpt4 book ai didi

python - 如何在 Keras 中查找数组中非零的数量?

转载 作者:太空宇宙 更新时间:2023-11-04 09:30:56 25 4
gpt4 key购买 nike

我试图在 Keras 的自定义损失函数中找到零的数量。

def root_mean_squared_error(y_true, y_pred):

这里输入这个损失函数的地方:

model.compile(optimizer=sgd, loss=root_mean_squared_error,
metrics=[metrics.mse, root_mean_squared_error])

我试图找到数组 y_true 中非零值的数量,并将我的数字除以该值。

如何找到 y_true 中非零元素的数量?

最佳答案

您可以使用 tf.count_nonzero通过 Keras 后端的 API。

from keras import backend as K
import numpy as np

def custom_loss(y_true, y_pred):
return y_pred / K.cast(K.tf.count_nonzero(y_true), K.tf.float32)

y_t = K.placeholder((1,2))
y_p = K.placeholder((1,2))

loss = custom_loss(y_t, y_p)

print(K.get_session().run(loss, {y_t: np.array([[1,1]]), y_p: np.array([[2,4]])}))

结果是

[[1. 2.]]

关于python - 如何在 Keras 中查找数组中非零的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55779201/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com