最近很多刚入学的学弟学妹给我们留言,听说算法岗现在竞争很激烈,还能转机器学习吗?实习对于找工作重要吗?

看完他们的疑问,三年前的经历在我眼前历历在目。

研一修完毕业学分后,我去创业公司实习了一年。期间,我从爬虫入手,一路摸爬滚打,实现了千万级微博评论自动抓取,在即将成为“爬虫专家”前,受师兄指点转向DL算法。

下面我以「就业」为导向,分享一条亲身经历的学习路线。参考这个方法,在深度学习方向拿到offer进大厂,不是啥难事儿。

一、研一:基础理论学习

研一的主要工作是学理论,打基础。

然鹅学校的课程基本属于科普讲座,很多内容仅靠上课是远远不够的。

这里我把第一年的学习任务细分了4个方向。

1)深度学习理论

基础不牢,地动山摇。没有扎实的基本功,无论是做科研还是做项目,都很容易捉襟见肘。

那怎样学习效率最高呢?

如果你觉得看大头书很枯燥(比如《深度学习》花书),我推荐你直接看吴恩达和李宏毅老师的深度学习视频课。

内容既权威又有趣,看完会让你觉得学习简直是一天中最快乐的事!

这些网课都有配套的编程练习,学一课做一课,养成好习惯,及时查漏不缺。

看完视频,如果想检测一下自己的学习效果,推荐你参考我在知乎的一篇回答,看看第一部分“理论基础”问题,自己能轻松解答多少。

如果你是面试官,你怎么去判断一个面试者的深度学习水平?[1]

例如了解前向传播反向传播,以及链式求导;给一个两层的MLP和简单的二维向量,能推导出 forward propagation,再用 chain rule 推导出 back propagation。

2)确定研究方向

经过前面的理论学习,你应该发现深度学习领域有很多细分方向,例如语音、自然语言处理、视觉、强化学习、纯深度学习理论。

所以第二步我们要明确自己的研究方向,并在之后两年的学习中有所突破。

如果你喜欢语音交互,熟悉C++,可以选择语音识别、语音合成等研究课题;

如果你喜欢研究文本和对话,熟悉Python和爬虫,可以选择自然语言处理方向;

如果你喜欢图片与视频,熟悉Python,对算法落地也很感兴趣,可以选择计算机视觉方向;

至于强化学习、深度学习理论研究等方向,如果不是自身基础非常扎实或有优秀的师兄师姐指导,建议谨慎入坑。

这一步大家不要着急,既要了解不同方向,更要认真了解自己,包括能力、性格、特质。如果对自己研究领域没有热爱和兴趣,到了中后期会非常痛苦,即便再换方向,沉没成本也会很高。

好比让你挑一道菜吃十年,什么才会是你的首选呢?

3)阅读经典论文

选好方向之后,下一步的重点是阅读该领域的经典论文,包括传统方法,以及近期热点。

如果你和我一样主攻自然语言处理方向,那应该对最早期的神经网络语言模型(2003)、静态词向量word2vec(2013)、动态词向量ELMO(2018)、预训练语言模型BERT、RoBerta、GPT(2018-2020),以及近期流行的prompt训练(2021)都有清晰的认识,明白哪些场景适用哪种方法。

然后再往下细分,选择子领域内的论文阅读。

如果研究对话系统,对于常规的分类、匹配算法应该非常熟悉,同时了解基于神经网络的DST算法,不同召回策略等等。

还不知道怎么搜论文的同学,这里教你两种万能搜索方法。

1. 正向检索

在谷歌学术、arxiv、ACL Anthology输入英文关键词,检索相应主题的paper,注意查看发表年份和引用数量。

或者直接查找近年的survey文章,在综述中查看主要的研究分支和related work。

2.反向检索

在谷歌学术的搜索结果页面,点击某一篇论文的“被引用次数”,跳转进入引用了该论文的所有paper。

底层逻辑是引用了A论文的其他论文,基本都和A论文所属的研究领域一致。

这两种检索方法,可以大幅提高查找文献的效率。

4)强化一门主流编程语言

通过以上3步,我们已经具有了相对系统的理论基础。然而“巧妇难为无米之炊”,有idea却无法通过编程实现,还是白搭。

所以接下来,我们要给军火库增添几样重型武器,包括一门主流编程语言(深度学习一般用Python),深度学习框架(推荐Pytorch),服务器调用(Linux指令),IDE使用(Pycharm或Vscode+jupyter lab)等。

有了这些工具,开发深度学习项目会方便很多。

而且从目前大家都在卷的情况看,coding已是基本功,是技术岗通过面试的底线。

一边学习,一边每天在leetcode上刷1~2道算法题,校招找工作会事半功倍。

