硕一 nlp算法社招面经

为了准备社招刷了leetcode200-300题左右,侧重刷高频hard题,注重最优解法。面的公司地点均在上海,总共5家。

一、字节跳动-抖音 nlp算法工程师
一面(1h):
1、自我介绍+聊项目经历
2、算法题:手撕multi-head self-attention,使用tensorflow或torch框架(尽量按google源码的思路);
3、开方式问题:介绍deberta中的两个优化点,disentangled attention和enhanced mask decoder;
4、开方式问题:说出pre-norm和post-norm的区别(答案在苏剑林的《科学空间》);
5、基础问题:layer normalization和batch normalization的区别。

二面(1h):
1、自我介绍+聊项目经历
2、算法题:手撕transformer decoder部分的inference过程,重点看beam search的实现,使用tensorflow或torch框架(尽量按google源码的思路);
3、开方式问题:如何解决含有象征、隐喻等修辞手法的文本分类问题。

三面(1h):
1、自我介绍+聊项目经历
2、基础问题:介绍bert的原理、结构,以及bert中哪些结构(layer或block)的训练参数比较多;
3、基础问题:attention结构的神经网络与递归神经网络相比有什么优点(还问了一些比较基础的问题,貌似有点忘了);
4、业务问题:如何用一些业务指标衡量模型的效果;
5、算法题:(共三个小问题)
(1)针对某个表达式如5+6*4(只含有加减乘除),设计并使用一种数据结构能够对表达式进行求值(使用二叉树即可);
(2)在(1)的基础上,倘若表达式中出现未知变量,如a+a*b,改进(1)中的结果使其在知道未知变量具体赋值的时候能够返回表达式的结果(实现类似tensorflow中placeholder的机制);
(3)在(2)的基础上,倘若已知loss function返回的结果,实现一下梯度的反向传播。

hr面(0.5h):
自我介绍---》为什么想换工作---》薪资期望---》其他常规流程

二、拼多多-智能客服 nlp算法工程师
一面(1h):
1、自我介绍+聊项目经历
2、基础问题:又问了一遍layer normalization和batch normalization的区别;
3、基础问题:bert模型采用mask的具体策略,以及为什么要这么设计;
4、开放式问题:常用的文本数据增强方法(全面完整的回答可以从语种层面,letter、subword、word和语序层面,利用mlm过程、利用wordnet近义词替代等角度);
5、开放式问题:模型蒸馏的具体实现过程,KL散度和交叉熵的联系与区别;
6、算法题:给定一个图的节点集合和边集合,找出图中一个有多少个连通子图(并查集或bfs)

二面(1h):
1、自我介绍+聊项目经历
2、开放式问题:写出中文bert-base预训练模型所有的参数量,细分到每一个结构的参数量;
3、基础问题:attention结构中Q、K、V的含义及作用;
4、基础问题:bert结构中embedding部分具体是怎么样的(word embedding+position embedding+segment embedding);
5、基础问题:绝对位置和相对位置的区别(最好举例作答);
6、开放式问题:position embedding的实现方式有哪两种(functional position embedding,如transformer和华为的NEZHA;parametric position embedding,如bert);
7、基础问题:layer normalization中的两个可学习参数的作用;
8、算题题:已知二叉树的前序和中序遍历的前提下重构二叉树。

三面(0.5h):
1、自我介绍+聊项目经历
2、场景题:基于项目中聊到的多轮对话改写模型,是否能够用另一种不同的方法实现;
3、场景题:在真实的客诉场景中,客户可能不会一次性把话说完整,比如某客户会先说“hi”,然后说“想问一下”,最后说“如果你们这边的产品有问题该怎么办”。如何设计客服机器人解决上述的问题(停顿检测);
4、算法题:将两个升序的数组合并,合并后的数组保持升序,设计时间复杂度尽可能低的算法。

hr面(0.5h)
自我介绍---》为什么想换工作---》薪资期望---》其他常规流程

三、bilibili 人工智能与大数据平台 nlp算法工程师
一面(1h):
1、自我介绍+聊项目经历
2、基础问题:再问了一遍layer normalization和batch normalization的区别;
3、基础问题:transformer网络中一共有多少种不同的attention(3种);
4、开放式问题:bert及其变体中常用的mask方式及特点(dynamic mask,whole word mask,phrase mask, entity mask);
5、开放式问题:中文场景的nlu任务和英文场景有什么不同;
6、开放式问题:模型蒸馏的具体实现过程;
7、算法题:数组中连续子数组和的最大值。

