- 作者:宝石
- 校对&整理:lucifer
vivo(已拿offer)
技术面(30min)
- 自我介绍
- 讲实习
- 讲比赛
- 问了些大数据的问题
- spark transform和action的区别
- 手撕了个归并排序
hr面(30min,技术只有一面)
- 自我介绍
- 家庭情况
- 讲一下实习亮点
- 有女朋友么
- 父母同意你去深圳么
- 讲一下优缺点
- 常规问题等等
昆仑万维(已拿offer)
一面(1h):
- 上来自我介绍
- 讲一下判断回文链表的思路,多方法
- 用纸写一下反转链表
- 说说python shuffle怎么实现的,O(N)时间,O(1)空间
- 看你计算机专业,知道哈夫曼树吧,w2v有用,你能说说么(我就记得分层softmax了,实在是不会)
- 说说传统机器学习你都了解哪些?推一下LR,说一下原理
- 知道kmeans吧,说下迭代过程,簇心随机不好,怎么才能更稳定(类kmeans++)
- 说说深度学习你都知道哪些模型?我说了LSTM RNN,还没等说推荐的模型。。。
- 讲一下LSTM吧,门都是怎么迭代的
- 各个激活函数的优缺点,sigmoid relu leaklyrelu tanh,又说了下梯度消失
- Sigmoid求导是什么?
- 了解推荐么,说说都知道啥,嘴贱说了个CF
- 讲一下Item-CF,怎么计算相似度(用交并,也就是Jaccard距离,速度比cos快),用什么优化呢(倒排索引)
- 讲讲数据倾斜怎么处理吧?(用key+随机前后缀)
- 聊一下你这个项目里LDA吧?我直接说这个我用过没细研究(他也认同,说数学原理很复杂)
- 聊一下你这个项目query title统计特征都提了啥,跟他聊了一下,他和我说了一下他的业务理解
- 反问
- 做什么的(啥都做,业务很广。。。)
- 用哪些技术(啥都用,技术栈很广。。。)
昆仑万维二面(就是确认时间 不算面试)
- 和一面面试官聊的如何
- 知道他们部门做什么的么
- 接下来约一下boss面,确认时间
- 结束
昆仑万维三面(不到二十分钟,压力面):
- 上来就问比赛,两个比赛都问了,和第一差距在哪
- 下面问题都是快问快答,都没深问,问题可能记不全了:
- 说下你实习吧,没说几句。。
- 你怎么解决样本不均衡的
- kmeans适用于什么情况
- python dict怎么用
- 为什么会产生哈希冲突
- python set dict list啥场景用
- 过拟合有哪些解决方法
- 牛顿法和拟牛顿法
- 200w不重复单词一口气放内存中,怎么放最省内存(不会)
- 你除了学习之外还做什么项目
- 平常刷算法题么,刷多少了
- 另一个面试官的问题不是压力测试
- 你希望做什么种类的工作(大概就是这个意思)
- 没得反问
京东
一面(40min)
很好的年轻女面试官
- 自我介绍
- 跟我聊了一下,然后说看你挺直率,我就直接说了,你想找推荐,我们是机器学习+组合优化,偏向运筹学,考虑么,(我说只要不是cvnlp,我全要)
- 考虑那就开始问些问题吧:
- 你讲讲你的实习,最亮点,给他分析了一波我采样策略。
- 你知道gbdt和xgboost吧,给我讲讲(疯狂吹逼xgboost)
- 你知道最大似然估计和最大后验概率估计么,或者挑一个你熟悉的说下(闭着眼睛推LR,啥伯努利分布,似然函数,疯狂扯)
- 来做个题吧,1000w个数,数范围[-1000, 1000],写个排序(闭着眼睛桶排)
- 你能提前来实习么
- 反问(京东零售部的,技术栈balabala)
- 复试待安排
二面(30min)
- 自我介绍
- 找个比赛说说创新点,你主要做了哪些创新,最后模型为什么用CNN系不用RNN系
- 由于上面我说我工作有训练词向量了,让我讲word2vec的架构,和一些细节问题
- 为什么w2v向量在语义空间内有很好的数学性质,比如相加减
- 数学问题:M个样本有放回采样N次,问某条样本一次没被采中概率
- 给你均值方差,让你利用正态分布随机生成1000个点(不能用库,说的不是很好)
- 反问:哪个部门哪个组(零售-技术中台下)
- 为什么选择京东,京东有什么核心竞争力(疯狂扯,我说我不太看好那些不能落地的,因为jd是电商,整个算法流程系统化工程化一定很健全,也有实际落地,带来实际效益,面试官非常赞同)
- 最后手里有啥offer啊
- 没了
hr面(20min)
- 小姐姐人很好,迟到了四分钟,上来道歉一波
- 自我介绍
- 遇到压力大的时候,比如在实习问题解决不了了,你会怎么办
- 与mentor产生意见分歧要怎么做
- 未来如果入职京东,对领导有什么要求呢
- 你平常有什么学习习惯么
- 你平常会定期做总结么
反问
- 当时问应届生入职需要做出啥改变,给小姐姐问懵了,我又补充说比如思想啥的需要有啥改变么,她给我讲了五六分钟,说的很直白,没啥官腔,说在学校如何如何,你来公司了又会如何如何
- 啥时候有结果:她也不知道,她拿到的是乱序的面试名单,可能后面会统一安排通知
一点资讯
一面(不到40min)
- 自我介绍
- 讲你的论文,这块一直问,问得特别细节,也问了好久,估计面试官比较清楚这块东西。
- 讲实习,都怎么做的,遇到啥问题,怎么解决。
- 讲一下FM,DeepFM这一系列(我从LR,POLY2,FM,FFM,Wide&Deep,DeepFm说了个遍)
- 做了个算法题,A了
- 反问:
- 部门:算法部信息流,和我微博实习的比较类似
- 技术:做推荐 Java和Scala用的多一些
- 个人感觉像不招人。。。
大华
一面 - 大数据工程师(数据挖掘)(不到40min)
- 面试官很有礼貌
- 自我介绍
- 着重问了好久实习
- 着重问了好久比赛
- linux查指定文件前缀有哪些命令
- 讲一下hive和hadoop关系
- hadoop mapreduce 执行流程
- java 类和对象关系
百度
一面(1h)
- 自我介绍
- 介绍实习,然后疯狂挖实习,问的很深
- 问如果模型区分不开一些样本,要怎么采样?业界有哪些常用采样策略。我真是懵了。。
- 问了一堆fm,比如表达式,复杂度,改进复杂度的推导
- 了解深度学习么,从wide&deep出发疯狂问,有的是真不会,要再复习一下
- 面试官说了个DCN(深度交叉网络),我还以为深度卷积神经网络。。。,结果深度交叉网络的细节也给忘了
- 我主动给介绍了下阿里的DIN和DIEN,他问这模型可以用在新闻推荐场景么(答不可以,因为新闻类实时性比较强balabala。。。不知道对不对)
- 如果想让你加入一个用户短期兴趣,比如刚发布的新闻打分低,要怎么改,(我记得在YouTube有个说了关于这个,我说加了个时间维度特征,或者时间衰减)
- 让我讲BN,为什么提出BN(好久没看nn的东西了,直说了个表象,容易收敛,面试官说为了解决输入分布不一致,bn可以拉回来分布,我把这个忘了)
- 从LR出发问了我sgd,如何改进,说了个momentum,再怎么改进,我说我了解个FTRL
- 说一下boosting bagging ,lgb为什么并行化效率高(答单边梯度抽样+直方图计算+互斥特征捆绑)
- 怎么分析并解过拟合问题的
- 算法题:三数之和
反问
- 部门是推荐策略部
- 主要场景是百度直播和贴吧推荐
- 用Python和C++,不用Java
触宝
一面(1h)
- 自我介绍
数据结构基础
- 数组和链表区别,应用场景
- 疯狂问排序算法,最优最坏平均复杂度,稳定排序有哪些(好长时间没复习这个了,答得比较差)
- 一个剪枝题,口述算法过程,分析时空复杂度
- 说说面向过程、对象、切片编程的区别(我。。。。。。)
机器学习基础
- 讲一下你了解哪些分类模型
- 说说SVM
- 讲讲id3和c4.5
- 讲讲xgboost和gbdt
讲讲怎么判断kmeans的k,聚类效果的好坏
- k可以用肘部法则SSE(误差平方和)和轮廓系数
- 讲讲分类,回归,推荐,搜索的评价指标
- 讲讲lr 和 fm,fm的后续(ffm)
- 讲讲你知道的各种损失函数
- 讲讲l1 l2正则,各自的特点
深度学习基础
- 说说deepfm,说说fm在nn中还有哪些(FNN,NFM,AFM)
- 说说类似l1,l2正则化降低模型过拟合,还有什么别的方法
说一下sgd→adam的过程(下面是面试后简单复盘,本身答的一般)
- sgd
- momentum 利用了历史信息,意味着参数更新方向不仅由当前的梯度决定,也与此前累积的下降方向有关。这使得参数中那些梯度方向变化不大的维度可以加速更新,并减少梯度方向变化较大的维度上的更新幅度。由此产生了加速收敛和减小震荡的效果。
- rmsprop 在 Adagrad 中, 问题是学习率逐渐递减至 0,可能导致训练过程提前结束。为了改进这一缺点,可以考虑在计算二阶动量时不累积全部历史梯度,而只关注最近某一时间窗口内的下降梯度。根据此思想有了 RMSprop,采用的指数移动平均公式计算
- adam 可以认为是 RMSprop 和 Momentum结合并加了偏差校正,因为初始化是0,有一个向初值的偏移(过多的偏向了 0)。因此,可以对一阶和二阶动量做偏置校正 (bias correction),
- 介绍下梯度消失和梯度爆炸
- 都有哪些方法解决这两个问题
- 你了解多目标优化,迁移学习么(不知道)
场景问题
- 让你加一个兴趣类型特征 你要怎么做
- 如何处理年龄类特征
你了解相似向量快速计算的方法吗(就记得个啥哈希分桶,没做过)
- 局部哈希计算,高维相近的点低维也相近,但是高维较远的点低维可能也相近,将embedding应设成1维,若担心把远的也算进来可以多设置几个hash函数等等。
- 如何判断你模型上线的好坏
- 给你个nn模型,如何调参,如何修改架构
- 如何解决冷启动问题 用户侧,物品侧
- 推荐系统的整体架构
- 线上推断这部分再具体点怎么实现的
反问
- 触宝内容推荐(小说)
- 主要用python
- 等后续hr通知吧
二面(45min)
面试官人很好,和善可亲
- 自我介绍
- 讲下实习做了哪些优化,问了些问题(我都没介绍实习,面试官已经直接点破我每一点实际都在做什么)
- 讨论了一下抽样,作为一个算法工程师如何将抽样导致的得分分布变化给拉回来?
- 因为实习模型是FM,详细讲了下FM,讨论了下FM的泛化性
- 用的什么优化算法,顺便介绍下sgd后续的优化,sgd→momentun→rmsprop→adam,一面问过的,复盘过
- 实习有没有除错过导致线上有点问题(还真有。。。)
- hadoop shuffle干啥的,为啥key相同的要放在一起
- python深拷贝和浅拷贝的区别
- linux 替换文件中所有的a,我说的awk或者tr
- 算法题:给两个字符串S和T,计算S的子序列中T出现的次数(dfs A了)
- 反问:竟然和一面面试官不是一个部门。。。二面面试官给我介绍了算法在他们公司都有哪些应用。。。
- 总之要有工程师顶层思维,不能局限于模型优化啥的。
关注公众号力扣加加,努力用清晰直白的语言还原解题思路,并且有大量图解,手把手教你识别套路,高效刷题。
公众号【 力扣加加】
知乎专栏【 Lucifer - 知乎】
点关注,不迷路!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。