一、TensorFlow常用随机函数
1.tf.constant
tf.constant(value, dtype=None, shape=None)
创建一个常量tensor,按照给出value来赋值,可以用shape来指定其形状。value可以是一个数,也可以是一个list。 如果是一个数,那么这个常亮中所有值的按该数来赋值。
2.tf.random_normal
从正态分布中输出随机值。
.
random_normal(shape,mean=0.0,stddev=1.0,dtype=tf.float32,seed=None,name=None)
.
- shape:一个一维整数张量或Python数组。代表张量的形状。
- mean:数据类型为dtype的张量值或Python值。是正态分布的均值。
- stddev:数据类型为dtype的张量值或Python值。是正态分布的标准差。
- dtype: 输出的数据类型。
- seed:一个Python整数。是随机种子。
- name: 操作的名称(可选)
3.tf.random_uniform
从均匀分布中返回随机值。
random_uniform(
shape,# 生成的张量的形状
minval=0,
maxval=None,
dtype=tf.float32,
seed=None,
name=None
)
生成的值在该 [minval, maxval) 范围内遵循均匀分布。下限 minval 包含在范围内,而上限 maxval 被排除在外。
对于浮点数,默认范围是 [0, 1)。对于整数,至少 maxval 必须明确地指定。
4.tf.truncated_normal
截断的正态分布函数。生成的值遵循一个正态分布,但不会大于平均值2个标准差。
truncated_normal(
shape,#一个一维整数张量或Python数组。代表张量的形状。
mean=0.0,#数据类型为dtype的张量值或Python值。是正态分布的均值。
stddev=1.0,#数据类型为dtype的张量值或Python值。是正态分布的标准差
dtype=tf.float32,#输出的数据类型。
seed=None,#一个Python整数。是随机种子。
name=None#操作的名称(可选)
均值mean,标准差stddev,不过只保留[mean-2*stddev,mean+2*stddev]范围内的随机数
二 numpy常用随机函数
numpy.random模块中提供啦大量的随机数相关的函数。
1.np.random.rand() 产生[0,1]的浮点随机数,括号里面的参数可以指定产生数组的形状
np.random.rand(3,4)
2.np.random.randn() 产生标准正太分布随机数,参数含义与random相同
np.random.randn(5,4)
结果
[[-1.06128233 2.05769296 0.66567882 -1.19136282]
[-1.21041218 -0.29011266 -0.74136649 0.55090234]
[ 1.32837237 -0.21128273 -0.04655965 1.51024977]
[-1.28949484 -1.32214778 0.38804516 0.28318636]
[-0.35908066 -1.25130597 -0.67405666 1.00286815]]
3.np.random.randint() 产生指定范围的随机数,最后一个参数是元祖,他确定数组的形状
np.random.randint(0,10,size=(4,3))
结果:[[5 1 4]
[3 5 6]
[6 8 8]
[4 5 9]]
4.np.random.normal() 正太分布
#第一个参数是均值,第二个参数是标准差 size 是矩阵shape
np.random.normal(100,10,size=(3,4))
结果:[[107.99033338 97.95229221 116.29867604 94.42608736]
[105.07905444 90.23516994 95.17251591 75.46464973]
[ 94.70846796 83.64843062 97.88125587 96.90127029]]
5.np.random.uniform() 均匀分布
#前两个参数分别是区间的初始值和终值
np.random.uniform(0,10,size=(3,4))
结果
[[8.18963087 0.80643217 3.58908063 1.57584143]
[9.99805831 0.74725383 2.57867196 8.7053287 ]
[7.61707961 9.38398185 0.73466857 1.64189496]]
6.np.random.poisson() 泊松分布
随机变量X的平均值和方差都是λ
#第一个参数为指定的lanbda系数,就是下公式里面的λ
np.random.poisson(2.0,size = (3,4))
结果
[[1 1 3 2]
[3 3 3 1]
[1 1 2 5]]