tf.random.uniform()函数
时间: 2023-11-21 17:54:33 浏览: 47
tf.random.uniform()函数是TensorFlow中用于生成指定范围内的均匀分布随机数的函数。
它的函数签名如下:
```
tf.random.uniform(
shape,
minval=0,
maxval=None,
dtype=tf.dtypes.float32,
seed=None,
name=None
)
```
其中参数的含义如下:
- shape:生成随机数的张量形状,可以是一个整数或一个整数列表/元组。
- minval:生成随机数的下界(包含)。
- maxval:生成随机数的上界(不包含),如果不指定,默认为1。
- dtype:生成随机数的数据类型,默认为tf.float32。
- seed:随机数种子,用于产生可重复的随机数,默认为None。
- name:操作的名称。
该函数会返回一个与shape相同的张量,其中的元素满足在[minval, maxval)范围内均匀分布的特性。
相关问题
tf.random.uniform
`tf.random.uniform` 是 TensorFlow 库中的一个函数,用于生成服从均匀分布的随机张量。它的语法如下:
```python
tf.random.uniform(
shape,
minval=0,
maxval=None,
dtype=tf.dtypes.float32,
seed=None,
name=None
)
```
参数说明:
- `shape`:生成随机张量的形状,可以是一个整数或一个整数列表/元组。
- `minval`:可选参数,生成随机数的最小值,默认为 0。
- `maxval`:可选参数,生成随机数的最大值,默认为 1。
- `dtype`:可选参数,生成随机张量的数据类型,默认为 float32。
- `seed`:可选参数,用于设置随机种子。
- `name`:可选参数,操作的名称。
示例用法:
```python
import tensorflow as tf
# 生成一个形状为 (2, 3) 的随机张量
random_tensor = tf.random.uniform(shape=(2, 3), minval=0, maxval=1, dtype=tf.float32)
print(random_tensor)
```
这将输出一个形状为 (2, 3) 的随机张量,其中的值将在 0 到 1 之间均匀分布。
tf.random.uniform取整数
tf.random.uniform函数返回的是一个均匀分布的随机数,如果想要得到整数,可以将返回的随机数乘以一个范围内的整数,然后使用tf.floor或tf.round函数将结果取整。
例如,以下代码返回一个在[0,10)范围内的随机整数:
```
import tensorflow as tf
rand_num = tf.random.uniform([], minval=0, maxval=10, dtype=tf.float32)
rand_int = tf.floor(rand_num)
print(rand_int)
```
输出:
```
tf.Tensor(5.0, shape=(), dtype=float32)
```
这里使用了tf.floor函数将随机数取整为最接近的小于等于它的整数。如果想要四舍五入到最近的整数,可以使用tf.round函数。