BiGRU中遇到的函数

emb_init = tf.truncated_normal_initializer(mean=0.0, stddev=0.01)

fc_layer = tf.contrib.layers.fully_connected
1.tf.truncated_normal

tf.truncated_normal(shape, mean, stddev) :shape表示生成张量的维度,mean是均值,stddev是标准差
截断的正态分布中输出随机值生成的值服从具有指定平均值和标准偏差的正态分布,如果生成的值大于平均值2个标准偏差的值则丢弃重新选择
2.fully_connected全连接层需要注意的是inputs参数,一般是二维的形式[batch_size, depth],而前面卷积的结果,一般是[batch_size, height, width, channels]的形式,所以需要做一个flatten操作后再传给fully_connected。一般在fc之后还会做dropout
3.tf.sequence_mask(lengths, maxlen=None,dtype=tf.bool,name=None)
函数TensorFlow张量变换函数
函数参数
lengths:整数张量,其所有值小于等于maxlen。
maxlen:标量整数张量,返回张量的最后维度的大小;默认值是lengths中的最大值。
dtype:结果张量的输出类型。
name:操作的名字。
函数返回值 形状为lengths.shape + (maxlen,)的mask张量,投射到指定的dtype。
函数中可能存在的异常
ValueError:如果maxlen不是标量。

你可能感兴趣的:(BiGRU中遇到的函数)