MNIST机器学习入门 程序与操作

1. ubuntu terminal

2.创建一个code目录

mkdir tensorflow_code

3.进入tensorflow_code

cd tensorflow_code

4.创建tensorflow mnist代码文件test_mnist.py

touch test_mnist.py

5.编辑test_mnist.py

gedit test_mnist.py


准备mnist数据,在网上下载mnist数据

MNIST 数据下载http://wiki.jikexueyuan.com/project/tensorflow-zh/tutorials/mnist_download.html

下载


在tensorflow_code中mkdir MNIST_data.
将下载的 4个数据拷贝到 当前目录
cp train-labels-idx1-ubyte.gz .

6.添加代码

import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("./MNIST_data/", one_hot=True)


x = tf.placeholder(tf.float32, [None, 784])
W = tf.Variable(tf.zeros([784,10]))
b = tf.Variable(tf.zeros([10]))


y = tf.nn.softmax(tf.matmul(x,W) + b)
y_ = tf.placeholder("float", [None,10]) 


cross_entropy = -tf.reduce_sum(y_*tf.log(y))


train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)


init = tf.initialize_all_variables()
sess = tf.Session()
sess.run(init)


for i in range(1000):
  batch_xs, batch_ys = mnist.train.next_batch(100)
  sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})


correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, "float"))
print sess.run(accuracy, feed_dict={x: mnist.test.images, y_: mnist.test.labels})

保存退出到terminal

代码详细解说,参考网站:http://wiki.jikexueyuan.com/project/tensorflow-zh/tutorials/mnist_beginners.html

7.在Terminal中运行test_mnist.py

python test_mnist.py

8.运行结果


9.出现问题

mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) NameError: name 'input_data' is not defined

使用下面的代码

from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("./MNIST_data/", one_hot=True)

代替

import tensorflow.examples.tutorials.mnist.input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)

你可能感兴趣的:(tensorflow)