深度学习入门之PyTorch(二)深度学习框架

2 深度学习框架

深度学习框架可以让你事半功倍,那如何选择一个适合自己的学习框架呢?

2.1 深度学习框架介绍

这里就拿学习Java来举例吧,Java的SSM框架和SSH框架只需要我们进行简单那的配置就可以自动生成代码,避免代码的重复编写,提高了我们的开发效率,深度学习框架也类似,下面就来介绍流行的几个深度学习框架
1)Tensorflow
这个框架是Google 开源的框架,C++ 语言开发,使用数据流图的形式进行计算,图中的节点代表数学运算,图中的线条代表多维数组的交互,对于它的历史,当初是由研究人员和Google 员工针对机器学习和深度神经网络开发的,目前可以适用于任何领域。第三方抽象库有Keras,TflearntfslimTensorLayer
(1)优点

  1. 部署灵活,可以部署在一个或者多个CPU、GPU上,或者适用API的移动设备上
  2. 因为是Google 这样的大公司出品,所以更新和维护频繁
  3. 有Python和C++ 的接口,扩展性好
  4. 教程完善,适合新手学习
  5. 是深度学习框架的鼻祖,很多论文复现使用的就是这个框架

(2)缺点

  1. 每个计算流必须构建成图,没有符号循环,这样使得一些计算变得困难;
  2. 没有三维卷积,因此无法做视频识别;
  3. 即便已经比原有版本(0.5)快了58倍,但执行性能仍然不及它的竞争者。

有关更加详细的框架优缺点可以看这个更加详细的描述

2)Caffe
是有加州大学伯克利进行开发和维护的,这个框架因为ImageNet比赛被很多人使用,因为他对卷积网络支持性好。使用比赛中的网络模型就要使用Caffe,但是只有C++ 接口,不够灵活,内存占用多,目前caffe2已经开源了并修复了一些问题。
3)Theano
如何要处理深度学习中大量神经网络算法,这个框架是首选,核心是数学表达式的编译器。
4) Torch
PyTorch 的前身就是Torch ,这个框架的特别之处就是使用小众语言Lua开发的,但是PyTorch相对其来说更加灵活,支持动态图,也提供了python接口。
5)MXNet
亚马逊的官方框架,之前是几个人由于对技术的热爱开发的,有很好的分布式支持,我想也这是亚马逊使用这个框架的主要原因,性能好,占用内存低,这对比Caffe就是很大的优点了,支持多种语言,前面的几个框架都是只支持Python和C++ 语言,MXNet框架不仅支持主流的python,还有R、matlab、Scala、JavaScript等。
但是因为MXNet的教程不够完善,这也是为啥Tensorflow流行起来的原因,这样就导致很多人不去使用这个框架,论文和比赛使用这个框架的人很少。

2.2 PyTorch介绍

2.2.1 什么是PyTorch

要说这个语言的最大优点就是支持动态神经网络,就连Tensorflow也不支持这个,同时PyTorch是由python编写,可以实现GPU加速。为了更好的理解,PyTorch就是GPU支持的numpy,拥有自动求导功能,已经被Facebook、Twitter、等机构采用。

2.2.2 为什么要使用PyTorch

这时候你一定有疑问了,为什么不使用当下最流行的深度学习框架Tensorflow呢?这里就列举学习PyTorch的必要性
1)学习多一个框架,以备不时之需
2)使用Tensorflow和Caffe是命令式的编程语言,而且是静态的,必须构建一个神经网络,如果想改变网络结构就要从头开始。PyTorch上面我们讲过可以快速求导
3)容易Debug,快速找到错误
4)代码简单易懂,更加简洁直观。

2.3 配置PyTorch的深度学习环境

2.3.1 操作系统选择

Mac或者Linux,Linux 最好使用Ubuntu.,从2018年4月起,官方开始支持windows版本的了

2.3.2 开发环境的安装

对于python 来说,最头疼的问题是不同版本环境管理和包管理,这里使用Anacanda将软件包打包。
对 Anacanda进行简单的介绍
1)是python发行版
2)支持linux,Mac,Windows
3)提供了包与环境管理的功能
4)可以很方便的解决多版本python并存、切换以及各种第三方包安装的问题

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Nefelibat

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值