TensorFlow实现GAN时常用函数

TensorFlow实现GAN时常用函数

1、tf.random_normal() 函数用于从服从指定正太分布的数值中取出指定个数的值。

  tf.random_normal(shape,mean, stddev) 
  mean: 正态分布的均值,默认为0,stddev: 正态分布的标准差,默认为1.0;

2、tf.random_uniform(shape, minval, maxval)#从均匀分布中输出随机值.随机值在[minval, maxval)之间;

3、tf.variable_scope() 用来指定变量的作用域,,支持嵌套

with tf.variable_scope("g_deconv0",reuse=None):指定该卷积层作用域是g_deconv0,
当前环境的作用域可以通过函数 **tf.get_variable_scope()**获取。
reuse有三种取值:None,True,AUTO_REUSE
	None:创建函数tf.get_variable()函数只能创建新的变量,当同名变量已经存在时,函数就报错;
	True:即该空间下的所有tf.get_variable()函数将直接获取已经创建的变量,如果参数不存在tf.get_variable()函数将会报错;
	AUTO_REUSE:若参数空间的参数不存在就创建他们,如果已经存在就直接获取它们。

4、tf.get_variable_scope(name,shape,dtype,initializer,trainable):获取已经存在的变量,如果不存在,就新建一个

initializer:初始化值,可以使用各种初始化方法;
trainable:是否训练变量,bool类型:True训练,False不训练。

5、tf.truncated_normal_initializer(mean,stddev,seed,dtype):从截断的正态分布中输出随机值。 生成的值服从具有指定平均值和标准偏差的正态分布,如果生成的值大于平均值2个标准偏差的值则丢弃重新选择

mean:要生成的随机值的均值;
stddev:要生成的随机值的标准偏差;
seed:于创建随机种子.

6、tf.nn.conv2d_transpose(x, W, output_shape, strides=[1, stride_h, stride_w, 1], padding=padding):反卷积操作

第一个参数:指需要做反卷积的输入图像
第二个参数:卷积核
第三个参数output_shape:反卷积操作输出的shape,
第四个参数strides:反卷积时在图像每一维的步长
第五个参数padding:string类型的量,只能是"SAME","VALID"其中之一

7、tensorflow.contrib.layers.batch_norm():tensorflow中批量归一化(BN)的简单用法

8、tf.nn.conv2d(input, filter, strides, padding):卷积操作

9、tf.reduce_mean():求平均值,第一个参数是一个集合;第二个参数指定在哪个维度上面求平均值。

10、tf.nn.sigmoid_cross_entropy_with_logits(_sentinel=None,labels=None,logits=None,name=None):对于给定的logits计算sigmoid的交叉熵,

11、**tf.ones_like()**函数可以让您在TensorFlow中创建一个将所有元素都设置为1的张量,

12、tf.trainable_variables():返回所有可训练的变量。

13、compute_gradients(loss,var_list)函数:计算loss中可训练的var_list中的梯度,返回(gradient, variable)对的list

14、tf.clip_by_norm(grad, clip_norm):对梯度进行裁剪,通过控制梯度的最大范式,防止梯度爆炸的问题,grad输入的梯度,clip_norm裁剪率

15、tf.clip_by_value(v,a,b) :可以将一个张量中的数值限制在一个范围之内。

v:input数据,a、b是对数据的限制。
当v小于a时,输出a; 
当v大于a小于b时,输出原值; 
当v大于b时,输出b;

16、tf.nn.moments():函数本身是用来计算均值mean和方差var,使用在BN中

17、tf.layers.flatten(inputs):在保留第0轴的情况下对输入的张量进行Flatten(扁平化)

18、tf.GraphKeys:包含所有graph collection中的标准集合名,创建图的过程中,TensorFlow的Python底层会自动用一些collection对op进行归类,方便之后的调用。这部分collection的名字被称为tf.GraphKeys。

**GLOBAL_VARIABLES**: 该collection默认加入所有的Variable对象,并且在分布式环境中共享。
**tf.GraphKeys.GLOBAL_VARIABLES**

19、tf.get_collection() 返回当前计算图中手动添加的张量集合

 g_vars=tf.get_collection(tf.GraphKeys.TRAINABLE_VARIABLES, scope='generator')
 d_vars=tf.get_collection(tf.GraphKeys.TRAINABLE_VARIABLES, scope='discriminator')
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值