首页 > 秋招小总结
头像
猿猿滚滚过大年
编辑于 2020-09-20 14:22
+ 关注

秋招小总结

本人985本硕,一段推荐算法实习经历,外带一些比赛经历(天池竞赛等),求职意向推荐算法工程师,这里小小的总结一下目前为止秋招的面试
【vivo】hr面挂
投的提前批,六月份就面试了,当了炮灰
一面:广告推荐算法(互联网方向)
可能因为笔试成绩不好,上来问栈的特性
写归并排序 没写出来
recall@50是什么
deepwalk 原理
ytbdnn的样本是什么,为什么把视频向量放入fassi库
参数学习方法 随机梯度下降
hr面:
1.自我介绍 2.讲一下实习经历,实习了多久,离职的原因是什么(随口问)
3.实习中有没有具体的业务 4.实习中比较沮丧的事
5.实习中比较有成就感的事 6.实习中如果跟同事有冲突,怎么解决
7.本科不是计算机,后来读了计算机,是自己的选择吗? 8.自己的职业规划
9.期望工作城市 10.期望薪资
本来想婉转回答,结果被追问自己的期望薪资,说了25-30w

【shopee】一面挂
shopee算是秋招面的比较早的一家了,有点吃亏,很多问题回答的不好,一面凉凉。通过这次面试让我知道了很多短板,后面去补充了很多知识
面试之前听说一面只有算法题,项目看都没看结果面试问了一堆项目,真实的哭了
1.天池竞赛为什么用矩阵分解做召回,有没有了解其他召回方法,有没有数据清洗
面试官提到矩阵分解会偏向交互多的物品和用户,因此要去掉交互多的物品和用户,对他们用别的召回方式。
2.实习中用到了KNN,详细介绍一下KNN原理
好像说的不好,我主要在介绍KNN的大概流程,面试官追问KNN的关键点一是距离的计算,有哪些距离,欧式和余弦,二者的区别和联系,二是k值的选择,三是时间复杂度,我说了是用类似分层的形式。
3.YoutubeDNN中怎么计算用户向量和视频向量的,loss function怎么设计。
4.数据结构题
a.100亿的100长度的String字符串,按照出现次数最多统计topK个字符串
一个String最多占100B,100亿个的数据量就是1000GB,可能涉及的String个数较多,因此采用分治+hashmap+最小堆。先用hash算法将字符串分到1000个小文件,每个文件1GB大小,且相同的字符串保证分到同一个文件中,在每个子文件进行hashmap计数,统计出现次数,使用TopK的最小堆,选出TopK个字符串。这样我们可以得到1000个TopK字符串,对1000个TopK再次求出最终的TopK,这里用分治思想或最小堆均可。
统计次数需要aO(m),m为1GB,a为1000个文件,堆排序为mO(logk),归并后进一步堆排序为1000kO(logk),时间复杂度为O(m)+mO(logk)。
b.一个链表的长度,最快的方法,可能有环
答了快慢指针,但是面试官说这个不够快,我就讲了用哈希存储,但是感觉面试官还是不太满意
5.基础知识
list和tuple的区别
dict中key的底层实现,哈希冲突怎么解决?
6.算法题
lc原题,nums数组,分为left和right,保证left中所有元素小于等于right,并且使left尽可能小
思路:找到第一个左边最大元素(包括自身)不大于右边最小元素的位置,在这个索引处划分。刚开始思路不对,后来边界没处理好,在左边最大元素是否包含自身的地方有些纠结。感觉今天写题状态不好啊我摔,下次面试前要刷两道题。

【美团】一面挂
#简历
1. 围绕node2vec,讲一下word2vec的CBOW和skip-gram的区别,
2. 你用的是什么,为什么用skip-gram?这里不懂,说是因为自己用的word2vec的实现,就是使用的、skip-gram,原因不知道
3. skip-gram对应的损失函数是什么,word2vec对损失函数的优化有哪些?不会,就换问题了
node2vec中涉及DFS和BFS,是怎么去选择的 通过参数控制的
4. DFS和BFS,同质性和相似性,应用的场景。
后来面试官说DFS适用于社区发现,BFS适用于推荐,但我回答的我们主要考虑DFS做推荐,主要讲的是DFS具有探索性以及BFS具有利用已有信息的性质。同质性和结构性分不清楚,没怎么说
BFS可以容纳更多同质性的节点,反映的是结构性;DFS可以容纳更多的结构性的节点,反映的是同质性。
https://zhuanlan.zhihu.com/p/64756917(这里讲的很好)
#算法
1. 字符串的最短编辑距离,给定两个字符串,通过增删改操作,实现字符串相等的最小修改次数。这道题感觉有些复杂,说不会面试官给换了一道题
2. 字符串的最长公共连续子串。用了暴力和动规,但是动规是O(n2)的空间复杂度,关于空间的优化没有实现出来
主要在于保留上一层的前一个结果,应该有一个单独的对象去保存,但我是直接覆盖了所以出了问题
#智力题
1. 1-7的随机数生成器,怎么模拟1-5随机数生成器
我就说关键是要保证1-5的概率是一样的,但是没有具体思路。面试官给了一个思路是1-7的生成器去生成随机数,如果>5那么重新生成,<=5则停止,这样可行吗?我说的是概率可能不太一样,但是也没想清楚。直接抛弃大于5的可行吗?可以保证概率相等吗?
一般都是1-5生成1-7,这里应该可以直接大于5的抛弃,小于等于5则停止
2. 一根棍子,分成三段,成为三角形的概率有多大,任意两边大于第三边

