tf.random.stateless_uniform
Выводит детерминированные псевдослучайные значения из равномерного распределения.
tf.random.stateless_uniform(
shape,
seed,
minval=0,
maxval=None,
dtype=tf.dtypes.float32,
name=None,
alg='auto_select'
)
Используется в блокнотах
| Используется в учебниках |
|---|
Это бессостояние версия tf.random.uniform: если её запустить дважды с одинаковыми значениями семян и формами, она выведет одни и те же псевдослучайные числа. Вывод сохраняется в разных запусках на одном оборудовании (и между CPU и GPU), но может измениться между версиями TensorFlow или на оборудовании, не являющимся CPU/GPU.
Сгенерированные значения следуют равномерному распределению в диапазоне [minval, maxval). Нижняя граница minval включена в диапазон, а верхняя граница maxval исключена.
Для чисел с плавающей точкой, по умолчанию диапазон равен [0, 1). Для целых чисел, как минимум, maxval должен быть явно указан.
В случае целых чисел, случайные целые числа незначительно смещены, если maxval - minval не является точной степенью двойки. Смещение невелико для значений maxval - minval, существенно меньших, чем диапазон выходных данных (либо 2**32, либо 2**64).
Для случайных целых чисел со всем диапазоном (т.е. включая как максимальное, так и минимальное значения), передайте minval=None и maxval=None с целым числом dtype. Для целочисленного типа данных, либо оба minval и maxval должны быть None, либо ни то, ни другое не должно быть None. Например:
ints = tf.random.stateless_uniform(
[10], seed=(2, 3), minval=None, maxval=None, dtype=tf.int32)
| Аргументы | |
|---|---|
shape | Целочисленный тензор 1-D или массив Python. Форма выходного тензора. |
seed | Тензор формы [2], семя для генератора случайных чисел. Должен иметь тип int32 или int64. (При использовании XLA, разрешен только int32.) |
minval | Тензор или Python-значение типа dtype, совместимое по широковещанию с shape (для целочисленных типов широковещательная передача не поддерживается, поэтому необходимо использовать скаляр). Нижняя граница диапазона генерируемых случайных значений. Передайте None для целых чисел со всем диапазоном. По умолчанию 0. |
maxval | Тензор или Python-значение типа dtype, совместимое по широковещанию с shape (для целочисленных типов широковещательная передача не поддерживается, поэтому необходимо использовать скаляр). Верхняя граница диапазона генерируемых случайных значений. По умолчанию 1, если dtype с плавающей точкой. Передайте None для целых чисел со всем диапазоном. |
dtype | Тип выходных данных: float16, bfloat16, float32, float64, int32 или int64. Для неограниченных целых равномерных чисел (minval, maxval оба None), можно использовать uint32 и uint64. По умолчанию float32. |
name | Имя операции (необязательно). |
alg | Алгоритм генератора случайных чисел, используемый для генерации случайных чисел. Допустимые варианты — "philox" для алгоритма Philox, "threefry" для алгоритма ThreeFry и "auto_select" (по умолчанию) для автоматического выбора алгоритма в зависимости от типа устройства. Также можно использовать значения tf.random.Algorithm. Обратите внимание, что с "auto_select", результаты выполнения этой функции могут изменяться при запуске на другом устройстве. |
| Возвращаемые значения | |
|---|---|
| Тензор заданной формы, заполненный случайными равномерными значениями. |
| Возможные исключения | |
|---|---|
ValueError | Если dtype целочисленный и указан только один из minval или maxval. |
© 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/stateless_uniform