鱼C论坛

 找回密码
 立即注册
查看: 1262|回复: 0

[技术交流] 简单的卷积神经网络------制作计算图

[复制链接]
发表于 2018-11-30 10:24:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 alltolove 于 2018-11-30 10:31 编辑

        制作计算图就是完成卷积神经网络的那些个层,代码如下:
x=tf.placeholder(tf.float32,[None,3072])
y=tf.placeholder(tf.int64,[None])
x_image=tf.reshape(x,(-1,3,32,32))
x_image=tf.transpose(x_image,perm=[0,2,3,1])
conv3=tf.layers.conv2d(x_image,
                       10,
                       (3,3),
                       padding='same',
                       activation=None,
                       name='conv3',
                       kernel_initializer=tf.truncated_normal_initializer(stddev=0.02)
                      )
bn=tf.layers.batch_normalization(conv3,
                                 training=True,
)
active=tf.nn.elu(bn)
pooling3=tf.layers.max_pooling2d(active,
                                 (2,2),
                                 (2,2),
                                 name='pool3'
                                )
flatten=tf.layers.flatten(pooling3)
y_=tf.layers.dense(flatten,10)
loss=tf.losses.sparse_softmax_cross_entropy(labels=y,logits=y_)
predict=tf.argmax(y_,1)
correct_predict=tf.equal(predict,y)
accuracy=tf.reduce_mean(tf.cast(correct_predict,tf.float64))
train_op=tf.train.AdamOptimizer(1e-3).minimize(loss)
init=tf.global_variables_initializer()
        首先要把原来一行3072的数据转换成图片的矩阵形式,接下来就是一个卷积层,一个批量归一化层,一个池化层,和一个全连接层,就是最简单的形式,一般卷积神经网的卷积层都是有好几个的,这里为了程序运行速度就简化为一个了。
        最后是求一个损失值,计算一下准确率,然后做一个训练数据(又叫反向传播)的算法AdamOptimizer

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 08:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表