(1)加权编辑距离
(2)链表的局部反转
(3)不同形式的二分
(4)两个01数组,找到对应位置的最长子数组使其拥有相同个数的1
4.二叉树两个节点间的最长距离
,一道是快排mid,一道是最长公共子序列hard
来自百度,说一下神经网络,不同神经元前向,反相传播的代码实现。
来自百度,softnax代码实现,梯度公式推导和代码实现
来自百度,一个字符串的最长回文串,有没有效率优于平方的算法?
来自腾讯,最长上升子序列,dp实现,nlogn实现
来自腾讯,写个平衡树吧
来自腾讯,神经网络,深度大有什么特点?宽度大呢?
字节,已知x.y的概率分布,求max x,y的分布
字节,一维01数组中,求最长的区间,其中0和1数量相等
字节,两个栈模拟双端队列
字节,求树上的lca,是否有快速的在线算法?
字节,逻辑回归中损失函数的实际意义?
字节,线段树和树状数组的异同。
字节,a,b是两个矩阵,判断a在b中出现了几次?a的大小小于b
字节,最小生成树
作者:NoCareThenCare
链接:https://www.nowcoder.com/discuss/350817?type=2&order=0&pos=47&page=1
来源:牛客网
百度:
1面:
项目相关
算法题:leecode 102
场景题:怎么给用户推荐内容(可以利用浏览历史等等)
2面:
项目相关
算法题:无序数组找到第k大的数 写出两种做法 (quick select, heap)
对于推荐算法的了解:fm,cf等等
3面:
项目
算法题:堆排序, in-order traversal
自己的职业规划
详细讲述自己通过努力完成的事情
字节:
1面:
项目相关
算法题:第一题忘了,第二题leetcode 42
2面:
项目相关
实现求auc的过程(输入就是instance的score和对应label)
矩阵分解相关知识
3面:
项目相关
实现LR
印象最深的paper和最近看过的paper
场景题:如何在用户检索时补全 比如(j->jd, c++,j -> c++,java)
1.如何解决过拟合问题,尽可能全面?(几乎每次都被问到)
2.如何判断一个特征是否重要?
3.有效的特征工程有哪些?
4.数学角度解释一下L1和L2正则化项的区别?
5.注意力机制,self attention ?
6.有哪些embedding 方法?
7.word2vec中,为啥词义相近的两个词,embedding向量越靠近?(这里感谢腾讯面试官的解释)
8.推荐系统中如何解决冷启动问题?
9.GBDT中的“梯度提升”,怎么理解?和“梯度下降”有啥异同?
10.常见的降维方法?PCA和神经网络的embedding降维有啥区别?
11.图卷积神经网络了解吗?(这里感谢滴滴面试官的提问,确实是我的盲点)
12.Bert为啥表现好?
13.SVM用折页损失函数有啥好处?
14.逻辑回归为啥用交叉熵损失函数?从概率论角度解释一下?咋不用平方误差呢?
15.XGboost 的节点分裂时候,依靠什么?数学形式?XGboost 比GBDT好在哪?
16.推荐系统中,CB(基于内容的)和CF(协同过滤的)有啥区别?目的是什么?
17.除了梯度下降,还有啥优化方法?为啥不用牛顿法呢?
18.skip gram和CBOW训练过程中有啥区别?谁更好?
19.图嵌入的发展,图嵌入为啥比w2v好?
20.在线学习了解吗?
21.SVM都能用核函数,逻辑回归咋不用呢?
22.Kmeans聚类为啥能收敛?理论上解释一下?
23.如何解决多目标优化问题?(即同时优化CTR和CVR)
24.常见的采样方法?
25.如何解决样本不均衡问题?
26.高维稀疏特征为啥不适合神经网络训练?
3、算法题:两个单链表找到第一个公共结点。
4、算法题:由0和1组成的二维矩阵,找出1的最大连通域,计算其面积。
1、算法题:长度为n的字符串中包含m个不同的字符,找出包含这m个不同字符的最小子串。
9、介绍一下xgboost有哪些特点。
10、xgboost和GBDT的分裂方式你认为哪个好。
5、算法题:下一个全排列。
6、算法题:长度为n的数组中有一个数字出现了n/2次,快速找到这个数。
一面:(现场面 10月12 1小时)
写代码:最大的k个数。用的最小堆,堆没有写实现只定义了一下。
写代码:有序链表的合并还是啥了。。忘记了。。也比较简单。
问项目,基于项目问问题,又讲了一遍XGBoost。。这时候是会的。。
问项目,项目里涉及了文本相似度的计算,问了为什么用词向量算不用别的方法,优缺点是啥。。结合项目说了一下。
SIMHash是怎么做的?一时忘了,没答上来
有什么要问面试官的?给我介绍了一下他们主要做的东西,发现是做推荐相关的,但是推荐相关 的东西我都没怎么看过。。感觉好像又要gg
在线等二面。。全程五十分钟。。
二面:
问项目,讲了讲,有一个项目里用到了NDCG。问NDCG的意义,怎么算的。。没讲明白。。
问推荐算法都了解哪些?协同过滤。。新的方法知道哪些。。不知道。。给我说了几个。。然后就结束了。。全程二十分钟。。凉了
总结:额。。还是太菜了。。欠缺太多
作者:jimmy的小旋风
链接:https://www.nowcoder.com/discuss/347310?type=2&order=0&pos=66&page=1
来源:牛客网
本人计算机硕士,毕业两年多了。目前从事GPU并行优化相关工作。
9月25号 ,猎头推荐了今日头条的深度学习岗,就想着去试试。9月26号的时候,头条打电话约了国庆后面试,10月10号晚上现场面试。
一面
手写代码:给定区间,二叉搜索树去掉不在该区间的节点,用递归,但是写的时候没有处理好,BUG有点多,汗。
项目经验+深度学习相关的东西。
二面
手写代码:使用链表模拟两个数相加,这个写出来了,思路我就不写了,网上很多。
还问了现在做的一些东西,包括cuda和opencl的一些东西。
二面面完后就让我回了,因为两面答的都不是很好,就觉得没戏了;然后过了几天头条又约了10月18号下午2点现场面试。
三面
手写代码:大写的钱转成数字表示,如输入一万零五百,输出10500
三面结束时,面试官问我有没有做运维开发,让我等四面面试官,我感觉运维不太好,而且有点辛苦,就说不感兴趣,然后面试官说稍微等一下,也不一定是要做运维开发,面完后看四面面试官怎么说,最后还是面了下。
四面
手写代码:一个数学推导题,比较简单
运维相关的东西
四面快结束时,面试官说机器学习方面的我做不了,问我想不想做运维,我明确说不太想做运维,还是想继续之前的方向,然后面试就结束了。
回去想了下应该是深度学习岗位的面试官觉得我不太合适,给转到了运维开发,三面和四面应该都是运维的面试官进行面试的。
xgboost和lgb区别,除了histogram
xgboost是如何处理缺失值的呢?
在寻找split point的时候,不会对该特征为missing的样本进行遍历统计,只对该列特征值为non-missing的样本上对应的特征值进行遍历,通过这个技巧来减少了为稀疏离散特征寻找split point的时间开销。
在逻辑实现上,为了保证完备性,会分别处理将missing该特征值的样本分配到左叶子结点和右叶子结点的两种情形,计算增益后选择增益大的方向进行分裂即可。
如果在训练中没有缺失值而在预测中出现缺失,那么会自动将缺失值的划分方向放到右子树。
2. xgboost和gdbt区别
3. xgboost用二阶泰勒展开的好处
讲下XGBoost
XGBoost和LightGBM有什么区别
XGBoost为什么用树作为基学习器
集成学习中除了Boosting和Bagging还有什么模型?
作者:offeronemoretime
链接:https://www.nowcoder.com/discuss/319402?type=2&order=0&pos=69&page=1
来源:牛客网
词向量有哪些训练方式(skip-gram、cbow、glove、fasttext等),这些方式之间的比较
用Skip-gram训练词向量在什么场合比较适用?(答到样本分布不均衡时,skip-gram可以采用负采样、层次softmax解决)
有没有尝试在构建词向量后用传统的机器学习模型去训练?
两个三十六进制字符串的相加
二叉树中序和先序遍历数组,求后序遍历数组
实现 36 进制加法 “1z”+“1” = “20”
快手推荐
之前学过机器学习和深度学习…但我觉得问的还是比较少,主要建模成数学问题,机器学习和solver 啥的只是工具,那建模数学就是自己的强项了
一面,现场面试官出题,给我一些实际场景,让我抽象成数学问题,再去解决。链表merge和去重 LR
二面,PI controller调整推荐参数问题,也是实际场景变成数学问题,决策树,矩阵链
三面,大佬面,真的是大佬了,我们探讨了自动驾驶的东西,还被问了dp解决实际推荐业务的问题,具体忘了…
交叉面,问了好多业务问题,具体也忘了…最后是dp解决背包问题。
1.解释word2vec(这个我真的是5次有3次都会被问到,我觉得想突出你对它掌握得很好得话得知道层次softmax每次到底是怎么更新参数的,skip gram和cbow的优缺点,负例采样和层次化softmax各自的优缺点,以及word2vec的缺点等等)
编程题:
一个链表,奇数下标递增,偶数下标递减,使其总体递增。
给一个数组,求其所有数都平方后,共有多少个唯一的值。
18.作者:小吃瓜
链接:https://www.nowcoder.com/discuss/174565?type=2&order=0&pos=103&page=2
来源:牛客网
Q:我们输入两个值n和k,n表示我们有从1到n个整数,然后将这些整数都字符串化之后按字典排序,找出其中第K大的。例如:n=15,k=5.那么1-15字符串化之后排序如下:1,10,11,12,13,14,15,2,3,4,5,6,7,8,9。其中第5大的就为13。
求两个字符串的最大公共字串的长度。
算法题,01矩阵,连通块的数量和最大大小,追加问题是如何去重
18. 手写LR前向传播和反向传播
19.6. xgboost和GBDT的区别
19. 讲一下lightgbm模型
20. xgboost怎么处理缺失值的?
21.