xavier_initializer初始化

xavier_initializer(
    uniform=True,
    seed=None,
    dtype=tf.float32
)

返回对权重执行“ Xavier”初始化的初始化器。

使用:

def initialize_parameters():
    tf.set_random_seed(1)
    
    W1= tf.get_variable("W1",[4,4,3,8],initializer = tf.contrib.layers.xavier_initializer(seed = 0))
    W2 = tf.get_variable("W2",[2,2,8,16], initializer = tf.contrib.layers.xavier_initializer(seed = 0))
    
    parameters={
        "W1":W1,
        "W2":W2
    }
    return parameters

这个初始化器是用来保持每一层的梯度大小都差不多相同。

参数:

uniform: 使用uniform或者normal分布来随机初始化。
seed: 可以认为是用来生成随机数的seed
dtype: 只支持浮点数。

返回值:

初始化权重矩阵
 

你可能感兴趣的:(深度学习)