tf.random.experimental.stateless_shuffle
Случайно и детерминированно перемешивает тензор по первой размерности.
tf.random.experimental.stateless_shuffle(
value, seed, alg='auto_select', name=None
)
Тензор перемешивается по размерности 0, таким образом, что каждый value[j] отображается на один и только один output[i]. Например, отображение, которое может произойти для тензора 3x2:
[[1, 2], [[5, 6], [3, 4], ==> [1, 2], [5, 6]] [3, 4]]
v = tf.constant([[1, 2], [3, 4], [5, 6]]) shuffled = tf.random.experimental.stateless_shuffle(v, seed=[8, 9]) print(shuffled) tf.Tensor( [[5 6] [1 2] [3 4]], shape=(3, 2), dtype=int32)
Это бессостояниевая версия tf.random.shuffle: если её запустить дважды с тем же value и seed, она даст тот же результат. Выходной результат согласован при нескольких запусках на одном оборудовании (и между CPU и GPU), но может изменяться между версиями TensorFlow или на оборудовании, не являющемся CPU/GPU.
| Аргументы | |
|---|---|
value | Тензор, который нужно перемешать. |
seed | Тензор формы [2]. Зерно генератора случайных чисел. Должен иметь тип int32 или int64. |
alg | Алгоритм генератора случайных чисел, используемый для генерации случайных чисел. См. tf.random.stateless_uniform для подробного объяснения. |
name | Имя операции. |
| Возвращаемые значения | |
|---|---|
Тензор той же формы и типа, что и value, перемешанный по первой размерности. |
© 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/api_docs/python/tf/random/experimental/stateless_shuffle