import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) xs = tf.placeholder(tf.float32,[None,784]) ys = tf.placeholder(tf.float32,[None,10]) Weight = tf.Variable(tf.zeros([784,10])) biases = tf.Variable(tf.zeros([10])) y = tf.nn.softmax(tf.matmul(xs,Weight)+biases) loss = -tf.reduce_sum(ys*tf.log(y)) train = tf.train.GradientDescentOptimizer(0.01).minimize(loss) init = tf.initialize_all_variables() sess = tf.Session() sess.run(init) for step in range(10000): batch = mnist.train.next_batch(100) sess.run(train,feed_dict={xs:batch[0],ys:batch[1]}) if step%50==0: correct_prediction = tf.equal(tf.arg_max(ys,1),tf.arg_max(y,1)) accuracy = tf.reduce_mean(tf.cast(correct_prediction,tf.float32)) print(sess.run(accuracy,feed_dict={xs:mnist.test.images,ys:mnist.test.labels}))