2021自然语言处理NLP秋招经历复盘分享

0 相逢即是缘

笔者学历背景本硕211非计算机专业,最后收获一波NLP算法岗的offer。讲道理,我有赌的成分。

当时刚开始复习秋招,在语雀里创建了个知识库用于记录笔记,作为开章,总要给自己打打气,但是当时不知道怎么就写下了下面这个题目,现在看看当时是把自己的路都堵死,准备背水一战了吧。

2021自然语言处理NLP秋招经历复盘分享_第1张图片

之前实习组的老大有一句话说得好,“相逢即是缘”,好像一句话就把人的命运解释得明明白白。很多时候努力了没有得到好的结果,可能就是缘分不到,生活如此,找工作亦然。

希望本文能给“有缘人”一些帮助。

 

1 准备什么

1.1 复习基础三件套

现在但凡面试都要准备一个经历精简而对口的简历、刷到耳熟蓝翔的LeetCode题以及倒背如流的自我介绍。

这类准备的东西太多了,不是本文所侧重的,可以去各路大佬的分享,这里我就不做赘述了。

反正,像是一种是态度,剑指offer至少得来一遍吧,面试中常考的,大厂小厂都得考笔试,感觉可以代替面试的自我介绍环节。“同学你好,做道题吧”,就够了。

return "可以继续聊聊" if AC else "已放入人才库"

1.2 面试常考层面复盘

       首先是常用算法和模型理解层面。

算方法上,基本的排序算法时间空间复杂度、搜索、数据结构、操作系统都会被考察。宇宙条特别注重这个,一开始初生牛犊啥也不怕,第一个面试直接就敢去面字节提前批,结果被按在地上摩擦。现在还记得,当时面试官跟我说:“恕我直言,问了这么多你就说对了一个,就这样吧”,恨不得找个地缝钻进去。

当时问得都是很基础的计算机基础知识,但是我这方面就是薄弱,都得补。现在想想,果然我这个小菜鸡是在面试的碾压中成长的啊。

提前批“轻轻松松”进入字节的人才库

模型方面,只要你简历上写的模型,基本都会被问到,记得某厂面试官说:“害,时间还有,那就你简历上有啥我就都问一遍吧”。

基本BERT、GPT等预训练模型,是NLP工程师都在用的,百分之一万会考到,建议重新看原文和源码,李宏毅教授的视频也看个几遍,深入地理解下来,整个人都升华了。常考的问法如下:

  1. 直接推Transformer结构;
    1. BERT和GPT的区别;
    2. embedding的输入的组成;
  2. 写出self-attention推导过程;
  3. Transformer为什么比带Attention的LSTM好啊?

当然经典的深度学习模型也会考察一下:LSTM(接softmax、crf的区别,为什么CRF好啊)、TextCNN啥的都得会吧,几个loss函数、激活函数你都熟悉了吗?

这种模型理解的博客一抓一大把,系统、细致的复习就好。我把这部分和刷LeetCode题的过程统称为“背诵默写”。就是NLP面试的新八股,这些都很基础,证明我们的态度到了。和面试官交流的时候,有一个面试官跟我说,对校招生来看算法考察在他那可能只占三成。可以说,把常用的算法都熟悉理解透彻了,你就稳了最简单的“30分”。

第二,项目内容层面。

现在面试讲究一个千人千面,没有什么固定的问题,只要你简历上写的项目,面试官感兴趣都会进行深入的考察,提前批面阿里的时候,围绕我的两篇会议水文唠了一个小时,我都惊了,原来我做的东西这么有意义啊。面试官会把我做的东西结合实际场景给出一道题,考察你是不是对这个方向有深入的思考,以及处理实际任务时候的能力。

我有一篇会议是做人名实体抽取的研究,面试官就问我,诶你这个人名抽取很有意思啊,我现在要把这个人名抽取加入到对话中,那我问你,我给模型输入一句“我想听一首刘德华”(有首歌叫《刘德华》),模型会给我把刘德华当人名抽取出来吗?如果抽出来,是错误的对吧,如何避免这种问题的发生呢?

准备项目内容层面,是你对自己项目的全方位审视的过程,多问问自己如何落地,他的意义在哪?(就如面试官常问:你的Contribution是什么?)如果有论文,这一部分会被着重提问。感觉和这样的工程师在一起干活是非常有趣的事情,可惜后来因为二面没过凉凉。

2021自然语言处理NLP秋招经历复盘分享_第2张图片 面试提前批时来自阿里巴巴的“由衷赞赏”

 

第三,工程方面考察。

有个已经在职的朋友跟我说,他很反对“工程能力”这个词,这个词一般都出现在高管面中。“工程能力”听起来很高大上,其实所谓的工程能力,就是干活能力,你的工程能力越强, 企业培养你的培训成本就越低,企业自然愿意要一些。不过不要被这个能力忽悠了,我们是NLP工程师,铁定核心能力还是NLP领域的知识,不然直接找研发工程师不就好了。

如果你有实操经验,这里会问问关于模型上线的一些问题,比如模型加速,高并发之类的。从宏观上考察你对整个工程的认知。看,说起来就是这么虚无缥缈,所以这里不要慌,实习一趟全都了解了。

如果有实习经历的话,工程应用层面应该问题不大。

2 最后说点废话

不得不说,今年的疫情带给我的影响还是很大的。一开始回家的两个月还能学习一会,但是越往后越学不动了。尤其在五月份得知学校不开学,更是开始放肆,放飞自我,Steam成了除外卖外最大支出,连续两个月打游戏到天明鸡叫,可能是把这几年欠下的游戏时长都补回来了。直到有一天在中午醒来,怔怔地躺着看着窗外的午后阳光,有点恍惚,我这是在干嘛呢?不念了?遂放下游戏,立地准备复习。

在家gap八个半月,找工作从春招到提前批再到秋招,从信心满满到被按在地上摩擦,到刷LeetCode题复习重拾信心,再到和面试官谈笑风生,最后收到几个offer,就像是一场梦。Offer来的时候我是很平静的(直到知道薪资的时候开始花枝乱颤,淦,太丢人了,还是没见过世面啊)。把这个过程记录在这里,让多年以后的我能回过头来好好“嘲笑嘲笑”现在这个拿个秋招offer就乐得够呛的自己。

过往一切,皆为序章。现在什么行业都讲究一个持续学习,不就是学习吗?扶我起来,我还能学。

该准备毕业论文了,就写这么多。祝有缘人皆有善果。


致谢

感谢我的导师和师娘,一直鼓励我好好复习。同时感谢陪伴我、鼓励我的一起秋招的战友——jio书,我们实验室这届学硕找工作的就我们两个,如果没和你组队,我铁定坚持不了这么久,期待早日收到你上岸的消息,下一个年薪xx万就是你辣!

附录:常见名词解释

提前批:互联网大厂抢大佬大战提前打响,美其名曰提前批,有大量的实习和转正机会。

OC: offer call。举例:“小红面阿里oc了”,就是说小红收到了阿里的offer的意思。

HC:Headcount。举例:“这个部门今年没有HC了”,就是说这个部门只有实习岗,不能转正入职。

AC : Accepted,笔试代码能测试通过。

你可能感兴趣的:(研发记录,面试,人工智能,NLP)