coding小记:np.random.randn与tf.random_normal

来源:互联网 发布:淘宝客服怎么做流程 编辑:程序博客网 时间:2024/06/06 05:14

今天在编码时同时遇到了这两个函数,并且都是用来初始化权重的,写法如下

w = tf.Variable(tf.random_normal(shape, stddev=0.01))
w = tf.Variable(np.random.randn())

看上去都是随机生成符合正态分布的值,但是实际上tf.random_normal(shape, stddev=0.01) 是从正态分布中返回符合你输入的shape和均值与方差的值。

tf.random_normal(    shape,    mean=0.0,    stddev=1.0,    dtype=tf.float32,    seed=None,    name=None)

shape: A 1-D integer Tensor or Python array.输出tensor的shape
mean: A 0-D Tensor or Python value of type dtype. 正态分布的均值
stddev: A 0-D Tensor or Python value of type dtype. 正态分布的方差
dtype: The type of the output.

numpy.random.randn(d0, d1, ..., dn) 返回参数中要求的shape的样本,具有标准正态分布。
如果想得到任意的正态分布,而不仅仅是标准正态,可以如下写法

N(μ, σ2):

σ * np.random.randn(…) + μ

原创粉丝点击