使用非张量的TensorFlow 2中的自定义损失函数

问题描述

我意识到我要问的内容可能无法实现,但是我想尝试一下。 我正在构建一个NN分类器,并想使用一个自定义损失函数,该函数涉及使用多个库和numpy函数完成的复杂计算。一个非常简单(天真)的尝试是:

def custom_loss(y_true,y_pred):
    return compute_loss(y_pred,some_feature)

其中compute_loss是为我提供所需数量函数(这还取决于训练过程中未提供给NN的其他功能)。 TensorFlow使用此方法抱怨张量不具有compute_loss中使用的某些属性。在返回值前加上tf.constant无济于事。最明显的方法(至少对我而言)是将compute_loss中的每个操作转换为tf函数,但这会花费一些时间,并且容易出错。所以我的问题是:

  • 是否有一种方法(除了将函数中的所有内容转换为tf函数之外),可以使用不对张量进行运算的自定义损失函数

  • 如何根据模型或训练数据中不存在的数量创建损失函数?我已经看到了用于此功能的Lambda图层,但我不确定如何确定细节

感谢您的帮助,如果问题不清楚,我深表歉意

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)