进入研二,大家可选的路更多了。有的同学继续在实验室从事科研,以做实验发paper为目标,有的同学已经走出校园开始提前实习。

这两种选择没有好坏,关键要适合自己。最怕每天窝在宿舍吃外卖打游戏,毕业只多了张文凭。

二、科研与学术

有些同学是主动从事科研的,例如我身边就有本科发表顶会,硕士毕业已手握6-7篇CCF-A一作的巨佬。

也有导师不放实习,“被迫”滞留实验室的同学。研二时的我就属于这一类,虽然拿到了大厂实习offer,又被劝退重回学校搞科研。

总的来说,做科研四分靠实力,三分靠努力,还有三分天注定。

实力首先指理论扎实,具有敏锐的学术嗅觉,懂得挖掘idea;英语阅读、写作过关,用词地道,知道怎样写paper容易中稿;同时编程强悍,能快速迭代实验,验证结果。

有同学可能某方面薄弱些,可以通过大三大四以及研一研二的努力来弥补。

即便手握七成概率,paper能否中稿还和评审人的口味等“随机因素”相关,有一定运气成分。

所以做科研挺有风险的,如果忙活了2-3年没中论文,硕士生涯几乎等于nothing。

之前听一位985师兄说,他们实验室有50多个深度学习方向的博士,每当夜深人静之际,经常能听到博士宿舍楼传来哭声(科研压力太大,没有达标数量的paper毕不了业)。

甚至还有博士生在实验室做实验,做着做着就哭了。

三、项目与实习

相比之下,在互联网公司找到一份实习要容易很多。

虽然内卷天天有,但只要研一没摸鱼,研二进一家第一第二梯队的大厂一般问题不大。再不济,也能去偏头部的创业公司。

在公司实习,主要是积累项目经验,把之前学习的理论落到实处。同时提前了解公司的管理流程、开发部署环境等等。

实习经历将会是简历的一大亮点,越来越多大厂开始更加重视实习。一段充沛的实习经历(3个月以上)丝毫不逊色于发表一篇顶会论文。

这是我导师部分硕士的毕业去向,有很多学术大佬,他们也会提前去公司实习。有的顺利转正,有的跳槽拿了更好的offer。

如上,走大厂实习转正是拿到校招offer的很好选择。部分大厂(如阿里)很多hc很早就预定给实习生转正了,走常规秋招难度要大很多。

如果想实习导师却不放人,建议提早和导师沟通协调。如果只能留在实验室,赶紧看看有没有靠谱的项目,能提供指导的师兄师姐。

如果导师放养,又不让实习,还不给机器,那兄弟你只能自求多福了!

四、总结

研究生2-3年的时间非常短,如果热爱学术,想要对整个研究领域产生个人影响,建议先出门右拐读个博。

另外,深度学习也没有想象中的那么高大上。大部分业务导向的算法岗,很多时候在和数据分析打交道、跟各个部门对齐需求,真正让你训模型跑实验的比例其实很低。

在工业界,模型是否新颖不是最重要的,通过A/B测试,验证算法能给公司真正带来经济效益才是关键。

为什么还有那么多同学反馈算法面试好难呢?

因为僧多粥少,除了计算机,还有各个专业的同学一起往里卷,门槛自然水涨船高。因而有了“面试造火箭”的说法,公司也正好通过面试刷掉一批想浑水摸鱼的人。

从这个角度看,提早选择开发岗也是一种不错的折中。开发岗需求大,和算法的薪资差距也越来越小。

不管选择什么,认真了解自己,适合自己的才是最好的。

千淘万漉虽辛苦,吹尽狂沙始到金。

无论什么岗位,成长、薪水、福利都是和付出成正比的。只有自己努力,才能在研究生阶段学有所成,收获满意的offer!

- END -

觉得还不错就给我一个小小的鼓励吧!

