时间过的好快啊,已经研三了,希望疫情快快好起来,别吞噬我寒假后最后的校园时光(先战术感慨一下哈哈哈)
这次呢,不想聊技术,唠唠嗑吧,就聊聊双非计算机硕该怎么学习才能进大厂呢,我以自己的学习历程作为base,聊聊这三年的研究生生活
文章目录
- 1. 写在前面
- 1.1 我的情况
- 1.2 文章初衷
- 1.3 北京实习的感悟
- 2. 双非如何准备算法岗位
- 2.1 认清自己的情况
- 2.2 准备阶段
- 2.2.1 时间建议
- 2.2.2 机器学习基础
- 2.2.3 深度学习基础
- 2.2.4 数学基础
- 2.2.5 领域知识
- 2.2.6 项目准备
- 2.2.7 简历
- 2.2.8 什么样的结果表示你可以了
- 3. 写在后面
1. 写在前面
其实离我半年实习时光结束已经有一段时间了,今天想起这件事了,就来写写吧。
1.1 我的情况
我从研二的下学期,也就是今年3月份开始实习,第一段实习经历在好未来,担任算法工程师,第二段实习经历在京东,担任架构师,两份工作都是在做计算广告商业化相关工作,10月份结束实习时光,目前是研三,已签下京东(把百度拒了)。
1.2 文章初衷
写给那些以后想在大厂从事算法工作的双非的学弟学妹(双一流不喜勿喷)
1.3 北京实习的感悟
准备实习阶段。研二上学期在学校的时候已经开始准备了,那时候已经确立了目标,每天除了枯燥的学习,其实也有一群非常可爱,努力的实验室小伙伴和我的朋友们,大家一起努力,感觉生活也不是那么无聊。寒假玩了几天后,就开始进入学习状态了,每天除了准备实习的事情,同时也要兼顾科研方面的事情(毕竟不能辜负Nice的老师),所以差不多每天都要学到晚上10~11点。然后准备差不多了,就开始面试了,一直持续到3月初,拿到好未来实习offer。这一段日子真是难熬啊,充斥着各种迷茫。
实习阶段。带着挺复杂的心情一个人来到了北京。
- 在好未来期间,我遇到了非常好的leader,带着我一步一步学,我也非常努力,leader隔三差五找我聊天,说说我最近存在什么问题,给出我很中肯的建议,看得出来leader对我很上心。这段实习使我清楚的认识到了工业界都在做什么,怎么做,同时自己的能力提升的也是非常快。我也非常感谢我在好未来的同事,跟他们聊天,我渐渐的对未来有了一些想法(因为跟他们聊天基本都是生活上的一些琐事,和对未来的一些规划:“以后我要…”),工作上,我也经常请教他们算法相关的问题,都非常耐心的指导我,再次感谢。
- 大概8初,我拿到了京东的校招offer,准备提前过去实习,好未来leader找我聊了一下午,语气间明白她在试图挽留我,但是当时我想的是想去另一个厂子看看,多经历一些,于是聊完我就提出了离职。在京东期间,我同时也非常幸运遇到了非常Nice的leader和同事。在此期间,我也渐渐熟悉了京东的业务,明白这就是我喜欢的方向,幸运的我也经历了一次团建,感觉氛围太棒了。所以无论从业务还是同事,我都非常喜欢,所以我选择了京东。
校招阶段。我走的是提前批,没有参加正常的秋招,但这里提一个建议就是:能走提前批就走提前批(6月份开始),正式批太卷了!
进入正题吧!Lets go!
2. 双非如何准备算法岗位
2.1 认清自己的情况
第一点,认清自己是双非的现实,你想进大厂卷算法,你的竞争对手是各种清北、C9的高校硕士,你得想想你凭什么能把这些高校选手比下去?
第二点,明确自己要搞什么方向,是NLP、搜索、CV还是计算广告等等,这一点很重要,可以去了解了解市场。
2.2 准备阶段
2.2.1 时间建议
时间上建议研二下学期出去实习(三年制硕士,二年半往前推)。这样你就可以在秋招前积累一段实习经历。不错的实习经历可以补缺你学校上的缺陷,是冲击大厂的必备条件,如果没有这段经历,双非想进大厂,概率很小,可以忽略
2.2.2 机器学习基础
推荐书籍:《统计学方法,李航》
推荐视频:吴恩达机器学习
- 1、模型基础,像基本的模型LR、SVM、决策树、朴素贝叶斯等基本的模型,吃透它。所谓吃透模型,除了数学公式外,拿到一个模型,你要知道这个模型是干什么的,它和其他重要模型有什么区别,为什么选择它,它的缺点是什么(例如对数据比较敏感等),有没有什么更好的方法,都是你要思考的问题,这也是面试官经常问的东西。
- 2、优化基础,像过拟合问题,样本不平衡问题,正则化方法,偏方差困境等等
- 3、常用机器学习评价指标,像混淆矩阵,AUC,准确率,精确度等等吃透它,其中AUC可是有学问的,需要深入学习,书本上的远远不够,建议参考我的博客:AUC学习
- 编程,python+sklearn+数据科学库(numpy,matplotlib,pandas等等)
做好笔记,做好笔记,做好笔记
2.2.3 深度学习基础
推荐视频:吴恩达深度学习
- 模型基础,像CNN、RNN、LSTM、GRU等这些最基本的东西,吃透
- 优化基础,像如何解决深度学习中的过拟合问题,正则化问题,梯度爆炸/消失,各种优化器的原理(RMSpro,Adam等),各种激活函数对比,各种损失函数对比,优缺点等等等
- 编程,tensorflow/pytorch + python/C++
2.2.4 数学基础
概率论、线性代数、高等数学,够了(多多益善)
2.2.5 领域知识
- 模型基础,举个例子,在推荐系统领域,基本模型包括:XGBoost、FM(因子分解机)、FFM(field-FM),DeepFFM,Deep&Cross,Wide&Deep,DIN(深度兴趣网络)。所以无论你是做NLP还是CV,都要知道这一条模型发展路线,然后进行Paper Reading,踏踏实实做下来。
- 评价指标,各领域都有自己独特的评价指标,例如推荐系统中的CTR、CVR等,计算广告中的ROI等,这些都可以通过读论文来了解
2.2.6 项目准备
从Github上找一些项目,或者自己买点靠谱的课程跟进一个项目,或者打一个含金量比较高的比赛,例如:Kaggle、天池等
项目一定要和你领域相关,即和你面试的岗位相关,例如你打了个比赛,预测CTR,这个就比较适合推荐系统算法工程师,再比如你打了个图像识别比赛,这个就比较适合CV算法工程师
2.2.7 简历
上面这些都做完了,就要好好准备准备自己的简历了,适当的优化优化,这也是门学问,可以先做一般demo出来,去面面小厂,看看自己简历哪里出了问题,不断去优化,然后再去面一些中厂
2.2.8 什么样的结果表示你可以了
拿到中厂的offer,或者更好
3. 写在后面
感谢一起奋斗的小伙伴,以后也要加油,好好生活。
ps:今天晚上点了个新疆炒米粉微辣,给我辣死了,不过味道很不错哈哈哈哈