Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tensorflow:使用张量中的值作为参数_Tensorflow - Fatal编程技术网

Tensorflow:使用张量中的值作为参数

Tensorflow:使用张量中的值作为参数,tensorflow,Tensorflow,我想根据标签的值以不同的方式计算DNN中的损失函数 概念上是这样的: def loss(logits, labels): if labels[0] == 0: return loss_function_1(logits, labels) else: return loss_function_2(logits, labels) 显然,这是行不通的,因为我不能对张量物体进行比较。我也不能使用eval(),因为我得到一个错误,网络没有定义。我还有其他

我想根据标签的值以不同的方式计算DNN中的损失函数

概念上是这样的:

def loss(logits, labels):

    if labels[0] == 0:
        return loss_function_1(logits, labels)
    else:
        return loss_function_2(logits, labels)
显然,这是行不通的,因为我不能对张量物体进行比较。我也不能使用
eval()
,因为我得到一个错误,网络没有定义。我还有其他选择吗?

您可以使用此结构:

tf.cond(labels[0] == 0, lambda: loss_function_1(logits, labels),
                        lambda: loss_function_2(logits, labels))