## 写在前面
开始求职至今面的第一家大厂,也是第一场没过半就知道自己铁定凉透的面试。
先上面试总结(aka感受):**从面后复盘来看,字节的一面并不难,主要考察的是候选人的基础能力。算法题难度中等,正常发挥即使没刷过,在引导下也都能做出来;理论考察主要还是针对自己简历项目经历上写的内容,即简历写自己用了什么做了啥,***不离十就问这个点**。
---
## 算法题
- 两树节点的最近公共祖先;
- 最短编辑距离。
**划重点:据面试小哥哥说,他面了多个人用的都是这同一套题**
## 项目/理论考察
90%问和项目相关的知识点(NLP),10%问其他领域/延伸知识点(CV或其他)。**按面试官小哥哥的说法,字节希望的人才是T型的,即不只是在一个方向上研究的够深,同时对相关领域也要有所了解**。
### NLP深度模型
- 说一下Bert预训练阶段的任务、做法(Mask LM和NSP,要说具体怎么做的)
- (接上继续深挖)Bert的Mask LM任务有什么问题(预训练和下游任务不一致;Mask单一word导致专名、实体被切割,尤其在中文领域影响比较到,因此后来出了个全词mask;静态Mask,和一共只mask15%的问题,但按小哥哥说法其实这个影响不大)
- 了解过百度的ERNIE吗(没有)
- 能说说Transformer的attention机制吗(attn = softmax(dot(QK)/8)V,其中8是注意力头参数维度开方)
- 能说说Transformer的多头注意力机制的优点吗(将一个大的参数向量切割成8份,降低总计算量的同时,多头计算后concat有点像CNN的卷积核多通道计算,起到集成的效果,此外第不同的特征维度进行不同的计算,能捕捉到更丰富的信息。我还另外多答了说能并行计算,经纠正发现自己一直以来都理解错了)
- 纠正以下表述中的错误:从矩阵乘法的角度来看,将参数向量切割以计算多头注意力,不是和直接用一个大的向量去乘是等价的吗(被小哥这么一说我一时间感觉好有道理,许久没想出来到底哪错。正解:scale dot-product attention不是线性计算,QK经过softmax后才和V相乘。)
### NLP统计模型
- HMM能说一说吗
- 维特比算法能说一说吗
- 维特比算法和bean search的区别以及二者各自的应用场景
### CV拓展
- CNN原理,卷积乘法和矩阵乘法区别
- 四维图像用三维卷积去扫描,计算总的计算量(我其实连题都没听明白,答案好像是所有维度全乘起来)
### 其他简历项目上写到的点
- 多卡并行计算怎么实现的
- 混合精度的原理,为什么不全用16位浮点数,什么时候用16位什么时候用32位
### 反问环节
借机问了一些自己感兴趣的东西(包括但不限于字节为什么要大力拓展教育领域、NLP在教育的应用场景、字节对于新人的要求以及给定成长期限是多久),面试官小哥哥也分享了字节的人才观、价值观等等。当然最后也明确表示大小周,10-10-5/6,双月KPI是没跑的。
一面进行了将近两个小时,估计是我中途表示了自己感觉已经凉凉,面试官小哥哥出于安慰和鼓励而延长了许久交流时间。在此也特别感谢这位面试官小哥哥!
全部评论
(2) 回帖