tf.truncated_normal(shape, stddev=0.1)
从截断的正态分布中输出随机值。
生成的值服从具有指定平均值和标准偏差的正态分布,如果生成的值大于平均值2个标准偏差的值则丢弃重新选择。参数:
shape: 一维的张量,也是输出的张量。 mean: 正态分布的均值。 stddev: 正态分布的标准差。 dtype: 输出的类型。 seed: 一个整数,当设置之后,每次生成的随机数都一样。 name: 操作的名字。tf.random_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)
从正态分布中输出随机值。
参数:
shape: 一维的张量,也是输出的张量。 mean: 正态分布的均值。 stddev: 正态分布的标准差。 dtype: 输出的类型。 seed: 一个整数,当设置之后,每次生成的随机数都一样。 name: 操作的名字。tf.constant(0.1, shape=shape)
constant是TensorFlow的常量节点,通过constant方法创建,其是计算图(Computational Graph)中的起始节点,是传入数据。
参数:
value:初始值,必填,必须是一个张量(1或[1,2,3]或[[1,2,3],[2,2,3]]或......) dtype:数据类型,选填,默认为value的数据类型,传入参数为tensorflow下的枚举值(float32,float64.......) shape:数据形状,选填,默认为value的shape,设置时不得比value小,可以比value阶数、维度更高,超过部分按value提供最后一个数字填充,tf.nn.relu(features, name=None)
计算激活函数relu,即max(features, 0)。即将矩阵中每行的非最大值置0.并且返回和feature一样的形状的tensor。
参数:
features: tensor类型,必须是这些类型:A Tensor. float32, float64, int32, int64, uint8, int16, int8, uint16, half. name: :操作名称(可选)tf.nn.conv2d(x, W_conv1, strides=[1, 1, 1, 1], padding='SAME')
卷积函数,
参数:
输入(input): [batch, in_height, in_width, in_channels] 过滤器/卷积核(filter / kernel):[filter_height, filter_width, in_channels, out_channels]步长(Strides): [1, stride, stride, 1]
描述:过滤器移动的步长,第一位和第四位一般恒定为1,第二位指水平移动时候的步长,第三位指垂直移动的步长。strides = [1, stride, stride, 1].padding: A string from: "SAME", "VALID"
描述:Valid: 用过滤器在输入的矩阵中按步长移动时候,会把最后的不足部分的列和行抛弃;Same:先在输入矩阵上下各加个值为0的行,在左右各加个个值为0的列,也就是用0把原先的矩阵包裹一层,然后在移动的时候如果输入矩阵的列或者行长度不够,就用0来补齐。具体可以看另一篇文章:Padding:SAME和VALID详释返回:
Tensor,即Feature Map,格式为shape [batch, height, width, channels]tf.nn.max_pool(value, ksize, strides, padding, name=None)
最大值池化
参数:
value:需要池化的输入,一般池化层接在卷积层后面,所以输入通常是feature map,依然是[batch, height, width, channels]这样的shape ksize:池化窗口的大小,取一个四维向量,一般是[1, height, width, 1],因为我们不想在batch和channels上做池化,所以这两个维度设为了1 strides:和卷积类似,窗口在每一个维度上滑动的步长,一般也是[1, stride,stride, 1] padding:和卷积类似,可以取'VALID' 或者'SAME'返回:
Tensor, shape为[batch, height, width, channels]tf.nn.dropout(x, keep_prob, noise_shape=None, seed=None, name=None)
根据给出的keep_prob参数,将输入tensor x按比例输出。
参数:
x :输入tensor keep_prob : float类型,每个元素被保留下来的概率 noise_shape : 一个1维的int32张量,代表了随机产生“保留/丢弃”标志的shape。 seed : 整形变量,随机数种子。 name : 名字,没啥用。tf.argmax(vector, 1)
返回最大的那个数值所在的下标
返回的是vector中的最大值的索引号,如果vector是一个向量,那就返回一个值,如果是一个矩阵,那就返回一个向量,这个向量的每一个维度都是相对应矩阵行的最大值元素的索引号。