【问题标题】:Tensorlow - please decipher what the tf.where document saysTensorflow - 请破译 tf.where 文件所说的内容
【发布时间】:2021-09-24 21:44:34
【问题描述】:

请解读tf.where 文档中关于当同时提供 x 和 y 时它的作用的内容。

我想它试图说它会通过以下方式产生结果:

  1. 将 y 广播到结果形状。
  2. 将 x 广播到结果形状。
  3. 使用条件为真的 x 元素更新 y。

这对吗?

如果提供了 x 和 y(两者都具有非 None 值): tf.where 将从条件、x 和 y 的形状中选择一个输出形状,所有三个形状都可以广播到。

退货 如果提供了 x 和 y:与 x 和 y 具有相同类型的张量,以及从条件 x 和 y 广播的形状。否则,一个形状为 (num_true, dim_size(condition)) 的张量。

【问题讨论】:

    标签: tensorflow


    【解决方案1】:

    根据tf.where上的最新文档

    如果提供了 x 和 y(两者都具有非 None 值):

    tf.where 将从条件形状 x 中选择一个输出形状, 以及所有三个形状都可以广播到的 y。

    条件张量充当掩码,选择是否 输出中的相应元素/行应取自 x(如果 条件中的元素为真)或 y(如果为假)。

    例如:

    tf.where([True, False, False, True], [1,2,3,4], [100,200,300,400])
    

    #它从 [1,2,3,4] 即 [1,4] 中获取真索引值,从 [100,200,300,400] 即 [200,300] 中获取假索引值

    输出:

    您可以将输出张量形状视为输入 numpy 数组。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-16
      • 1970-01-01
      • 2014-06-22
      • 2017-07-05
      • 1970-01-01
      相关资源
      最近更新 更多