当前位置:   article > 正文

【Pytorch-手写字体识别】手写字体识别项目_torch 手写体识别

torch 手写体识别

一、Pytorch的发展历史

Torch基于Lua语言开发,一定程度上制约了Torch的发展
2016年Google改进了Pytorch开始进入大众视野(THNN后端)。
2018年12月发布Pytorch 1.0( C a f f e 2 Caffe_2 Caffe2)
2019年5月发布Pytorch 1.1

二、主流的的框架定义和区别

2.1 主流的框架

1.Google:

  • theano(加拿大学者开发的机器学习的库)
  • Thensorflow(基于theano基础上进行的开发)
  • keras:Google收购的高级接口库,相当于一个高级API,自己可以不做任何实现,全部实现交予底层,TensorFlow里也有keras的接口:tf.keras
    现状:Tensorflow2+keras
    keras可以快速进行网络的搭建,但效率,灵活性成问题

2.Facebook:

  • Caffe
  • Caffe2
  • Torch
  • Pytorch:由于Caffe已经与Pytoch进行了相应的结合,Facebook现在重点推Pytoch。
    现状:PyToch+Caffe2

3.Amazon:

  • mxnet

4.Microsoft:

  • CNTK

2.2 区别

TensorFlow为静态图,Pytorch是基于动态图方便进行调试。 Pytorch由于基于动态图,方便调试。所以非常受学术界欢迎。而Tensorflow 1.0由谷歌开发,有很多支持和完善的生态系统所以工业界非常受欢迎。Pytoch对新手非常的友好。Tensorflow 2既有静态图又有动态图,相对好上手。但是Pytorch各版本兼容性较好,Tensorflow各版本兼容性较差。Tensorflow 1.0被Google抛弃了,所以Pytorch性能可粗略排第一,Tensorflow 2算Pytoch和Tensorflow 1.0的折中。
使用建议:研究人员使用Pytorch,更多的把精力放在算法本质上,工程师使用Tensorflow 2,Tensorflow在工业界的相应系统生态比较完善。

三、Pytorch

3.1 Pytorch简介

生态系统非常全面:

  • 自然语言处理方面:NLP、AllenNLP
  • 视觉处理方面:TorchVision
  • 图网络、图卷积方面:PyTorch geometric
  • Pytorch训练后的移植: 通过ONNX布置到移动机器上去

1.使用Pytoch可以进行GPU的加速,注意刚加载cuda需要一段时间,所以一次计算的时间会长,之后使用cuda计算的时间会相对较短。

device = torch.device('cuda')
  • 1

2.Pytorch:提供自动求导功能

# 需要对a,b,c求导
x = torch.tensor(1.)
a = torch.tensor(1., requires_grad=True)
b = torch.tensor(2., requires_grad=True)
c = torch.tensor(3., requires_grad=True)

y = a**2 * x + b * x + c

grads = autograd.grad(y, [a, b, c])
# 输出对应的偏微分
print('after :', grads[0], grads[1], grads[2])
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

3.Pytorch有许多自带的库
常用网络层
▪ nn.Linear
▪ nn.Conv2d
▪ nn.LSTM
▪ nn.ReLU
▪ nn.Sigmoid
▪ nn.Softmax
▪ nn.CrossEntropyLoss
▪ nn.MSE

3.2 Pytorch虚拟环境的安装

CUDA:是Navidia推出,可以利用显卡进行通用计算的开发语言API,像进行软件开发一样,方便调用硬件资源加速计算。首先确定你有Navidia显卡。这样才能安装CUDA。下面是CUDA,Pytorch匹配版本:
在这里插入图片描述
以及Pytoch和python的匹配关系
在这里插入图片描述
此处我们安装python3.6版本以及Cuda 10.0,首先打开cmd窗口,查看自己的虚拟环境

conda env list
  • 1

在这里插入图片描述
新建python3.6.4环境:

conda create -n torch_1.2.0 python=3.6.4
  • 1

安装torch 1.2.0

pip install torch===1.2.0 torchvision===0.4.0 -f https://download.pytorch.org/whl/torch_stable.html --target=E:\software\Anaconda\run_file\envs\torch_1.2.0\Lib\site-package
    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/214886
    推荐阅读
    相关标签
      

    闽ICP备14008679号