【问题标题】:How can I use the data in a tensor in Tensorflow?如何在 Tensorflow 中使用张量中的数据?
【发布时间】:2017-09-19 02:10:41
【问题描述】:

如图所示,我想计算一次训练期间的总成本,但 tf.equal 返回张量类型,tf.equal(y1[i],y2[i]) 不能是 True

如何使用张量中的数据

【问题讨论】:

    标签: python tensorflow tensor


    【解决方案1】:

    你不能在 Tensorflow 中做到这一点(pyTorch 可以做这样的事情)。原因是,TF 需要静态图。但是您正在尝试进行动态评估。 许多人声称这个静态图是 TF 的一个缺点。但实际上,它启用了许多很酷的功能。但是在您的用例中,获得解决方案有点麻烦:

    你需要这样写:

    z = tf.zeros_like(y1)
    label_a = z + 2
    label_b = z + 20
    
    
    case_001 = tf.where(tf.equal(y1, z), z + 2, z)
    case_002 = tf.where(tf.equal(y2, z), z + 20, z)
    switch_op = tf.where(tf.equal(y1, y2), ..., case_001 + case_002)
    

    【讨论】:

    • 非常感谢!!我正在研究成本敏感的神经网络。这个问题困扰了我好几天。当我遇到 Tensorflow 问题时,可以向您寻求帮助吗?
    猜你喜欢
    • 2016-02-15
    • 2023-04-02
    • 1970-01-01
    • 2021-12-28
    • 2022-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多