深度学习技术图像处理入门
上QQ阅读APP看书,第一时间看更新

1.2 硬件准备

本书主要讨论使用深度学习技术进行图像处理分析,而深度学习技术在模型的训练阶段,需要使用除了CPU以外的硬件进行加速才能达到理想的训练速度,实现模型的快速收敛。这些硬件包括TPU、FPGA、Intel Xeon Phi处理器等,但目前阶段使用最广泛、开发最简单的还是GPU,即英伟达(NVIDIA)公司的显卡。

之所以是NVIDIA公司的显卡,是因为现在主流深度学习框架大多基于NVIDIA的CUDA计算库,而CUDA计算库支持的硬件主要是自家产品。支持CUDA的硬件可以在NVIDIA官网中找到(https://developer.nvidia.com/cuda-gpus)。因此,想用自己电脑进行本书深度学习入门学习的用户,如果想借助GPU作为硬件帮助,基本要求是需要有一台近几年出品的NVIDIA显卡,其显存大小最好在8GB以上。

如果用户的电脑没有独立显卡或者显存大小不足,将无法训练本书最后几章中的案例。另外,电脑配置的是AMD显卡,是不是必须新买一台电脑呢?重新购置电脑当然也可以,但是毕竟成本比较高,用户同样可以考虑按小时收费,租用GPU云服务器。为了方便读者学习,我们为本书的内容在亚马逊云(aws)以及腾讯云(qcloud)上设计了专门的镜像,方便读者使用。

1.2.1 在亚马逊租用云GPU服务器

使用aws us-east-1节点,GPU价格是0.9美元/小时,也可以使用实时竞价(Spot Instance)方式以获得更低的价格。使用方法如下:

(1)登录aws官网。进入https://console.aws.amazon.com/ec2/v2/home?region=us-east-1,单击Launch Instance,如图1-1所示。当然,也可以单击左侧的Spot Instance选项选择更低价的实时竞价机器,然后启动。

图1-1 在aws上单击Launch Instance

(2)选择左侧的Community AMIs选项,然后在右侧的文本框中查找NVIDIA Docker,再选择一个镜像,如图1-2所示。推荐使用aws us-east-1节点。

图1-2 查找预装NVIDIA Docker的镜像

(3)选择p2.xlarge节点,单击Review and Launch按钮启动服务,如图1-3所示。

图1-3 选择p2.xlarge节点

(4)接下来选择公钥,如图1-4所示。如果还没有公钥就进行创建。创建公钥的过程中注意预留22、8888、6006这三个端口,供后续使用。短期使用时,可以选择开启所有端口。

图1-4 选择公钥

(5)在PuTTY(Windows)或者终端(Mac/Linux)中,使用密钥启动。这里我们以PuTTY为例,需要填写公网地址,如图1-5所示。然后需要指定刚才登录时使用的公钥,如图1-6所示。

图1-5 输入公网地址

图1-6 指定登录时使用的公钥

(6)此时单击Open按钮,即可登录aws服务器。如果遇到登录问题,可以在aws上问答(http://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/putty.html)中查询具体原因。

1.2.2 在腾讯云租用GPU服务器

亚马逊云是国外的机器,大家实际使用时可能网络连接速度并不快。这种情况下,大家可以考虑腾讯云、阿里云的按小时计费。这里以租用腾讯云为例。

(1)进入网址https://cloud.tencent.com/product/gpu,单击“立即选购”按钮,如图1-7所示。

图1-7 选购GPU云服务器

(2)选择“按量计费”,然后指定机型,这里GPU单卡足够,如图1-8所示。

图1-8 选择计费模式和机型

(3)接下来选择GPU镜像,单击“从服务市场选择”链接,如图1-9所示。

(4)在弹出的窗口中选择腾讯云官方的GPU镜像,如图1-10所示。注意,这里显示的官方镜像CUDA是7.5版本,读者使用该镜像时需要下载并安装8.0版本以上的CUDA。

图1-9 选择镜像

图1-10 选择腾讯云官方镜像

(5)选择完毕,单击“下一步:选择存储与网络”按钮,如图1-11所示。

图1-11 单击“下一步:选择存储与网络”

(6)接下来选择带宽和服务器数量等,如图1-12所示。

图1-12 选择带宽和服务器数量等

(7)单击“下一步:设置信息”按钮,设置安全规则、购买服务器。在“安全组”框中至少要保留22、8888、6006三个端口,短期使用也可以全部开启,如图1-13所示。

图1-13 设置安全规则和购买服务器

(8)购买成功会显示如图1-14所示的页面。稍等几分钟,公网IP地址出现后,使用公网IP地址登录即可。

图1-14 购买成功

(9)使用PuTTY登录购买的云服务器,其操作步骤与aws登录相同,注意不需要设置秘钥,填写IP地址即可。

(10)参考1.3.2小节,安装CUDA、Docker、NVIDIA Docker等。

1.2.3 在云服务器中开启搭载开发环境的Docker服务

登录服务器,开启Docker以及NVIDIA Docker服务,并开启镜像。

          systemctl start docker
          systemctl start nvidia-docker
          git clone https://github.com/Jinglue/DL4Img
          nvidia-docker pull hubq/dl4img
          nvidia-docker run -d -v ~/dl4img/notebook/:/srv -p 8888:8888 -p 6006:6006
      hubq/dl4img

打开镜像后,读者可以在浏览器中输入下面的内容来访问刚才搭建的开发环境。

    http://[购买云服务器的IP地址]:8888

登录密码为jizhitencent,如图1-15所示。

图1-15 访问刚搭建的开发环境