tf.ragged.boolean_mask
| Просмотреть исходный код в GitHub |
Применяет булеву маску к data без сглаживания измерений маски.
tf.ragged.boolean_mask(
data, mask, name=None
)
Возвращает потенциально разряженный тензор, образованный за счёт сохранения элементов в data, где соответствующее значение в mask равно True.
-
output[a1...aA, i, b1...bB] = data[a1...aA, j, b1...bB]Где
j—i-йTrueэлементmask[a1...aA].
Обратите внимание, что output сохраняет размерности маски a1...aA; это отличается от tf.boolean_mask, который сглаживает эти размерности.
| Аргументы | |
|---|---|
data | Потенциально разряженный тензор. |
mask | Потенциально разряженный булев тензор. Форма mask должна быть префиксом формы data . rank(mask) должно быть статически известно. |
name | Префикс имени возвращаемого тензора (необязательно). |
| Возвращаемое значение | |
|---|---|
Потенциально разряженный тензор, образованный за счёт сохранения элементов в data, где соответствующее значение в mask равно True.
|
| Исключения | |
|---|---|
ValueError | если rank(mask) не известно статически; или если mask.shape не является префиксом data.shape. |
Примеры:
# 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]]
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/ragged/boolean_mask