Merge pull request #51 from aa12356jm/patch-2

Update 第十五章_GPU和框架选型.md
This commit is contained in:
aa12356jm 2018-10-28 20:21:35 +08:00 committed by GitHub
commit 40ead4be05
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 10 deletions

View File

@ -1,10 +1,10 @@
# 第十章 GPU和框架选型指南
# 第十章 GPU和框架选型指南
## 17.1 GPU购买指南
## 15.1 GPU购买指南
深度学习训练通常需要大量的计算资源。GPU目前是深度学习最常使用的计算加速硬件。相对于CPU来说GPU更便宜且计算更加密集。一方面相同计算能力的GPU的价格一般是CPU价格的十分之一。另一方面一台服务器通常可以搭载8块或者16块GPU。因此GPU数量可以看作是衡量一台服务器的深度学习计算能力的一个标准。
### 17.1.1 如何选择GPU
### 15.1.1 如何选择GPU
### 首先给出一些总体的建议
最好的GPU整体小幅度Titan Xp
综合性价比高但略贵GTX 1080 TiGTX 1070GTX 1080
@ -36,7 +36,7 @@ Nvidia有面向个人用户例如GTX系列和企业用户例如Tesla系
Nvidia一般每一两年发布一次新版本的GPU例如2017年发布的是GTX 1000系列。每个系列中会有数个不同的型号分别对应不同的性能。
### 17.1.2 GPU的主要性能指标
### 15.1.2 GPU的主要性能指标
GPU的性能主要由以下三个参数构成
1. 计算能力。通常我们关心的是32位浮点计算能力。16位浮点训练也开始流行如果只做预测的话也可以用8位整数。
@ -63,7 +63,7 @@ GPU的性能主要由以下三个参数构成
所以如果你想购买一个快速的GPU首先要关注的是GPU的带宽bandwidth
### 17.1.3 整机配置
### 15.1.3 整机配置
通常我们主要用GPU做深度学习训练。因此不需要购买高端的CPU。至于整机配置尽量参考网上推荐的中高档的配置就好。不过考虑到GPU的功耗、散热和体积我们在整机配置上也需要考虑以下三个额外因素。
@ -72,7 +72,7 @@ GPU的性能主要由以下三个参数构成
3. 主板的PCIe卡槽。推荐使用PCIe 3.0 16x来保证充足的GPU到主内存的带宽。如果搭载多块GPU要仔细阅读主板说明以确保多块GPU一起使用时仍然是16x带宽。注意有些主板搭载4块GPU时会降到8x甚至4x带宽。
### 17.1.4 小结
### 15.1.4 小结
* 在预算范围之内尽可能买较新的GPU。
* 整机配置需要考虑到GPU的功耗、散热和体积。
@ -104,11 +104,11 @@ GTX 1050 Ti一般来说也是一个不错的选择如果你只是想尝试一
## 17.2 框架选型
## 15.2 框架选型
目前常用的框架有tensorflow,keras,pytorch,mxnet等等各个框架的优缺点在此简单介绍
### 17.2.1 常用框架简介
### 15.2.1 常用框架简介
1tensorflow
tensorflow由于有google的强大背书加上其优秀的分布式设计丰富的教程资源和论坛工业部署方便基本很多人都是从tensorflow入门的
@ -140,13 +140,13 @@ mxnet是dmlc社区推出的深度学习框架在2017年被亚马逊指定为
优点:资源丰富,代码容易理解,部署方便
缺点:入门门槛高,文档较少
### 17.2.1 框架选型总结
### 15.2.1 框架选型总结
1新手入门首推pytorch上手快资源丰富,官方文档写的非常好(https://pytorch.org/tutorials/)
2目前工业部署tensorflow是首选,资源丰富,并且在分布式训练这一块基本一家独大
3mxnet的gluon接口有比较丰富的中文资源教程zh.gluon.ai论坛discuss.gluon.ai,gluoncv模块https://gluon-cv.mxnet.io,gluonNLP模块https://gluon-nlp.mxnet.io
## 17.3 模型部署
## 15.3 模型部署
我们一般都是通过python或者其他语言来编码训练模型然后基于后端来进行部署
一般的框架都有自身的部署框架比如tensorflowpytorchcaffe2mxnet等等
有一些框架是专门做推理部署使用的,比如