三年前,我差点成了爬虫大师相关推荐

  1. 三年前,故事这样开始 三年后,故事这样延续---2015年终总结

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴!  含苞待 ...

  2. 三年前找工作的我,希望给正在求职的你一些启发

    ▲点击上方公众号名称,置顶或星标@永伦的小屋 这是永伦的小屋的第 25 期分享. 作者 l 花永伦 来源 l 永伦的小屋(ID: yonglun_house) 转载请联系授权(微信ID: yonglu ...

  3. 这是一个三年前就应该开的博客

    这个博客三年之前就应该开了. 三年前想过要好好学java.好好做安卓.找时间学学iPhone开发,但是三年一样都没做好.技术烂到面试可以随便被问pass掉,安卓三年真正做过的只有2个app,iPhon ...

  4. 三年前,故事这样开始;三年后,故事这样延续---2015年终总结

     含苞待放的蕊,开出尘埃落定的美 人生的路途,自从小编学了计算机之后,喜欢这样来描述,人生就好像是一个开发软件的一个流程,从需求分析到运行维护,需求一次又一次的变更,人生的经历一次又一次在过程中丰富, ...

  5. 第三百三十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—深度优先与广度优先原理...

    第三百三十八节,Python分布式爬虫打造搜索引擎Scrapy精讲-深度优先与广度优先原理 网站树形结构 深度优先 是从左到右深度进行爬取的,以深度为准则从左到右的执行(递归方式实现)Scrapy默认 ...

  6. Nature撤稿!三年前微软在量子计算上的巨大胜利终究是个错误

    文章来源:wired 多年来,为了构建一台能够实际运行的量子计算机,微软一直押注一种称为马约拉纳费米子的量子粒子.三年前,由微软资助的研究团队在<自然>杂志发表的论文称,证明这种粒子确实存 ...

  7. 比特币前核心开发者Mike Hearn三年前的预测一一应验

    "多年以后,奥雷连诺上校站在行刑队面前,准会想起父亲带他去参观冰块的那个遥远的下午." 时间过的很快,对于暴涨暴跌的比特币来说更是如此,从最初的一文不值到一万八千美元一枚,比特币仅 ...

  8. 谷歌三驾马车将成历史,创始人退位,皮查伊兼任母公司CEO

    曾经发誓要共同战斗到至少2024年的谷歌"三驾马车"都退出了领导者角色. 美国当地时间周二,谷歌联合创始人拉里 · 佩奇(Larry Page)和谢尔盖 · 布林(Sergey B ...

  9. 三年前赚走马云665亿的外卖小哥,现在怎么样了?

    作者:电商君 来源:电商报Pro ID:kandianshang 中国最牛外卖小哥, 一单外卖赚了马云665亿! 2018年4月,一个年仅33岁的年轻人以665亿的价格,将自己读书时创办的一个品牌卖给 ...

  10. wegame登录cf显示服务器人数已满,电一再现万人排队进游戏的盛况?老玩家:感觉回到了三年前...

    原标题:电一再现万人排队进游戏的盛况?老玩家:感觉回到了三年前 在昨天,曾经一起在学校打比赛的战队队员约我玩英雄联盟.我再三安排时间后,我们在晚上终于见面.不同于上年大家五人一起开黑练技术打比赛的情景 ...

最新文章

  1. 搜百度 php教程,jquery php 百度搜索框智能提示效果_PHP教程
  2. VDI序曲二 RemotoAPP部署
  3. c语言 office 二级成绩查询,【2019年9月辽宁计算机二级考试成绩查询入口】- 环球网校...
  4. Anaconda下安装 TensorFlow 和 keras 以及连接pycharm
  5. java 短地址_URL短地址压缩算法 微博短地址原理解析(再转与Java实现) | 学步园
  6. QCustomplot使用分享(一) 能做什么事
  7. vm安装win7 office2013
  8. 哈希列表、哈希链、哈希树
  9. VMware Esxi7.0.3f集成最新网卡-v2(2022年7月版)
  10. 手提无法使用Ghost方法安装win7系统,出现一直显示DOS工具箱和硬盘无效情况的解决
  11. R语言-两总体均值对比
  12. TFT-LCD与FSMC控制器
  13. 云寻觅中文分词 (Yunxunmi Chinese Word Segmentation) ,词汇440万,10万字文章分词并计算频率不超过1秒
  14. Zabbix 4.2 支持 Prometheus 数据收集
  15. Docker 之WARNING: IPv4 forwarding is disabled. Networking will not work. 解决办法
  16. 图解angr中两种CFG的区别
  17. 网友微博晒父母爱情 老爸每天给妈妈写情书
  18. Linux开发工具3
  19. 想成为月薪过万的软件测试工程师?你得了解这些测试思想和工作方法~
  20. 【对讲机的那点事】“驴途”不是“囧途”,安全出游请务必配备上对讲机!

热门文章

  1. InstallShield Premier,复杂的多服务器应用程序
  2. VUE v-modle 实现 |||| uniapp 父子组件实现 v-modle
  3. 永久免费建站-个人博客开发
  4. NVIDIA Jetson TK1学习与开发——手动刷机
  5. STM32F7以太网HAL库源文件(stm32f7xx_hal_eth.c)笔记
  6. Unite 2018 | 《崩坏3》:在Unity中实现高品质的卡通渲染(上)
  7. vue项目 微信支付 和 支付宝支付
  8. 第二章 试验资料的整理与特征数的计算
  9. 4135: [FJOI2015]世界树
  10. 一句话讲清种子轮、天使轮、ABC轮的区别