Loading...
墨滴

吴羽峰

2021/05/31  阅读:66  主题:雁栖湖

我的三年深度学习自学之路

大家好,我是羽峰。今天要和大家分享的是研究生三年的生活,也是自己自学深度学习的三年,凭借三年自学,最终进入了大厂做了一名算法工程师。

Part12018

考研因为失误或者可能本来就比较菜,最后调剂回了本校

回本校的好处就是身边人或多或少都认识,所以建立起友谊就很容易,相处也很融洽。

3月末确定之后,我就出去实习了一个月,那时候使用的还是还是c,考研考的c,所以对其还是比较了解,实习了一个月,也是这一个月的实习,接触到了深度学习这个热门领域,18年那时,深度学习已经很火了,动不动会调个参数,能跑个模型,就年入 30w+ 的宣传语到处都是。

也许是为了高薪吧,或许也是听了雷军大佬的一句话:站在风口猪都能飞起来。

自己就想进入这个领域,导师正好也刚想往这个方向上走,所以就打算先自学一下。想法是有了,但执行起来可能就很慢了。

5月实习结束后就回学校了,准备毕设和论文。期间看了如何学深度学习,然后就了解到了python这门语言,都说这门语言相比于c语言要简单很多,很好学。

看完之后就开始行动了,买了一本评价比较好的书。书买回来就一天新鲜,看了小半天,感觉还都能理解,就放下去做毕设了,写论文,然后就准备答辩了。

都整完大约在6月份了,导师让暑假留校,但那时候我们还没入学,所以没有宿舍,就在外边租了宿舍,那时候最开心的事情就是楼下的9元套餐吃到撑,老板人也很好,每次都给的很多。

暑假时候老师布置了很多论文,但跟深度学习相关很少,所以那时候也就开始了自己自学深度学习之路,首先学python,那时候花书很火,也买来了,但都是理论,没看下去,就一直放着吃灰了,只是有时要找什么知识的理论基础回去翻翻看,然后就再也没有翻过它了。Python因为有c语言基础,所以学起来还算比较轻松。

那时候最大的问题就是深度学习环境配置,也因为要经常去图书馆,带着方便就买了个surface,为了在surface配置深度学习环境,也找了很多,也因此在CSDN上发表了自己的第一篇文章,这篇文章转载了一位大佬的,自己也把自己在安装中遇到的问题写了进去,反响还行,目前阅读量3.7万。但没有坚持写,那时候没有意识到要自己写文章发表到某平台,如果那时候认识到或者坚持下来可能会有什么不一样吧。

但surface整了一会,发热严重。就放弃它了。找了写代码的电脑,能配置深度学习的,很多都推荐mac pro。 那时候windows配置深度学习相关博客还是有限,而且不是很方便,所以就一狠心买了一个苹果。但毕竟学生,电脑对我来说太贵了,我还不想要配置差的,所以选择在闲鱼上买一个二手的,为此我在闲鱼上蹲了一个月,因为之前在闲鱼上小试过水,所以知道一些套路,毕竟二手好的苹果也是价格不菲,所以自己很慎重,最后自己蹲到了一个自己很想要的,直接就买了,买了之后才发现,很香。

这样深度学习环境,python基础都有了,开始真正的入坑了。

这时候已经是8月份开学了,开始了第一个程序就是手写数字识别,后续又买了一些书,有实战的,有理论的,按实践的书打了很多代码,然后差不多理解了一些。

9月多,我们实验室7个,关系都很好,看到一个比赛,我说我们试试吧,就试着报名参加了。

这也是我第一个真正意义上的深度学习项目,虽然现在看来,这个项目low到不行,但那时候都靠自己,身边想请教的朋友或者老师都没有。我们是光电学院,那时候整个学院做深度学习的都很少。

这个项目是超市智能安防项目,就是识别一个人是否有偷盗行为,那时候也没有相关数据集呀,也没去找人要,就自己动手丰衣足食吧。

然后我们7个人,因为只有一个女生,显然数据集不够充分,所以又拉来一个人,我们就8个人,跑遍了学校所有商店,有的不让拍,有的让拍,让拍的想再去也不让拍了,所以为了拍这组照片我们学校周围的超市都认识我们了,也都不让我们进了。哈哈。

