欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

对Tensorflow中的变量初始化函数详解

程序员文章站 2023-09-04 16:20:13
Tensorflow 提供了7种不同的初始化函数: tf.constant_initializer(value) #将变量初始化为给定的常量,初始化一切所提供的值。...

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中的变量初始化函数详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。