(1)卷积层:特征提取
感受野的深度必须和输入图像的深度相同,通过filter与输入图像卷积得到一个特征,通常会设置多层卷积层来得到更深层次的特征。
权值共享原则
(2)池化层
对特征进行压缩,简化复杂度,提取主要特征
- Avy Pooling
- Max Pooling(主要)
(3)全连接层
连接所有特征,输出给分类器(如softmax函数)
(1)SpliceComponent
左右展开帧数 构成新的特征作为网络输入
(2)Convolution1dComponent
将输入特征转换为二维矩阵(类似于图像)进行卷积
(3)MaxpoolingComponent
降维和去除扰动
(4)NormalizeComponent
归一化
(5)AffineComponentPreconditionedOnline
全连接层的权重参数层,在Kaldi中,一层网络被拆成权重层和非线性变换层,权重层保存了网络的连接参数W,参数是可以修改的,而非线性变换层是固定的
(6)SoftmaxComponent
一旦定义后,非线性变换层就是固定的
depth对神经网络的影响、卷积核比较小3 x 3
input RGB 224 x 224 唯一的处理是:3通道分别减去RGB通道的均值,使用3 x 3的卷积核 卷积核之后跟着3层Fully-Conneted layers全连接层 前两层4096通道,最后一层激活函数用的softmax,其他的为RELU
训练过程
mini-batch 256 带动量 0.9
初始化
网络百万级,很难收敛,将层数较浅的网络的结果作为较深的训练模型的初始值
conv(layer_name, x, out_channels, kernel_size=[3,3], stride=[1,1,1,1], is_pretrain=True):
in_channels = x.get_shape()[-1]
tf.get_variable 可以重复使用
tf.contrib.layers.xavier_initializer() 初始化器用的xavier_initializer() 默认uniform
x = tf.nn.conv2d
x = tf.nn.bias_add
x = tf.nn.relu (已包含了激活函数)
variable_scope(初始块) name_scope(节点)
pool(layer_name, x, kernel=[1,2,2,1], stride=[1,2,2,1], is_max=pool=True):
正态化,加上BN后网络收敛速度优化
epsilon = 1e-3
tf.nn.batch_normalization
shape = x.get_shape()
tf.contrib.layers.xavier_initializer()
x = tf.nn.bias_add(tf.matmul(), b) 矩阵相乘
x = tf.nn.relu
softmax_cross_entropy_with_logits(需要做one-hot encoding)
correct 缩影对比
梯度下降法
optimizer = tf.train.GradientDescentOptimizer(learning_rate=learning_rate)
train_op = optimizer.minimize(loss, global_step=global_step)
http://www.jianshu.com/p/9dc9f41f0b29
http://blog.csdn.net/shmilyforyq/article/details/75258259
http://blog.csdn.net/mvs2008/article/details/75577459
http://blog.csdn.net/woaidapaopao/article/details/73007741?locationNum=10
Github上除了有TensorFlow的源码库之外,还有一些很不错的适合入门的资源。现在将目前已经接触到的资源整理出来,和大家分享。
1、TensorFlow源码库 https://github.com/tensorflow/tensorflow
2、TensorFlow中文文档 https://github.com/jikexueyuanwiki/tensorflow-zh
3、TensorFlow入门例子库1,每个例子都有对应的Notebook说明。 https://github.com/pkmital/tensorflow_tutorials
4、TensorFlow入门例子库2 https://github.com/nlintz/TensorFlow-Tutorials
5、TensorFlow入门例子库3,每个例子都有对应的Notebook说明。 https://github.com/aymericdamien/TensorFlow-Examples
TensorFlow学习课程: http://learningtensorflow.com/index.html