TensorFlow实现Softmax Regression识别手写数字

01

TensorFlow

1.TensorFlow最初由Google Brain的研究员和工程师们开发出来,用于加速机器学习和深度神经网络方面的研究,但这个系统的通用性使其可以广泛应用于语音识别、自然语言理解、计算机视觉等其他计算领域。

2.TensorFlow使用计算图来规划数据计算流程,,每一个运算操作将作为一个节点(node),节点与节点之间的连接成为边(edge),在计算图的边中流动(flow)的数据被称为张量(tensor),故得名TensorFlow。

02

TensorFlow安装

1.Linux

1.安装Anaconda(下载Anaconda,bash ***.sh)

2.安装tensorflow两种情况:

(a).安装编译好的release版本:pip install tensorflow

(b).使用源码编译安装

problem:

(1)tensorflow 非法指令(核心已经转储)

提示:tensorflow1.6版本不行,1.3版本就可以 安装对应whl试试

3.pycharm安装

(1)Linux: (下载,解压,到pycharm/bin目录下 sh pycharm.sh)

Windows(64位系统)

1.安装Anaconda(注意添加PATH)

2.打开Anaconda Prompt 创建一个tensorflow的环境

conda create -n tensorflow python=3.6

activate tensorflow //启动TensorFlow环境

pip install --upgrade --ignore-installed tensorflow //安装cpu版本的tensorflow(下面测试不成功,安装版本不行,换了另一个版本:pip install --upgrade tensorflow1.3.whl的版本网址 安装成功)

测试tensorflow

python //在tensorflow环境下

import tensorflow as tf

hello=tf.constant("Hello,TensorFlow")

sess=tf.Session()

print(sess.run(hello))

注意:要在要在Anaconda Navigator的tensorflow里面安装要用到的库

3.安装Pycharm(选择安装32位或者64位(根据电脑配置选择),第一次安装建议勾选Download and install JRE x86 by JetBrains)

//cpu版本的tensorflow:pip install tensorflow

//gpu版本的tensorflow:pip install tensorflow-gpu

03

Softmax Regression识别手写数字

MNIST数据集:

(训练集:55000个样本,测试集:10000个样本,验证集:5000个样本)

图像:28像素*28像素大小的灰度图片

空白部分全部为0,有笔迹的地方根据颜色深浅有0到1之间的取值。

为了简化问题,我们丢弃了图片的空间结构的信息,将28*28个点展开成1维的结果(28*28=784)。

训练数据特征:55000*784

训练数据标签:55000*10

接下来就使用tensorFlow实现一个Softmax Regression:

(1)定义tensor:x,weight,biases

(3)定义成本函数:loss

(4)选定优化器:Optimizer

(5)创建Session,迭代的对数据进行训练

(6)在测试集或验证集上对准确率进行评测

Softmax对MNIST数据进行分类识别,在测试集上的准确率接近92%

我在下面这个地址上:

http://scs.ryerson.ca/~aharley/vis/conv/flat.html

去测试了一下它的识别情况,分别写了三个6,正确率还是蛮高的。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180401G195IM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券