MNIST手写体识别(Tensorflow)

一、Tensorflow配置与安装

Python3.6.2 + Anaconda (conda 4.3.27)+ tensorflow-gpu1.8.0下测试通过

1.首先要安装CUDA,我安装的是CUDA9.0
安装完之后在命令行输入可以查看是否安装成功以及版本:

 nvcc -V

在这里插入图片描述
2.其次是安装Anaconda
我是选择用Anaconda安装tensorflow,方便管理各种环境。(还有pip直接安装tensorflow库的办法,但是由于我的python2和python3的环境有点冲突,当时没有弄好,现在发现原来是我在给3版本的python重命名为python3的时候,只修改了名字没有修改里面的文件埋下了隐患,详情见这篇文章:两个版本的python,现在是解决了,这里还是选择用Anaconda安装tensorflow)
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 寻找你与你电脑系统对应的版本。下载对应安装包,按提示安装,查看版本查看是否安装成功:

conda --version

在这里插入图片描述

在Anaconda里建立TensorFlow的环境:

conda create -n tensorflow Python=3.6

激活TensorFlow环境:

activate TensorFlow

关闭环境:

deactivate

3.安装TensorFlow

pip install --upgrade --ignore-installed tensorflow-gpu

安装TensorFlow指定版本

pip3 install --upgrade tensorflow_gpu

(我是pip3,因为用python3安装的气自己修改了名字)
简单测试:
在TensorFlow环境里打开Python:

import tensorflow as tf
hello = tf.constant("Hello!TensorFlow")
sess = tf.Session()
print(sess.run(hello))

可以运行就说明安装成功了,或者也可以通过查看tensorflow版本查看是否安装成功。

具体有啥问题可以参考官网:
http://www.tensorfly.cn/tfdoc/get_started/os_setup.html
有一个GPU的检测
在这里插入图片描述

二、卷积神经网络ConvNet

背景:如果采用全连接结构,存在参数爆炸问题。如对1000 * 1000 的图像进行卷积,大约需要1000 * 1000 * 1000 * 1000个参数。 利用局部卷积替换全连接结构,可将参数降低至1000 * 1000 * 10 * 10 ≈ 100M。如果进一步采用权值共享的策略,即同一特征图卷积核、 Bias相同,将卷积参数将至10*10。为尽可能地保存信息,可 设计多个卷积特征图,将参数将至10K。
Alt
在卷积网络(ConvNet)中,基本上有三种类型的层:

1.卷积层(Convolution layer)
2.Pooling层(Pooling layer)
3.全连接层(Fully connected layer)

1.卷积层(Padding)

卷积层是为了增加特征图,每进行一次卷积操作就会多输出一张图像。
用3×3滤波器对6×6维的输入进行卷积,得到4×4输出。我们可以推广它并说如果输入是n X n并且滤波器大小是f X f,那么输出大小将是
( n − f + 1 ) X ( n − f + 1 ) (n-f + 1)X(n-f + 1) n

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值