实验室一块GPU都没有怎么做深度学习?

2021-02-23 14:41:04 浏览数 (1)

这个问题,5年前我也想问。

还记得 CVPR 2015 开完会回来,感觉大家都在讨论 deep learning,convolutional neural network,当时觉得应该试试。我就用网上开源的 LetNet 在笔记本上训练了一下我们当时自己采集的数据集,结果完爆我们费尽心思手动设计的传统方法。我当时就鼓动我老板,让她给实验室买个带 GPU 的机器。结果她语重心长地说: "你看实验室这些旧电脑,我之前给每一个 PhD 学生都配一台电脑,结果没过多长时间,大家都不用了,只用自己的笔记本,所以不要把钱花在硬件上"。我竟无言以对。。。

但是 Research 还是要做,我就一狠心买了个 Titan-Z GPU,大概花了博士一个月的工资,然后就有了下面这张图:

那时候还没有 eGPU,我就自己搞了个解决方案,用一个外置台式机电源带动 thunderbolt to PCIe 的转接器。有了这些“装备”之后,我就开始了调参的不归路。

比较早入坑,16 年用 MatConvNet 复现了一下 ResNet zhanghang1989/ResNet-Matconvnet,然后用 ResNet 提了下 feature,比较容易水 paper。在 NVIDIA 实习的时候,听说可以自己写 proposal 向 NVIDIA 申请免费的 GPU,之后就每年都申请一块,直到毕业 (链接:GPU Grant Application)。在发了几篇 deep learning 的 paper 之后,我老板也开始换方向了,而且给组里的学弟们买了8卡的GPU Server(当时是我毕业前帮老板挑的机器,可惜自己没有用到)。

很难想象,当初如果自己没有自费买 GPU,现在我会在哪里,在做什么。如果客观条件不好,尽量想办法克服一下,机会要好好把握

作者:孔祥勇 https://www.zhihu.com/question/299434830/answer/1138597471

我们学科,学校都一般,大部分老师都没经费没这些硬件的。

我自己实验室是一点点积累买GPU的,拿不到国家课题就做企业课题,然后用来给学生买GPU,电脑,内存,磁盘,保证本科 研究生20多人的计算能力。AI计算的话:一台双卡2080ti主力计算工作站,4台2080或者2070S的GPU,研究生人均一台,本科一个团队一台。平常跑不满,如果有外面合作的学生也会借给他们用,如果有交集,可以科研论文合作。

下一步打算:对合作型联合的热爱科研的学生,如果自己导师没有出论文经费的我会帮他们出。当然条件也是要求:他除了要完成自己的论文也要多做些工作,如果愿意的话,支持下学生也没问题。如果有这方面需求愿意合作,可以私信我。

我们主要做医学人工智能,通用AI在技术上一样的,不限制课题。

作者:时间旅客 https://www.zhihu.com/question/299434830/answer/1138460434

实验室没有GPU,也不想花钱租GPU,就只能用CPU了。CPU比GPU慢很多,所以复杂的数据量大的研究是没法做了。那么有没有数据量小,且有一些意义的研究呢?有。

建议研究一些可解释性的相关问题。

举一个卷积神经网络的例子,比如这个问题:

能否对卷积神经网络工作原理做一个直观的解释?https://www.zhihu.com/question/39022858

大家都是从滤波器的角度解释卷积核,那么怎么能知道是否说的是对的呢?是不是可以取100张猫和100张狗,模型设置为一层feature map为10的3*3卷积 全局pool,训练到过拟合。看看哪几个维度会预测到猫,哪几个维度会预测到狗,再看看这10个卷积核长什么样,分析一下原图过了这些卷积核到底获得了什么特征。

再比如,CNN在经过图像旋转、平移、放缩等增强方法之后是可以具有相应的不变性的。那么它到底是怎么获得这种不变性的呢?是利用不同的feature map映射到最后输出向量中不同的维度,还是最后会映射到相同维度呢?

再进一步,行人重识别任务中有很多用度量学习的方法,两张差异很大的图片过同一个模型可以得到比较近似的向量,那么这些模型是怎么获取特征并怎么映射的呢?

这些问题其实是我一直思考没想出答案,但也没去做实验的。因为我有GPU,平时搭模型、调参的工作做多了,就没有太大动力去研究这些有意思的问题了。

