对Tensorflow中的变量初始化函数详解
Tensorflow 提供了7种不同的初始化函数:
tf.constant_initializer(value) #将变量初始化为给定的常量,初始化一切所提供的值。
假设在卷积层中,设置偏执项b为0,则写法为: 1. bias_initializer=tf.constant_initializer(0) 2. bias_initializer=tf.zeros_initializer(0)
tf.random_normal_initializer(mean,stddev) #功能是将变量初始化为满足正太分布的随机值,主要参数(正太分布的均值和标准差),用所给的均值和标准差初始化均匀分布
tf.truncated_normal_initializer(mean,stddev,seed,dtype) #功能:将变量初始化为满足正太分布的随机值,但如果随机出来的值偏离平均值超过2个标准差,那么这个数将会被重新随机
mean:用于指定均值;stddev用于指定标准差;seed:用于指定随机数种子;dtype:用于指定随机数的数据类型。 通常只需要设定一个标准差stddev这一个参数就可以。
tf.random_uniform_initializer(a,b,seed,dtype) #从a到b均匀初始化,将变量初始化为满足平均分布的随机值,主要参数(最大值,最小值)
tf.uniform_unit_scaling_initializer(factor,seed,dtypr) #将变量初始化为满足平均分布但不影响输出数量级的随机值
max_val=math.sqrt(3/input_size)*factor; input_size指输入数据的维数,假设输入为x,计算为x*w,则input_size=w.shape[0]. 其分布区间为[-max_val,max_val]
tf.zeros_initializer() #将变量设置为全0;也可以简写为tf.Zeros()
tf.ones_initializer() #将变量设置为全1;可简写为tf.Ones()
以上这篇对Tensorflow中的变量初始化函数详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。