当前位置: 代码迷 >> 综合 >> Tensorflow实现SoftMax Regression (MNIST)手写体数字识别(利用卷积提高识别准确性)
  详细解决方案

Tensorflow实现SoftMax Regression (MNIST)手写体数字识别(利用卷积提高识别准确性)

热度:94   发布时间:2023-12-08 21:17:45.0

       前两篇手写体数字识别都是初学者入门的教程,第一个利用全连接识别,第二个增减隐含层,准确率较第一个有所提升。都是只利用了图像的一维特征。下面使用卷积利用图像二维的特征进行识别,准确率又有所提升。同时利用Dropout保留部分节点,达到降采样的目的,以防止过拟合。

from tensorflow.examples.tutorials.mnist import input_data
import tensorflow as tf
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)# 参数初始化方法v
def weight_variable(shape):weight = tf.truncated_normal(shape=shape, stddev=0.1)return tf.Variable(weight)# 定义偏置项
def biases_variable(shape):biases = tf.constant(0.1,shape=shape)return tf.Variable(biases)# 定义卷积核
def conv2D(x,w):return tf.nn.conv2d(x,filter=w,strides=[1, 1, 1, 1], padding="SAME")# 定义最大池化
def max_pool_2X2(x):return tf.nn.max_pool(x,ksize=[1,2,2,1], strides=[1,2,2,1], padding="SAME")# 将一维的输入变量转换成
x = tf.placeholder(tf.float32, [None,784])
x_image = tf.reshape(x, [-1, 28,28, 
  相关解决方案