python - Tensorflow 对象到一个 numpy 数组
问题描述
我正在尝试在 Keras 中使用自定义 F1 评分函数,但我的目标变量是一个数组,我不想对它们进行热编码,所以我将sparse_categorical_crossentropy
其用作损失。
from keras import backend as K
def f1(y_true, y_pred):
print(type(y_true))
return y_true
当我运行上面的代码时,我得到 y_true 和 y_pred 为<class 'tensorflow.python.framework.ops.Tensor'>
. 我们如何将 y_true 和 y_pred 转换为 NumPy 数组,以便我可以在它们上实现 sklearn 的 F1 分数功能?
解决方案
使用(正如@learner 在评论中所建议的那样):
y_true = y_true.numpy()
y_pred = y_pred.numpy()
推荐阅读
- python - 删除数组中包含在其他项目中的项目 [Python]
- python - 尝试在 python Django 中运行 Runserver 时出现运行时错误
- php - 如何在 WHMCS 插件模块中设置附加属性
- selenium - AndroidDriver 等待时秒表计时器未更新
- json - 如何使用 cloudformation 复制 AMI
- python-3.x - Python3 使用 subprocess.run() 时如何将二进制数据传递给标准输入?
- python - ModuleNotFoundError:将简单应用程序(通过 pymongo 连接到 Atlas)部署到 Heroku 时,Flask 中没有名为“0”的模块
- groovy - 无法将具有类“java.lang.String”的对象转换为类“java.util.map”
- typescript - 访问我的 d.ts 文件中的导出模块
- php - HasOne 关系表单不更新模型