在tensorflow的官网中,该API有介绍:[https://tensorflow.google.cn/api_docs/python/tf/random/truncated_normal]
简单过一遍:
调用的两种方式:
1、tf.random.truncated_normal
2、tf.truncated_normal
对于该函数中的参数说明:
tf.random.truncated_normal(
shape, # 定义张量的输出形状,维数大于1,不是标量
mean=0.0, # 正态分布均值μ
stddev=1.0, # 正态分布标准差σ
dtype=tf.float32, # 张量中元素数量类型
seed=None, # 随机种子值
name=None # 运算名称
)
这里补充下概率分布的知识:其中μ为均值,σ为标准差。
μ决定了正态分布的位置,与μ越近,被取到的概率就越大,反之越小。
σ描述的是正态分布的离散程度。σ越大,数据分布分散曲线扁平;σ越小,数据分布集中曲线陡峭。
对于截断的概念:就是说在生生随机参数的时候,同时也约束了均值与标准差之间的关系,这个随机参数算是tf.random.normal(tf.random_normal)的一个特例。
截断的说明:输出的随机数也满足正态分布的指定均值和标准差,而且均值相差不会超过2个标准差。
也就是说:在标准正态分布的随机数中,在两侧概率较小的数(小于μ-2σ 和大于μ+2σ)不会再生成的随机数中出现,这些值会重新在范围内找随机产生。
这个截断正态分布避开了小概率数据的产生,也算是对随机的异常奇异点的排除,保证数据在一个大致的范围内。
本文详细介绍了TensorFlow中tf.random.truncated_normal函数的使用方法及参数含义,包括输出形状、均值、标准差等,并解释了截断正态分布的概念,即生成的随机数满足正态分布且不会超出均值加减两个标准差的范围。
2794

被折叠的 条评论
为什么被折叠?



