工业界的深度学习(一):服务器训练环境的搭建

最近刚结束了在一家研究院的实习,实习的时候院里想开展一个深度学习的项目,恰好只有我对深度学习有一点点了解,所以就比较幸运地成为了项目的负责人。整个过程很多东西都是第一次接触,有做得好也有做不好的地方,但是不得不承认像这样自己完全负责一个项目真的学习了很多东西,我自己以前很少在网上看到深度学习的算法工程师分享他们的工作经历,所以也一直很期待能把这段时间的经历总结一下分享给大家。

首先想说明的是,这个系列的文章我更偏向于讲故事,告诉大家在实际工作中可能会遇到什么,方便大家提前了解,而不是为了讲解这些技术的细节,一方面我自己本身也是因为项目要快速开展的原因没办法花太多时间了解细节,另一方面如果都往细里讲就有太多东西可以讲了,限于篇幅,我就打算讲一些经历算了。

简单介绍一下这个项目的内容,主要就是实时分析加油站的监控视频,看有没有人在加油站吸烟打手机,检测出这些危险行为。

就这样说的话感觉好像并不难,其实模型做起来也不能说难,主要的难点我觉得在于模型之外的东西,而这些就是学术界和工业界最大的区别,第一学术界追求准确度,工业界追求实用性,实用性意味着什么,那就是模型的分析能不能达到实时,如果说你用的模型,一帧都要分析几秒,那一个加油站可能十几个监控,最后平均下来难道一个摄像头一分钟只能分析一帧吗,一分钟都够时间打完一通电话了,所以在这个项目里,速度就是最重要的考虑因素了。

第二,模型怎么落地,平时搞一个复杂的模型,在GPU上面训练,在GPU测试,但是难道每个加油站都要配一个GPU吗,还是说把监控视频传回云端分析完再传回去,这些都是不现实的方案,至于怎么解决,后面会细说。

所以其实这个系列的文章会更关注这些在实际应用场景中的问题,而不是告诉你怎么建一个几十层的复杂模型,达到90%的准确率。

第一篇文章就先说一下模型的训练需要一个什么样的环境。以前我自学的时候,都是拿一台macbook,装了anaconda和python就足够了,这样的设备跑一些简单的模型当然没问题,复杂的模型跑个几分钟也行,跑久一点电脑风扇一直转也不忍心了。而在实际的工作中,要训练出一个满意的模型肯定就需要花一定的时间,总不能还是用macbook一直跑吧,所以这时候就需要一台专门用来训练模型的机器了。

有些公司可能自己本身就配置了主机用来训练,而我们则选择了华为云(当然阿里云、谷歌云什么的也行),像这种云服务器有什么优点呢,不说太多虚的,最直观一点,你在网站上选择好配置,给钱,然后就有一个完善的环境给你了,你就可以直接开发了,而且后续也不需要对机器检查维护,一切交给华为,省心省时间,而且,如果后期发现机器的配置不够好,还可以随时升级,说到底,只要有钱,一切都是那么的方便。

在选择服务器的规格的时候,我会比较关注几个点,第一个当然是系统,我是因为项目需要必须选择ubuntu的系统(原因以后会提到),当然其实一般来说linux都是比windows更好,比如说可能有些python库根本就不支持windows等等(现在不知道这种情况还常不常见,反正以前总是遇到,所以后来就换成mac了)。

第二个我会关注GPU,也就是选择服务器规格的时候,不是选择通用计算型,也不是通用计算增强型,而是GPU加速型,为什么这个GPU如此重要,这个就可以慢慢说了。

GPU这个概念是Nvidia公司1999年提出的,它是显卡上的一块芯片,就像cpu是主板上的一块芯片,关于他们的区别,有一个比喻很形象,cpu就像一个大学生,他能力很强,可以计算很复杂的数学题,但是依然没办法在十分钟内完成1000道百位数的加法;gpu则像100个小学生,虽然做不出复杂的题,但是他们可以一起在十分钟内完成1000道计算。而神经网络往往就是需要进行大量的简单矩阵运算,所以gpu就比cpu更适合咯。

提到gpu,就不得不提cuda,cuda(通用并行计算架构)是一种计算平台,利用cuda,可以改编我们的程序,实现并行化,再扔到cpu和gpu上面跑,没有cuda这个开发工具,就没法充分发挥GPU强大的并行计算能力。

之所以要说到cuda,并不是因为要学习cuda如何加速gpu,只是想说选择gpu最好选择支持cuda加速的gpu,也就是Nvidia的GPU(不确定其他牌子会不会有),也要注意即使是Nvidia的显卡也不是全都支持cuda加速的,所以必须要了解清楚。关于GPU和cuda还有很多可以深入了解的地方,这里就不细说了。

上面说了那么多,其实就是给了一个选择深度学习训练环境的建议,最后再给出我自己挑选的华为云规格:一张NVIDIA T4加上Ubuntu 16.04 server系统。

视频分析的项目代码我放在了Github,欢迎交流:ObjectDetection-YOLOv3

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值