當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.ragged.boolean_mask用法及代碼示例


將布爾蒙版應用於data,而不展平蒙版尺寸。

用法

tf.ragged.boolean_mask(
    data, mask, name=None
)

參數

  • data 一個可能參差不齊的張量。
  • mask 一個可能參差不齊的布爾張量。 mask 的形狀必須是 data 的形狀的前綴。 rank(mask) 必須是靜態已知的。
  • name 返回張量的名稱前綴(可選)。

返回

  • 通過將元素保留在data其中對應的值在maskTrue.
    • rank(output) = rank(data)
    • output.ragged_rank = max(data.ragged_rank, rank(mask) - 1).

拋出

  • ValueError 如果 rank(mask) 不是靜態已知的;或者如果 mask.shape 不是 data.shape 的前綴。

返回一個可能參差不齊的張量,該張量是通過保留 data 中的元素而形成的,其中 mask 中的對應值為 True

  • output[a1...aA, i, b1...bB] = data[a1...aA, j, b1...bB]

    其中 ji th Truemask[a1...aA] 條目。

請注意,output 保留了掩碼尺寸 a1...aA ;這與 tf.boolean_mask 不同,後者會使這些尺寸變平。

例子:

# Aliases for True & False so data and mask line up.
T, F = (True, False)
tf.ragged.boolean_mask(  # Mask a 2D Tensor.
    data=[[1, 2, 3], [4, 5, 6], [7, 8, 9]],
    mask=[[T, F, T], [F, F, F], [T, F, F]]).to_list()
[[1, 3], [], [7]]
tf.ragged.boolean_mask(  # Mask a 2D RaggedTensor.
    tf.ragged.constant([[1, 2, 3], [4], [5, 6]]),
    tf.ragged.constant([[F, F, T], [F], [T, T]])).to_list()
[[3], [], [5, 6]]
tf.ragged.boolean_mask(  # Mask rows of a 2D RaggedTensor.
    tf.ragged.constant([[1, 2, 3], [4], [5, 6]]),
    tf.ragged.constant([True, False, True])).to_list()
[[1, 2, 3], [5, 6]]

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.ragged.boolean_mask。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。