二面(1h):
1、自我介绍+聊项目经历;
2、业务问题:如何用一些业务指标衡量模型的效果,如何使用一些非模型的方法解决内容的识别问题;
3、开放式问题:介绍一下是如何做语义相似度的(simcse,simbert,sentence bert等)
4、开放式问题:是否了解triple loss,以及它的功能是什么;
5、算题题:实现一个函数能够计算softmax和交叉熵;
6、基础问题:softmax函数在梯度反向传播过程中会出现梯度的钝化,实际过程中该如何解决。

三面(0.5h):
1、自我介绍+聊项目经历
2、算法题:判断链表是否有环,并输出环的入口节点;
3、场景题:平时是否使用过b站,如何看待b站的弹幕文化。

hr面(0.5h):
自我介绍---》为什么想换工作---》薪资期望---》其他常规流程
四、太保金科 研究院 nlp算法研究员
一面(0.5h):
1、自我介绍+了解哪些nlp的前沿研究;
2、场景题:如何用gpt-3的prompt机制挖掘以新冠疫情为主题的稀疏文本以及如何在保险场景实现zero-shot;
3、场景题:在文本分类任务中,如果打乱文本中字或词的顺序,是否会对分类结果产生影响;
4、算法题:给定一个长度为n的初始数组nums[0, 1, 2, ..., n-1],求出i != nums[i]对任意i都成立的排列组合总数(动态规划)。

二面(1h):
1、自我介绍+聊项目经历;
2、场景题:如何在一个3GB内存空间中部署一个深度学习模型;
3、开放式问题:说一下目前主流或前沿的nlp预训练模型(百度ERNIE3.0,华为NEZHA,openAI gpt-3,nvidia MegatronLM,macrosoft T5)及相关的加速方法(混合精度训练、Zero Redundancy Optimizer);
4、开放式问题:简单聊一下ERNIE1.0到3.0发展历程和gpt-1到gpt-3的发展历程;
5、开放式问题:说一下对多任务训练(multi task learning)和多领域训练(multi domain learning)的理解,最好举一个例子;

三面(0.5h):
1、笔试题:给定训练集和测试集,要求在24h内自己设计神经网络。要求在epoch=1和learning_rate=0.03的限制下,测试集评估的准召达到95%以上;
2、智力题:有5个相邻的山洞(一字排开),山洞里有一只兔子,兔子每天白天会移动到相邻的洞中,你是一个猎人,每天晚上可以查看一个洞。设计一个可以找到兔子的策略。

hr面(0.5h):
自我介绍---》为什么想换工作---》薪资期望---》其他常规流程