【腾讯】一面挂
感觉腾讯没啥hc了
1. 介绍一下你主要做的召回工作,YoutubeDNN输入样本怎么设置的,有没有遇到什么难点?
2. 写个二叉树层次遍历
3. 过拟合和欠拟合、梯度消失和梯度爆炸
4. 了解哪些机器学习模型,哪些深度模型
5. 一个hello字符,变换字符位置后如果在字典中,这就是得到了兄弟词,怎么快速找到它的所有兄弟词
字典树/hello全排列/根据字符及其数目判断是否相等来得到,要分析时间复杂度,但是不知道最优解是什么

【贝壳】已oc
一面聊的比较浅,没有太多点
二面
刚开始介绍实习,围绕实习问了一些问题,也有一些开放性的比如你觉得哪个部分你做的最好
做得不好的地方:写了一个题没写出来,xgboost为什么使用二阶泰勒展开,目的是什么?有什么优势?FM和deepFM的区别及应用场景,FM的时间复杂度,手推公式
面试官反馈:太紧张了,知识的深度还有进步的空间
hr面
常规问题、现在还有哪些面试机会

【转转】等oc
一面
简历上的项目挨个问,写了两道题
1. 求数组中第二大的数——两遍遍历、堆、两个常数指针存储,时间复杂度O(2n)-O(nlog2)-O(n),空间复杂度O(1)-O(2)-O(1)
2. 一根绳子,划分三段,是三角形的概率
二面
主要是简历,但是我感觉问的很大很泛,比如让我介绍整个推荐的输入、优化目标以及做了哪些优化,怎么更好地拟合业务目标等
没回答好的一点是youtubednn里面的输入向量维度的映射是怎么做的,比如最开始维度不统一,然后怎么映射成统一维度比如150维的
LR里面的极大似然函数是什么
hr面
为什么去实习
目前有哪些offer,带户口吗
你认为转转能给你带来什么?怎么评价

【字节】一面挂
算法题:合并K个有序list,两两合并/堆,计算时间复杂度,对于logN级别的时间复杂度计算不熟练
1. 有没有看过相关的书,看什么书,是不是系统地学习了相关知识
2. 聊了UCB,为什么这么做,面试官觉得这样是一种奇怪的做法
3. L1L2正则特性,为什么又这种特性?
我提到解空间形状,面试官问解空间是怎么画出来的,没答出来。
https://blog.csdn.net/zouxy09/article/details/24971995 就是w1和w2空间下,根据公式画出来的菱形
4. 回归问题中,对于离群点,L1和L2谁会更敏感?怎么在优化L1和L2loss
这里我之前没搞明白:L1loss和正则是不同的,注意区分二者
这个问题真没想过,面试官一直给提示,但是我还是没有回答出来。
查询了发现是smoothL1的思路 https://cloud.tencent.com/developer/article/1441560

【YY】一面
介绍自己做的比较好的,然后从实习说起,讲一下KNN把,item2vec和node2vec是怎么做到浏览时长提升这么多的,youtubednn介绍一下怎么做的,ucb介绍一下,强化学习了解吗,提到强化学习跟多臂***问题有点相似,两个比赛哪个你觉得做的好,主要介绍了信用评估,用的xgboost,怎么特征筛选及数据清洗,缺失值怎么处理,怎么没用lightgbm,说下随机森林和xgboost,哪个是并行哪个是串行。问下深度学习的内容,梯度消失和梯度爆炸,常用的激活函数。
常用语言,scala了解程度怎么样
算法题-反转链表
面试官问工作地点怎么选,你对推荐这个方向感兴趣吗,反问业务-个性化push和技术栈-python/scala

【bilibili】一面
1. 你是计算机专业的,为什么要来投风控算法
2. 信用风险预估竞赛,讲讲你的思路以及整体的流程,想查看某一列的分布的函数是什么?确切的函数名(想不起来了),讲讲xgboost和随机森林的区别
3. 介绍下FM
4. 熟悉sql吗,考了几个语句,分组排序,join的几种方式之类的
介绍业务,识别恶意薅羊毛,sql是负责收集数据,算法模型基本就是xgboost之类的

【快手】已意向书
一面
1. 围绕项目,面试官可能对faiss库比较熟,主要问了faiss库原理,分级索引,怎么建索引
2. 做题:根据乱序数组建堆,以及数组的pop和push操作,面试官很耐心,会一起讨论来做题
二面
1. 快排/归并的相同和不同,主要在稳定性上面没说清楚,以及实际工程中是快排还是归并应用更广泛
2. 想问C++基础但我说不会,然后写了三道题
一个数组,求所有满足左边元素都比它小以及右边元素都比它大的元素;求二叉树节点最多的一层,返回层下标;以及海盗分金币问题
三面
1. 数学方式定义多路召回优化方程,包括自变量、约束条件、优化目标
2. 稀疏向量计算内积,一维向量,怎么高效计算,如果其中一个的稀疏程度远远大于另外一个呢?如果两个的维度很高且稀疏度比较低(也就是要计算的位置很多)?这里同时写代码实现
hr面
1. 说到了参加很多的社团活动,讲讲你组织的活动
2. 在电视台的经历中,详细介绍一下,是你负责的吗还是只是参与
3. 实习经历具体做了什么,有没有什么难点,遇到了哪些困难,是怎么解决的
4. 了解快手吗?你怎么评价快手?主要说快手的运营理念-社区性以及技术上的吸引力,提到了用户粘性,你认为主要是什么因素对用户粘性产生了作用
5. 有没有比较清晰的职业规划,目前投了哪些公司都到了什么阶段,求职中主要的考虑因素
hr说后续会发放意向书,10月8号以后会有hr沟通薪资,其他的具体问题可以问后面负责的hr

后面慢慢补充阿里的面经

全部评论

(6) 回帖
加载中...
话题 回帖

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