tensorflow学习笔记(一)

一、MINST数据集的下载和使用
MINST数据集是入门级的计算机视觉数据集,包含各种手写数字图片,”Hello Word!”是程序员的第一个程序,那么MNIST数据集,毫无疑问是机器学习者第一个训练的数据集
在tensorflow官方文档中给了一个input_data.py文件,专门用来下载和解压调用mnist数据集。下载地址:
http://download.csdn.net/detail/chenbaiyang12csdn/9748645
按官方文档中说明将input_data.py直接拷入项目中即可,本人在运行中只下载成功第一个数据集,对此只要将官网上的其余数据集下载放入相同文件夹中即可。
新建minst.py

用于调用input_data.py下载和解压调用mnist数据集

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

二、训练评估tensorflow模型

import tensorflow as tf

x = tf.placeholder("float", [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})

运行结果如下

/usr/bin/python2.7 /home/tensor/PycharmProjects/minst/mnist.py
Extracting MNIST_data/train-images-idx3-ubyte.gz
Extracting MNIST_data/train-labels-idx1-ubyte.gz
Extracting MNIST_data/t10k-images-idx3-ubyte.gz
Extracting MNIST_data/t10k-labels-idx1-ubyte.gz
0.9132

Process finished with exit code 0

正确预测项的比例91.32%

你可能感兴趣的:(深度学习,python)