[关闭]
@devilloser 2017-07-05T01:45:31.000000Z 字数 2173 阅读 798

tensorflow (day5)

tensorflow


输出值之前要

  1. sess.run(tf.initialize_all_variables())
  2. print sess.run(variable)

tensorboard

tensorflow支持七种可视化:
scalars:训练过程中的准确率、损失值、权重/偏置的变化
images:训练过程中记录的图像
audio:训练过程中记录的音频
graphs:数据流图,以及消耗
distributions:训练过程中记录的数据的分布
histograms:训练过程中记录的数据的柱状图
embeddings:词向量后的投影分布

变量作用域

variable_scope:给variable_name,op_name加前缀
name_scope:给op_name加前缀
作用是在调用同一个封装好的模块时,不会重复创建变量

  1. with tf.variable_scope("foo") as scope:
  2. v=tf.get_variable("v",[1])
  3. with tf.variable_scope("foo",reuse=True):
  4. v=tf.get_variable("v",[1])

举个栗子:

  1. with tf.variable_scope("foo"):
  2. with tf.name_scope("bar"):
  3. v=tf.get_variable("v",[1])
  4. b=tf.Variable(tf.zero([1]),name='b')
  5. x=1.0+v

v.name="foo/v:0"
b.name="foo/bar/b:0"
x.op.name="foo/bar/add"

神经元函数及其优化

激活函数

tf.nn.relu
tf.nn.sigmoid
tf.nn.tanh
tf.nn.elu
tf.nn.bias_add
tf.nn.crelu
tf.nn.relu6
tf.nn.softplus
tf.nn.softsign
tf.nn.dropout

  1. a=tf.constant([[-1.0,2.0,3.0,4.0]])
  2. with tf.Session() as sess:
  3. b=tf.nn.dropout(a,0.5,noise_shape[1,4])
  4. print sess.run(b)
  5. b=tf.nn.dropout(a,0.5,noise_shape[1,1])
  6. print sess.run(b)

卷积函数

  1. tf.nn.convolution(input,filter,padding,strides=None,dilation_rate=Nome,name=None,data_format=None)

N维卷积的和

  1. tf.nn.conv2d(input,filter,strides,padding,use_cudnn_on_gpu=None,data_format=None,name=None)

filter:
filter_height
filter_width
input_channel
out_channel

  1. tf.nn.depthwise_conv2d(input,filter,strides,padding,rate=None,name=None,data_format=None)

将不同卷积核独立的应用在不同通道上,所以输出的通道为input_channel*output_channel

  1. tf.nn.separable_conv2d(input,depthwise_filter,pointwise_filter,strides,padding,rate=None,name=None,data_format=None)

depwise_filter:等同于depthwise_conv2d
pointwise_filter:等同于conv2d

  1. tf.nn.atrous_conv2d(value,filters,rate,padding,name=None)

孔卷积

  1. tf.nn.conv2d_transpose(value,filter,output_shape,strides,padding='SAME',data_format='NHWC',name=None)

解卷积网络

池化函数

  1. tf.nn.avg_pool(value,ksize,strides,padding,data_format='NHWC',name=None)
  1. tf.nn.max_pool(value,ksize,strides,padding.data_format='NHWC',name=None)
  1. tf.nn.max_pool_with_argmax(input,ksize,strides,padding,Targmax=None,name=None)

分类函数

  1. tf.nn.sigmoid_cross_entropy_with_logits(logits,targets,name=None)
  1. tf.nn.softmax(logits,dim=-1,name=None)
  1. tf.nn.log_softmax(logits,dim=-1,name=None)

优化方法

BGD批梯度下降
SGD随机梯度下降
Momentum法
Nesterov Momentum法
Adagrad法
Adadelta法
RMSprop法
Adam法

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注