作者 | Codle
整理 | NewBeeNLP
面试锦囊之面经分享系列,持续更新中
赶紧后台回复"面试"加入讨论组交流吧
写在前面
本人情况:双非本末流985研二,爱奇艺NLP日常实习经历,无论文,投的都是 NLP 算法岗。
目前到手:微软、腾讯,应该是选微软了吧
阿里达摩院(挂)
一面(45分钟)
上来面试官介绍他们组情况,问我有什么想问的?我有点懵逼,这不是一般最后的环节吗。
问研究生期间的研究方向;
研究内容有提到 DSSM,询问是否知道现在对 DSSM 的改进模型,回答不知,现在更多做的生成模型,因此问题转到生成模型;
询问对生成模型的了解,发展情况,询问项目中的难点,回答解码策略,谈到了 Beam Search 和 Random Sample 策略。
CNN 模型中池化层的作用,Max Pooling 是如何反向传递梯度的。
机器学习中正则化做什么的?约束模型参数,防止过拟合。
正则化有 L1 和 L2 正则化,区别是什么?扯了一下解空间什么的,这一部分参看《百面机器学习》中 【L1 正则化与稀疏性】部分的内容,基本就是我遇到的问题了,我没回答上。
问深度学习,Transformer 模型架构说一下?按照图结构 balabala 说下。
Dropout 有什么作用?类似于 Bagging 。在 Transformer 模型中 dropout 主要用在哪里?dropout 在每个子层之间,设置为 0.1。看过源码吗?看过源码,看的哈佛实现的那一版本。(面试官应该也看过这个版本,说写的很好)
Transformer 用的 Layer Normalize 还是 Batch Normalize?Layer,有什么区别?...
传统机器学习会哪些?决策树和 GBDT 区别说下。
Sigmoid 和 ReLU 区别,ReLU 解决了什么问题。
怎么学统计机器学习的?看视频...
Python、C++、Java 哪个用的多一点?值传递和引用传递区别。
Python 垃圾回收了解吗?用过,细节不清楚。
进程和线程区别
Linux 多个进程如何通信的?socket 和管道
贪心和 DP 区别?
DP 的一般做法流程?
开放问题,海量商家和海量语料,语料不平衡,语料对商家 group by 后按照时间排序,怎么解决。先扯了下哈希分桶,不平衡用归并排序。
结束,他觉得还 OK,问了下有啥改进的?他说问机器学习这部分可以多看看,因为一方面部门有发论文要求,另一部分可以看出一个人的求知欲。。。
二面(80 分钟)
面试官是个学术大佬,全程项目细节+前沿模型理论+项目落地实践,谈的多的主要包括有:
DSSM 语义匹配模型及其变种
预训练模型:Transformer、BERT、UniLM 等等模型细节,区别,模型中的 Attention 使用、Mask 使用