但好在最后收集到了15000多张图片,虽然用手机拍,与真实数据相差很大,但这也是我接触到的第一个真实的数据集。数据集有了,开始整模型,当时就手写数字LeNet模型比较熟悉,也能改改,所以就采用了这个模型,因为我们的分类就两类,一个是偷盗行为,一个是非偷盗行为,所以属于一个二分类问题,LeNet就可以。

研一上主要做了这个项目,对如何调参,如何训练,如何测试,把这个项目整的很完整,这个项目也被写成了一篇英文文章,也算是自己的第一个正式完成的AI项目了。

这个是个硬件比赛,但我们都不会硬件,所以最后也没有把训练好的模型移植到硬件上,所以比赛也没有获得一个名次。但后来拿这个项目去参加了校电子设计竞赛,弄了个3等奖,然后推到了省里,最终获得个省三,也不负那么久做这个项目吧。

Part22019

然后开始更加系统的去学习了,期间参加了几个课程,很系统的学习了机器学习和深度学习相关知识,也做了很多实际项目,期间最搞笑的就是因为实验室没有GPU条件,所有训练就是我的苹果,把我的苹果跑的贼热,就买了个风扇,下边吹,上边电脑训练,基本都是晚上跑,白天跑的话电脑卡,耽误自己做事情。

后来发现实验室有个老版的工作站,但太老了。最多只能支持1060显卡,于是就买了个1060显卡,给他配置上了。才让我的苹果电脑休息,但因为训练了一年左右,电脑落下了病根,在第二年时候就罢工了,去修的时候就看到里边都是锈,修电脑的都问我,你这电脑都干了啥,造成这样。哈哈

学习深度学习时候,也得来完成导师的任务,那时候主要任务就是看文章,写专利,自己在大一写了7篇专利,现在写专利也还可以,如果有想代写的欢迎交流。

自从有了1060显卡,跑模型就很nice,那时候从网上找了很多模型来跑,非常爽。那时候目标检测很火,就找了yolov1来跑,跑之后又写了第二篇文章。这一阶段主要是学模型,跑模型,模型能训练了,跑通了在去学其原理。这样可以照着代码,调试着代码,那部分负责哪些功能,把一些浅显的东西都学好了。

中间参加了几个比赛,研究生未来飞行器,和数模,幸运的是都取得了成绩。

在之后就学了GAN网络,感觉很神奇,将其中东西都弄懂了一点,也跑了几个模型,原理也稍微弄懂了。

学习过程中当然可能学不进去,这时候最好的办法就是虐自己,怎么虐呢?投实习,实习面试时,你就知道自己啥不会了,也可以为后来自己面试积攒了经验。哈哈。每一次实习,都给把自己虐的不行,也知道了自己还是太菜,回去好好学吧。在实习结束之后会对实习复盘,看哪里不行,就补哪里。

第一次面试(19年初),让写个代码,写不出来,然后回来疯狂自己写代码。

第二次面试(19年5),原理不行,回来之后更加关注原理。

第三次面试(19年7),实战经验,调残经验不足,回来跑模型,更加注重如何调试才能使它提升更好,但毕竟没有实际项目,这一部分一直是个短板。

第四次面试(19年9),这时候实习过了,然后跟导师说,导师说已经打算派我去清华交流了,让我好好准备面试,好好对待。就只能放弃这次实习机会,(这家公司今年上市了,秋招也投了,连面试机会都没给,不知道是我当时爽约了,还是自己能力太菜了)

然后就准备着去清华面试,面试的时候我介绍了我会深度学习,他们很感兴趣,他们组有用GAN网络的,我正好那时候一直在搞GAN,感觉很对我胃口,我的技能也刚好符合他们。

虽然符合但也没有立即答应,毕竟我们没学过全息,所以给了很多全息相关文章和书籍,那一个月疯狂补全息知识,也写了一个很粗糙的文章,发在了CSDN上,或许网上关于全息的很少,还是做全息的本来就少,在发出去之后陆续加我的人也只有几个,但这几个目前也都成为了很好的朋友。

