卷积神经网络 Tensorflow

import tensorflow as tf

#通过tf.get_variable的方式创建过滤器的权重变量和偏置项变量
filter_weight = tf.get_variable('weights',[5,3,3,16],#stddev代表正态分布的标准差
                                initializer = tf.truncated_normal_initializer(stddev = 0.1))
biases = tf.get_variable('biases',[16],initializer = tf.constant_initializer(0.1))
#tf.nn.conv2d提供了一个非常方便的函数来实现卷积层前向传播的算法。
#input代表卷积层的输入,filter代表权重,strides代表步长,padding 选择sanme代表全为0填充,valid表示不添加
conv = tf.nn.conv2d(input,filter_weight,strides = [1,1,1,1],padding = 'SAME')
#tf.nn.bias_add提供了一个方便的函数给每一个节点加上偏执项
bias = tf.nn.bias_add(conv,biases)
#将计算结果通过ReLU激活函数完全去线性化
actived_conv = tf.nn.relu(bias)

输入层即整个神经网络的输入;
卷积层:是整个卷积神经网络中最为重要的部分。卷积层将神经网络中的每一小块进行深入地分析从而得到抽象程度更高的特征。一般来说,通过卷积层处理过的节点矩阵会变得更深。
池化层:就是将卷积层得到的矩阵进一步缩小,从而达到减少整个神经网络中参数的目的。
全连接层—–>Softmax层

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章