【问题标题】:What happens when you use tensorflow.keras.layers.Add on different shapes?当你在不同的形状上使用 tensorflow.keras.layers.Add 会发生什么?
【发布时间】:2021-10-18 21:19:51
【问题描述】:

所以我刚刚根据文档意识到,tensorflow keras 的添加层希望添加的张量之间具有相同的形状(我知道,但错误地改变了一个的形状)。但它没有抛出错误,而是做了一些意想不到的事情。有谁知道它的作用吗?

【问题讨论】:

    标签: python tensorflow keras tensorflow2.0


    【解决方案1】:

    根据我的经验,它复制并扩展较小的形状张量以匹配较大的形状张量(如果可能的话)并添加它们以给出结果。所以如果你这样做了

    x1 = tf.zeros((32, 32, 3))
    x2= tf.zeros((32, 32, 1))
    temp = tf.keras.layers.add([x1, x2])
    print(tf.shape(temp))
    

    它会打印 (32, 32, 3)

    也许不是超级重要的信息,但希望通过使用添加层而不是获得他们期望的形状来防止人们像我一样犯同样的错误!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-06
      • 2011-05-05
      • 1970-01-01
      • 1970-01-01
      • 2018-01-10
      • 2013-10-16
      • 2013-04-29
      • 1970-01-01
      相关资源
      最近更新 更多