五、上海人工智能实验室 大规模预训练算法研究员
一面(1h):
1、自我介绍;
2、开放式问题:说一下目前主流或前沿的预训练模型,包括nlp(百度ERNIE3.0,华为NEZHA,openAI gpt-3,nvidia MegatronLM,macrosoft T5和cv(我只知道CLIP)领域;
3、基础问题:说一下数据并行和模型并行的主要区别;
4、基础问题:混合精度训练的原理,有哪些优缺点,针对这些优缺点是如何改进的;
5、开放式问题:说一下DeepSpeed有哪些方面的突破;
6、算法题:N皇后;
7、算法题:用递归和迭代两种方式实现二叉树的层次遍历;
8、算法题:袋子中有5个白球和8个红球,现规定摸球规则:(1)第一次摸球无论红白,均拿出;(2)倘若这一次摸到球的颜色与上一次的相同,则将这一次摸到的球拿出;若不同,则将这一次摸到的球放回。求最后一个球是白球的概率(动态规划)。

这个岗位主要偏开发而非算法,和我自己的条件不匹配,一面后就没有后续了。
#自然语言处理##面经##Python##社招#
全部评论
为什么研一是社招呀,不是实习么😂
2 回复 分享
发布于 2022-06-01 23:25
大佬这很强啊,全都答上来了?
2 回复 分享
发布于 2022-06-03 12:21
这问题直接给我问懵了
1 回复 分享
发布于 2022-09-14 11:23 北京
大佬,“手撕transformer decoder部分的inference过程,重点看beam search的实现”,直接写beam search是不是有点太长了,感觉好难,然后这块如果要看的话,是直接看google transformer的tensorflow源码吗?
1 回复 分享
发布于 2023-05-03 21:49 福建
大佬这绝对是高手
点赞 回复 分享
发布于 2022-06-03 12:30
大佬,请问字节三面的算法题是力扣上哪一道原题,你是用什么方法解决的呢~
点赞 回复 分享
发布于 2022-09-11 02:34 北京
大佬,请问下上海人工智能实验室,最后一道智力题,您是如何求解的呢,可否说下大致的思路,非常感谢。
点赞 回复 分享
发布于 2022-09-12 19:45 北京

相关推荐

自我介绍(3min左右)看你最近的工作是和bootloader相关的,汽车后视镜相关的,从7.8到3.6s的改进是比较显著的,那你有没有比较以前的不同的机制主要耗时在哪几个地方我看你一直在写x86平台的操作系统,基本是从基础到操作系统的构建工作,这中间持续开发的过程中有没有不太好理解,或者阻塞的事情呢这个启动加载器,比如从bios启动那部分是怎么完成的,或者说bootloader部分你做了什么呢,平台是什么呢(最开始我是在bochs上完成的)你现在是在x86下完成的,有没有考虑过arm呢,因为armv8也是64位,有没有想过去做二者的比较呢(过程中提到了看过电源管理的源码),你看的电源管理是在arm下还是x86下内核里的中断处理会用到栈空间,操作系统的内核中的栈空间是由谁提供的。设想一种场景,应用层的一个进程在跑,比如一个网络程序,此时一个中断来了,此时中断会打断进程的执行,这个中断也需要一个栈地址空间,当前CPU的栈是应用层这个进程的,怎么从应用层程序的栈到中断的栈,这个栈地址空间是哪里来的,谁给分配的呢上半部和下半部如何完成任务或者说中断事件的衔接的这个schedule是谁来驱动的呢,比如一个ISR进来,退出了,什么时机来驱动tasklet的schedule?这个任务什么时候会被拿出来执行呢?(最开始可能没答到点上)你刚刚说的是进程调度的机制,它同样有个调度时机,那具体是什么时候呢,比如说中断退出还是定时器,你用tasklet,那么这个tasklet是什么时候调度呢?整个系统有没有涉及到多处理器,SMP的同步机制呢上下文分为哪几种呢?进程上下文在你这里什么样的叫进程上下文。比如说一个应用层进程被打断进入内核态,管它叫进程上下文,这个进程上下文也有自己的业务要做,那么它和中断上下文之间是如何进行数据的同步呢?你用的什么样的互斥锁呢?CPU的SMP的同步这些有没有去了解平时你还有哪些做的项目可以介绍吗,你比较擅长的项目(我介绍了一个光追算法复现的,因为我关于内核能聊的好项目全被问完了,想着这个光追的项目可能能和相机系统的ISP会比较有关联)有没有了解过实时操作系统的一些特性做示波器项目的时候有没有去了解示波器的原理,关键指标这些(这个项目我主要做的前端,确实没有很深入)linux内核的裁剪参与度如何,你主要负责裁剪了哪些?裁剪过程中有没有关注过设备树的工作原理?假如让你设计一个设备树这样的功能,你会想怎么做?dts按你的理解来说,主要是为了解决什么样的问题呢?比如你要写一个驱动,那么设备树和device,driver是什么样的关系呢?你有没有自己想做的,更喜欢做哪方面的事情你们做电子后视镜,也会接触摄像头数据的处理,到整个判断的框架,这部分有没有去挖一下呢?比如摄像头的整个pipeline,视屏流,框架。反问:如果有幸入职,我工作上需要准备一些什么方面的知识呢是基于哪个系统呢,是rtos,linux还是安卓呢针对刚刚我的面试,您觉得对于贵公司有哪些方面还需要继续加强呢后面几轮(没说)营销急缺!不限学校,不限学历,抓紧投递!注意岗位特点:专业不限岗位注意多介绍自己个人经验合综合素质,多围绕实习和岗位工作内容来展开,岗位写的xx专业优先建议把项目和大赛经验发在重点介绍 米哈游影石全景相机全球占有NO.1!全球前沿的智能影像科技公司!影石insta36025届校招启动啦!️岗位横跨5大岗位:技术、美术与设计、产品、综合、业务工作地点:深圳、上海、珠海、东莞、香港、洛杉矶、东京、柏林【待遇】有竞争力的薪资、司龄假、节日及周年礼物;优秀员工奖保时捷特斯拉等新车!投递链接:https://arashivision.jobs.feishu.cn/s/i6HUfca1【内推码】E45P9HR(选择校园大使渠道)投递的uu留言下姓名缩写和岗位,我会尽力跟进~(LSQ+数据策划)
影石Insta360
|
校招
|
超多精选岗位
点赞 评论 收藏
分享
评论
40
384
分享
牛客网
牛客企业服务