作者:莫笑傅立叶 https://www.zhihu.com/question/299434830/answer/1693087823

1.兄弟,赶紧催着老师买一块。

2. 要么看老师和计算机学院老师关系如何,直接住对方实验室去。

3. 我用过好多网上平台,滴滴云还行,有大企业背书又便宜,还有好多送的活动。

4. colab就算了。

作者:snowhou https://www.zhihu.com/question/299434830/answer/1231487151

你这一块卡没有做深度学习不太现实,最好说服你老师最好买几张卡(1080ti)以上,毕竟也不是你一个人在用。这是其实是最划算的方式,在网上无论是免费还是付费的资源,终究不是长远之计,而且有一定的使用限制。争取不到卡的话还是乘早弃坑吧,深度学习不用大量的卡"喂",很难研究出什么东西。

分享下我自己的"卡"路,你可以参考下我的"贫民"历程。

一开始有4块1080,和师兄们一起用,当时刚开始入门,也就跑下 cs231n 和当时还是caffe 版本的 R-CNN,电脑系统太老了caffe总是出问题,也在网上用过服务器(国内付费的,谷歌云的300美金,Colab 等),也就随便跑了跑。后来随着 detectron 等的开源,发现 1080 显存太小了,而且速度太慢,只能跑 VOC,跑 COCO 不太现实,一度很奔溃,想着是不是要换个方向。

以后对老师软磨硬泡,加了台 双2080ti 的机器,终于可以跑 COCO 了,虽然训练时间还是略长,不过已经在接受范围内了。

后来机缘巧合下发现了些免费的平台(百度 AIStudio等),第一次用到 V100 ,爽过吸大麻。多注册了几个账户,终于不在担心算力的问题,就这样开始了升级打怪之路,跑跑论文代码,打打比赛,好多任务都可以并行展开了,这时候就相当舒服了,没有了算力的约束,成长起来也是很快的。假如没有了这些免费平台,怕不是要在入门的地方原地踏步了。

其实缺少算力还可以去企业实习,不过如果基本的 1080ti 都用不上,大概门都入不了,公司估计也进不去。所以还是最开始的话,尽早联合你同届同学说服老师买卡,不然还是乘早弃坑。自己学(无人指导) 没卡 = 天坑 ️,切记!

作者:艾力克斯Alex https://www.zhihu.com/question/299434830/answer/1016932439

上学期做的computional vision 远程连接学校linux装不了tensorflow,Google Colab尝试了两天也没设置好

然后心一横 我就用我的四核8GBMacBook慢慢跑吧 train一次一天 validate 6个小时,我就这样坚持了一个月把作业写完了。

作者:视学算法 https://www.zhihu.com/question/299434830/answer/1071679101

对初学者来说CPU足以。以下几点:

1、先把CPU利用好:其实对于很多初学者来说能把OpenMPI配置好,多线程利用起来,C底层程序用Intel MKL编译(需要Intel CPU),基本上可以带来的效率提升可以近似于用GPU。

2、然后利用好你自己的时间: 貌似现在道听途说一般的结论是GPU比CPU提速10倍左右。大家想想,训练一个模型,本来要CPU跑10个小时,结果买了GPU只用1一个小时,但是节约来的9个小时里面一半浪费在了看知乎上(说你呢!),另一半浪费在了刷微信上。本屌最近跑些NLP方面的东西,东西不是特别大,Ubuntu笔记本装了OpenMPI可以四个线程一起跑,也比单核CPU快一倍左右,基本上白天先把模型设置好,跑上3~4个Epoch看看效果,然后在晚上睡觉之前开始跑个20-30个循环,第二天早上怎么也都好了。

3、最后设计好数据结构: 另外其实数据预处理的好,用简便的方法存在内存里面,也是可以提升不少效率的。

作者:runner time https://www.zhihu.com/question/299434830/answer/1099500820

实验室连显卡都没有就说要搞深度学习?那我看你们导师也是脑门一拍,然后随手搞本教科书胡搞乱搞,你觉得这样下去能搞出什么名堂?

不如买块游戏显卡打游戏去。

哦,其实游戏显卡也是可以搞深度学习的,图灵架构显卡的CUDA计算力高达7.0,只要1500元一块,你值得拥有!

0 人点赞