在之后去了清华做实验,刚去感觉压力山大,那种感觉难以形容

幸好有一个一起去的小伙伴,我俩互相鼓励着,去之后都数着啥时候能回家,哈哈,每天倒计时,这可能是我们坚持下去的理由吧。因为我们就去半个月,也是考验我们,或许表现的还行,让我们回家写个综述,那年正好父亲生病住院了,半个月结束之后从北京就直接回家了。

Part32020

我这种人,一到家就放纵自己,什么学习,什么科研,都被抛下了。也赶着朋友结婚,我家又空着好多天,就这样白天忙着收拾家,晚上出去和朋友吃饭。把学习的事情都给抛下了。

但也偶尔实在没事无聊透顶,就去碰碰科研,也慢慢吞吞的把初稿给整完了。

过年之前发给老师了,过年疫情就爆发了,只能憋在家里,这时候把科研也提上日程,第一次写文章,自己文笔又不好,需要改的好多,清华的曹良才老师对我的文章文字,图片,格式等都提出了很多意见,这些意见是之前自己不曾接触过的,所以对自己是非常有帮助的。那时候曹老师也很负责,几乎一周1到2次的腾讯视频会议,每次视频会议之后自己对文章都要改很多,这样改了20版左右吧,初稿才算完成。这里也非常感谢曹老师的耐心指导。

写完综述之后,就需要自己找研究方向了,那时候想把深度学习与全息结合起来,而且还写了相关综述,所以方向很快就找到了,在投期刊的时候,就已经开始做下一个项目了。

其实综述是很好的一个锻炼,写完综述,你对这个领域是有一个比较清晰的认知,然后你想要找到自己的方向也是非常轻松的。

这个项目是一个非常完善的项目,在做项目过程中锻炼了如何调残,如何写网络,改网络,如何训练,如何测试,如何得到loss,准确率曲线,如何评价输入与输出等等,这一个项目给我一个全面的训练,这个项目也是我面试中最值得介绍的一个工作,面试过程中所有问题也都是围绕这个项目在问。

因为是第一次写英文,第一次做这种工作,所以这个项目前前后后,一共持续了5个月,这个过程不管是实验,写作,深度学习理论,自己都得到了一个很大的提高。

在之后就是找工作实习了,但这时候都是7月了,实习很少,找了一个初创公司实习,在实习中,我做的是目标检测,YOLO系列和Faster RCNN系列都接触了。也都实现了,这时候考虑到这个可以与我的科研相结合,也为后续一些想法提供了可能。

实习过程中也在投提前批和正式批,也做着一些准备,比如笔试,面试的准备。过程很苦逼,自己可能也很菜,所以被虐的很惨,这个后续会在单独开一篇来详细写。

实习工作找完之后,又发现一个新科研想法,就是将YOLO和Faster RCNN 应用在我们实验上,于是就开始着手准备科研,但这时候还有面试,还在等面试,一度崩溃中,自己睡眠本来很好,但这一阶段经常失眠,往往躺下之后要1两个小时才能睡着,脑袋里胡思乱想也不知道想些啥。想法也和老师提了,感觉还能做,就慢慢吞吞在做.

Part42021

后来1月份,又去了清华,去的之后半个月工作,就将整个实验,训练都弄好了,文章初稿也写好了,这半个月是我之前半年的工作量。

之后我们家齐齐哈尔那边爆发疫情,一度不让回去,后来政策松动了就赶紧回家。回家之后隔离了三周,一直到过年前才被放出来。也是这三周,将初稿又修改了好几遍,年前把最终初稿给搞定了。

也是这时候将毕业论文写完了,其实在找工作时候,也前前后后写了一些,年后的主要工作也是毕业论文,三月初交初稿,所以就回家这一段时间将毕业论文初稿都完成了。

下半年回来就是修改论文,查重,盲审,答辩

期间也开了公众号,b站,知乎等,目前答辩顺利,毕业旅行也结束了,现在就等毕业证然后去工作了,哈哈。

以上就是我的研究生三年,与君共勉。

吴羽峰

2021/05/31  阅读:66  主题:雁栖湖

作者介绍

吴羽峰