牛客网算法面经汇总

作者:jjcong
链接:https://www.nowcoder.com/discuss/212554
来源:牛客网
  • 介绍个人项目
  • 介绍Faster R-CNN中的anchor是做什么的
  • 介绍YoLo是怎么做的
  • 介绍防止过拟合的方法,其中问到了L2正则化,Batch Norm
  • Python熟不熟悉,装饰器,生成器,迭代器有没有了解过

  • 作者:caiyue37
    链接:https://www.nowcoder.com/discuss/210036
    来源:牛客网 
  • 输入为L*L,卷积核为k*k,还有步长s和padding p,求输出尺寸?(L1 = (L-k+2*p)/s + 1)         
  • 接上题,求操作的FLOPs?(FLOPS = k*k*c1*c2*L1*L1)         
  •  过拟合要怎么解决?(减少模型参数、早停、正则化、数据增强、GAN合成数据、dropout、few shot learning,等等等等)         
  • 上面自己提到了few shot,解释一下是什么?(不小心给自己挖了个坑,还好楼主大致懂一点。。)         
  •   几个激活函数都有什么优缺点(sigmoid, tanh, relu, lrelu等)         
  • 概率题:x, y服从0-1均匀分布,求x+y<1的概率?x, y, z服从0-1均匀分布,求x+y+z<1的概率?         
  •  编程题,LEETCODE 448,要求时间o(n),空间o(1)。这题还好,顺利做出来了。
  •  热身题,买卖股票一次的最大收益,LEETCODE 123,很简单不说了              
  • 买卖股票两次的最大收益,LEETCODE 123(wc这题太尴尬了,楼主可能是太紧张想了好久都没想出来,最后在面试官的提(明)示下才实现了出来。果然自己还是太菜啊……以后看见hard的题目再也不敢跳过了ToT)             
  •  经过编程题已经过了40分钟了。。。面试官表示深度学习该问的一面都问过了,就问点c++基础吧:C++的虚函数是什么             
  •  c++的析构函数一定要是虚函数吗             
  • 最后还是意思性的问了个DL问题:BN的作用。        
  • 作者:siwenJiang
    链接:https://www.nowcoder.com/discuss/211763
    来源:牛客网

    一面:

    随机森林的随机性怎么体现

    Bagging和Boosting区别

    三道代码题

    1.给一字符串,只包含(和),求最长连续子串

    例子:

    输入:

    )((()))(

    答案:

    6

    2.给一个字符串,列出所有可能的ip组合

    3.k个有序链表合并

    二面

    1.我看你简历上都是CV项目,你愿意转到推荐算法这边还是坚持你的CV

    2.你对于机器学习很多东西都不了解么?

    3.说说过拟合和欠拟合的概念吧

    4.过拟合怎么处理?

    5.如何降低模型的容量

    6.你用过dropout么?介绍一下

    7.逻辑回归了解么?逻辑回归是处理线性问题还是非线性问题的?

    8.决策树的ID3和C4.5介绍一下

    9.介绍一下TCP和UDP

    10.你比较熟悉Python?你了解过他的多线程么?

    11.python全局锁是什么?

    12.python装饰器介绍一下

    13.Python数据结构有哪些?

    14.你主要用TensorFlow?它的优化器都是什么?分别介绍一下

    15.TensorFlow怎么实现梯度传递?

    16.maxPooling怎么传递导数?

    17.考一道算法题吧,我给你一个中文数字,比如一百二十,如何转换为整形数字

    三面

    1.自我介绍

    2.项目,问的很细。包括数据量和模型

    3.我有一个中文的OCR识别模型,现在如何得到一个日文的识别模型?

    (这里我想说翻译,但是感觉OCR本身就有自己的误差,加上翻译的误差可能会导致准确率很低,

    所以我说的是中文训练之后再做迁移。但是感觉他想听的是翻译模型。)
     
  • 机器学习xgboost、GBDT(没了解过,不懂) 
  • TFIDF的理解 
  • LSTM 与 RNN的细节 
  • word2vec的细节

  • 作者:包大人爱吃肉
    链接:https://www.nowcoder.com/discuss/211954
    来源:牛客网
    一面:
    算法题,写一个json的load方法。(不需要优化比如自动机最小化之类的)
    其他的问了问简历项目,比较水,互相吐槽了现在的业务部门和研究院的差异。
    二面:
    算法题,集合的子集,无重复和重复。

    原理题
    GBDT原理,推导。
    特征工程理解。
    归一化的理解。

    系统题
    python 深拷贝,浅拷贝
    python 反射

    场景题,一个东西上线了跟线下实验不一样咋整。
    场景题,设计推荐系统,只有两个字段 item_id,item_price_range. 比如1asdha, [4399,5399]
    向量相似度计算方法
    欧氏距离非欧距离
    向量召回加速方法,FAISS。

  • 作者:越陵殇
    链接:https://www.nowcoder.com/discuss/211174
    来源:牛客网
    loss(x,y)=max(x,y),求该函数分别对x和y的偏导怎么计算?(参照max pooliing的求梯度解释);
    BN的实现?
    BN的作用?
    BN训练期间和测试期间的区别?
    BN中的batch怎么选择?https://zhuanlan.zhihu.com/p/61725100

    普通卷的参数量如何计算?

    如果换成depthwise conv呢?
    大小为3*3,padding=0,stride=1的卷积核在经过2次计算后感受野为多少?参考:https://zhuanlan.zhihu.com/p/31004121
    减小过拟合的方法有哪些?
    YOLO v3的loss函数(讲错了,当时一紧张就讲成了Faster RCNN的loss函数,脑子发热了,难受~)
    KL散度有了解吗?
    smooth L1函数的作用为什么效果更好?

    一些发散性的题目

    不规则图形的面积如何计算?

    算法:

    给定一个二维数组,其中包含元素为0~9,要求矩阵中所有元素为0的行和列,并将所有0元素所在的行和列也全部更新为0。

  • 作者:xxxe求offer
    链接:https://www.nowcoder.com/discuss/211326
    来源:牛客网
    代码题:环形打印二维数组;求二维数组中,任意矩形之后(要求平均复杂度低,大概就是多次调用以后复杂度低)
    设计题:在10万用户中,为每个用户找检索序列最相似的用户(设计题我感觉我答的一般, 写的map-reduce什么的,但是面试官说就是个设计,设计不好没关系!真的很nice!)
    项目讲了很多很多,我一天面了两面,从下午两点面到快五点半 

    作者:gu66
    链接:https://www.nowcoder.com/discuss/210829
    来源:牛客网
    一面:
    1、自我介绍,聊相关内容,主要是一篇小论文以及相关领域内的其他论文
    2、聊项目,yolo检测相关
    3、问检测中能提升速度但不损失性能的操作有哪些,用过的没用过都行
    4、编程题:稀疏向量的点乘。先要我自定义存储的结构体,然后写函数头,再编程,本来要我用template但我不会就算了
    体验:面试体验非常好!我不会的先会引导我,引导还是不会就会直接告诉我,非常耐心。

    二面:
    1、自我介绍,还是聊论文,但问的点和一面的不一样。
    2、一道数学题,A、B两人投硬币,谁先投到正面谁就赢,求先投的人赢的概率
    3、LR、SVM的公式推导
    4、特征点的匹配机制有哪些
    5、深度学习中评价指标的解释,mAP、PR曲线、AUC
    6、编程题:链表反转,迭代+递归两种都要写
    体验:可能可以看到一面面试官的评价,所以全程没有问一点项目相关的内容,而且很多问题都是我的知识盲点,比如2、3、4、5题都没有答出来。复习一定要全面啊!!!
    不知道为什么非常紧张,2题的时候居然连等比数列都没有发现......整体感受很失败......最后编程题递归也没写对,面试官提醒后才改过来......

    作者:光头强的知音猪笨笨
    链接:https://www.nowcoder.com/discuss/210333
    来源:牛客网
  • (6) 写写逻辑回归的损失函数,并且推导一下权重更新公式。(我写了以后,面试官接着问)如果不用梯度下降优化,还能怎么优化,我说了一些优化算法,他说牛顿法怎么具体更新参数的(我只知道利用了二阶梯度信息,很诚实的说具体推导不会)
  • (7) 写写线性回归的损失函数,并推导权重更新公式。(我写完以后,面试官接着问)X*X(T)一定可逆吗?我说不是,他又问:如果有两个特征的取值一模一样,这个更新公式有问题吗?(我想了半天,觉得可能会过拟合到这两个特征上,就尝试引导面试官让我写加了正则化的权重更新公式。但是面试官说不考虑正则化,就问当前表达式有什么问题。我诚实的说不清楚。后来面试官引导我说想想刚刚我问你的问题,我才想起来这时候X*X(T)不可逆,因为经过矩阵初等变换后有两行或者两列可以消去)
  • 编程:
    1. 判断二叉树是否包含另一二叉树
    2. 有序数组合并
  • 作者:赶考书生
    链接:https://www.nowcoder.com/discuss/210508
    来源:牛客网
    • 再问一个分割检测方面的,了解nms吗,大致介绍一下
    • 模型训练过拟合怎么办

    答:数据增强,增大数据量;换更大更深的网络,更好的backbone;dropout,BN等

    • BN为什么防止过拟合呢?

    正确答案应该是

    大概意思是:在训练中,BN的使用使得一个mini-batch中的所有样本都被关联在了一起,因此网络不会从某一个训练样本中生成确定的结果。

    这句话什么意思呢?意思就是同样一个样本的输出不再仅仅取决于样本本身,也取决于跟这个样本属于同一个mini-batch的其它样本。同一个样本跟不同的样本组成一个mini-batch,它们的输出是不同的(仅限于训练阶段,在inference阶段是没有这种情况的)。我把这个理解成一种数据增强:同样一个样本在超平面上被拉扯,每次拉扯的方向的大小均有不同。不同于数据增强的是,这种拉扯是贯穿数据流过神经网络的整个过程的,意味着神经网络每一层的输入都被数据增强处理了。
    1. 提出了除了BN外,还有其他方式同样可以达到类似平滑效应,有些甚至效果更好。
    • 算法题:判断一棵树是不是完全二叉树

    思路:

    1>如果树为空,则直接返回错
    2>如果树不为空:层序遍历二叉树
    2.1>如果一个结点左右孩子都不为空,则pop该节点,将其左右孩子入队列;
    2.1>如果遇到一个结点,左孩子为空,右孩子不为空,则该树一定不是完全二叉树;

    2.2>如果遇到一个结点,左孩子不为空,右孩子为空;或者左右孩子都为空;则该节点之后的队列中的结点都为叶子节点;该树才是完全二叉树,否则就不是完全二叉树;
  • 深度学习优化算法有哪些?
  • 感觉跟前面的帖子说的基本一致。
    1、自我介绍
    2、问项目内容,分工
    3、线性回归和逻辑回归的区别
    4、SVM,SVM怎么解决线性不可分
    5、数据不平衡怎么处理
    6、梯度爆炸和梯度消失怎么解决

  • 作者:ssfd
    链接:https://www.nowcoder.com/discuss/209171
    来源:牛客网
    一面 基本都在聊项目,后面随便问了几个问题。

    # ab测试在两个bucket差距比较大,一个bucket量特别小的情况下,如何去更好的估计结果

    # 介绍下基本的推荐算法

    # 传统的机器学习和深度学习的区别你觉得是什么

    # code: 给定一个字符串,和字符串列表,判断能否用字符串列表拼接生成字符串

    二面 基本也都在聊项目。。。

    # 推下svm? 推的不是很好,很久没看了
    # kmeans的收敛性
    # 没了好像。。。

  • 作者:麦弟小排骨
    链接:https://www.nowcoder.com/discuss/207105
    来源:牛客网
    一面:
        1. 自我介绍,介绍自己的项目/论文,问得比较细(包含神经网络结构,空洞卷积,注意力等)
        2. GBDT的原理,怎么做多分类问题
        3. XGBoost的基本思想,和GBDT的区别
        4. 算法题:由长度为length的array表示的整数,允许相邻位数交换,求n步交换内能得到的最小整数。
        
        二面:
        1. 简单介绍自己做过的Kaggle比赛
        2. 随机森林和boosting trees的区别
        3. 算法题:Leetcode #72(hard), 字符串的编辑距离(面试官全程提示,但是还是没做出来)
        4. 算法题:一亿个浮点数,大小不超过2^32,均匀分布在值域内,求最快的排序方法;分析排序方法的复杂度(面试官全程提示)
        5. 开放式问题:怎么论证现有的模型需要多少额外的标注数据
        6. 卷积神经网络在maxpooling处怎么反向传播误差(还没回答完,面试官说先去吃午饭吧,之后再探讨,然后就忘了)
        
        三面:
        1. 自我介绍,问自己的论文项目,问得比较深入(为什么选CNN不选RNN,loss的选择,MSE和MAE对学习结果的影响)
        2. 怎么防止模型过拟合
        3. 介绍Adam和dropout的原理
        4. 算法题:完全二叉树输出最后一个节点
        5. 概率题:求几何分布的期望(无穷级数和我忘记怎么求了,面试官直接结束了面试)

  • 作者:南风哥哥
    链接:https://www.nowcoder.com/discuss/207092
    来源:牛客网
    一面:
    怎么推测抖音用户是男性还是女性?怎么确认判断结果的靠谱程度?
    分类问题的指标?准确度、召回率、PR曲线
    相关系数怎么计算?讲一讲协方差和它的意义?
    详细介绍一下实习经历?有没有场景落地?
    特征选择的方法?Lasso回归、相关系数等
    为什么要用正则化?解释了奥卡姆剃刀
    L1正则化与L2正则化的区别?解释了参数先验和拉格朗日乘子法
    手撕代码:
    求股票的最大利润,例如[1, 3, 1, 8, 10, 3],只能买卖一次,计算最大收益
    能买卖无数次,计算最大收益
    只能买卖两次,计算最大收益

    二面:
    一定要走算法岗吗?还是大数据也OK?
    简单说一下最有成就感的项目案例?介绍了比赛经历
    简单说一下对假设检验的理解?没答上来。。。
    抽样一般有哪些方法?答偏了,讲了欠采样、过采样
    解释MCMC采样?讲了马尔可夫链、蒙特卡洛方法,改进版的M-H采样、吉布斯采样
    与计算机相关的课程有哪些?数据结构、计算机网络、操作系统。。。嗯。。。都没学过
    说几个常用排序算法的时间复杂度、空间复杂度、稳定性?
    Linux系统的常用命令?
    SQL如何取出成绩表中各科的前三名?
    对什么语言比较熟?C++、Python
    手撕代码:
    排序数组中绝对值不同的个数
    字符串转整数

    三面:
    前面两面聊的怎么样?
    为什么想做算法?
    讲一下实习经历?大概用了什么方法?
    抛一个不均匀硬币五次,两次正三次反,下一次正的概率p1是多少?
    抛一个不均匀硬币五十次,二十次正三十次反,下一次正的概率p2是多少?
    为什么概率是0.4?解释极大似然估计,求导计算出p1=p2=0.4
    如果真实的概率是p,为什么你会觉得p2更接近p?
    机器学习训练中,数据分为几份?
    验证集和测试集的区别?
    手撕代码:
    1,2,...,N中,字符1出现的次数
    判断a+b>c?要考虑溢出

    作者:等一个offer好吧
    链接:https://www.nowcoder.com/discuss/207287
    来源:牛客网
    由于我提前到了,发现就来了我一个人,所以直接提前面试,面试官两个,一个负责提问,一个负责记录
    1. 首先自我介绍
    2. 自我介绍我提到了数据挖掘,他问那你会大数据吗,我说只会点皮毛
    3. 那你了解推荐系统吗?答不怎么了解
    4. 那好,给你个情景题:给你一千万个用户,一千万个商品,怎么把商品推荐给用户?我的内心是崩溃的,这不明显的推荐系统嘛😪
    答得一团糟,懵逼了...

    5. 那现在给你商品电水壶,怎么区别这些电水壶是什么档位呢,高档中档还是低档,我回答根据价格、销量、评价、品牌等来,
    他继续说比如价格,界限是多少呢,比如品牌,哪个牌子算高档,哪个算档等等,我.......
    6. 好,那现在给你一个空调和一个冰箱,怎么计算它们的相似度,我说取它们向量的余弦相似度.......
    7. 知道交叉熵吧,退一下多分类的交叉熵怎么来的,我说能推二分类吗,他说不行,推多分类,唉,我不会
    8. 那你知道熵吗,熵的表达式为什么有个log,为什么要取log呢,唉,我又不会.....

    回答情景题的时候,我一直在卡,卡了很久,负责记录的面试官一直提示提问面试官时间,感觉很急,最后面试结束,面试官直接很快就溜了

    字节跳动  7月16号
    面试官是一个头发稀少 ( 技术很强) 的小哥,首先告诉我不要紧张,就聊聊天,你准备好的话自我介绍一下,我看看你的简历

    1. 我看你做到电影票房的预测,能否具体讲讲:
    你说你用到了逻辑回归,讲讲逻辑回归的损失函数,我说这是回归问题,我用的是线性回归,逻辑回归是分类算法
    哦,对。那你还是讲讲逻辑回归吧,我就讲了一大通,损失函数啊,怎么处理多分类啊,怎么并行啊,改进算法啊
    2. 看你简历里写了CNN和LSTM,讲讲它们的区别
    3. LSTM主要有哪几个部分? 三种门结构、候选单元、隐藏单元
    4. 讲讲LSTM相比RNN有哪些改进? 我主要从如何避免梯度消失来讲,以及RNN激活函数用了tanh,为了避免RNN梯度消失,才提出了Relu
    5. 既然提到了激活函数那讲讲LSTM中用到了哪些激活函数吧? sigmoid,tanh

    在线编程题: 二叉树先序遍历序列+后序遍历序列输出后序遍历序列

    6. 你有什么想问我吗?
    a. 评价一下我这次面试,因为面试经验比较少,想学习一下怎么提升?
    这个问题我们HR说不能回答(????😥😥)
    b. 那请问一下您现在在哪个部门呢?
    面试部门是随机分配的,假如你通过的话,我的部门跟你未来的部门可能不一样
    c. 那面试没过会通知吗?
    如果可以进入下次面试,我们会在一周内邀请你进行接下来的面试的

    作者:Soeur
    链接:https://www.nowcoder.com/discuss/207712
    来源:牛客网

    1.写一个计算sqrt的函数,不能使用库函数(我用的牛顿法);
    2.然后问了牛顿法和二分法的差别,和各自的优劣;
    3.问了c++ vector的实现原理,为什么可以动态增长长度;
    4.vector的插入效率(尾后插入)为什么平均来讲是O(1)级别的;
    5.项目细节以及比赛的细节(问的非常细)

    • 特征工程是怎么实现的,结合比赛具体介绍;举例说明通过特征工程怎么提取到非常有用的强特征的;
    • PCA的原理,以及为什么能用于降噪(项目相关);
    • 神经网络如何解决过拟合;
    • Dropout的原理;
    • Bagging ,Dropout还有 Boosting之间的对比;

    作者:水煮鱼201906300703978
    链接:https://www.nowcoder.com/discuss/209478
    来源:牛客网
    印象深的问题有:

    1.给你M个正样本,N个负样本,以及他们的预测值P,求AUC。(写完之后接问:AUC究竟在衡量模型什么能力?如果现在所有预测值都*1.2,AUC是否会变化?)
    这一题印象深刻是因为平时在计算auc的时候,很多同学都知道是roc曲线的面积,但是对auc具体的含义了解不多。

    2.Attention
    考虑到最近Attention的火爆和字节跳动的主要技术优势,attention这一个技术热点是一定要复习的(然而我没仔细看,非常后悔,面完之后从头到尾看了一遍)。

    3.BatchNorm
    这一个问题其实我有用过,我也知道原理,但是当面试问具体公示的时候,还是愣了一下,但是BN无疑是一个很火的应用,必须要会。

    其他的例如softmax与cross entropy的推导,过拟合与正则化,BiLSTM,Gradient Explosion,Top N,特征选择都是常规问题就不仔细说了。
    作者:牛客网弟中弟
    链接:https://www.nowcoder.com/discuss/206186
    来源:牛客网

    电面一面(25分钟):(ps: 这一面问的心态爆炸。。。。。)

    1. 自我介绍

    2. 看你简历是做CV的,我们这边是做推荐的,让你做你愿意做吗?(当然愿意啊,让我进去做啥都行2333)

    3. 面试官介绍了他们做的业务(说氛围轻松,几亿条数据随便你玩)

    4. 为啥在平安只实习了1个多月啊?现在在哈啰实习做啥业务?

    5. 讲一下偏差和方差(楼主从欠拟合和过拟合来讲的)

    6. K-means算法中的K怎么确定的?

    7. 场景题:打开京东APP,点击一个商品,详情页会显示XXX也买过,这个具体是怎么做的?(楼主扯到了协同过滤和冷启动)

    8. 推荐里面的低秩矩阵分解具体是怎么做的?

    9. 线性代数里面的矩阵分解你知道吗?具体是怎么做的?

    10. 搜索引擎的拼写纠正怎么做的?(楼主说了朴素贝叶斯和词袋模型)

    11. 那如果第一个字母就输错了怎么办?

    12. 词向量这一块有了解过吗?

    13. 讲一下逻辑回归?

    14. 当数据量特别大的时候,逻辑回归(LR)怎么做并行化处理?

    15. 讲一下SVM?

    16. SVM的核函数有哪些?你都用过哪些?

    17. 特征工程你知道吗?用过吗?对于连续特征,我们通常有两种处理方式:1. 连续特征离散化;2. 特征缩放,这两种分别在什么情况下做?

    18. 算法题:求字符串的最大回文子串(动态规划)

            19. 有木有参加过机器学习方面的比赛,名词怎么样?

            20. 大数据工具Spark、Hadoop这些有了解过吗?

    完了就说他没问题了,一会儿还有一轮面试。

    总结:面试官一直问我推荐相关,我真的不会。哎,后面场面非常尴尬。。。。

    ---------------------------------------------------------------------------

    电面二面(30分钟) 这一面还行。。。。。

    上来我直接认怂,说我一面面得很差,好多都不会。结果二面面试官说我一面面的还行。。。

    面试官说了一下他们的部门:京东云下的应用研发部算法推荐团队,以及具体的业务,主要是下面三块:

    1. APP的商品推荐

    2. 精准营销

    3. 客户管理

    下面是具体面经:

    1. 面试官说对我现在的在公司的业务顺风车感恩费定价策略很感兴趣(怪我,祸从口出。。。),说京东这边最近也在这定价预测,让我给他讲一下。没办法,硬着头皮吹逼。。。

    2. 这个用的啥模型啊?具体怎么做的啊?(说到了逻辑回归和机器学习的排序算法)

    3. 你这个数据是怎么打标签的?

    4. 场景题:现在让你给从未出售的Iphone8进行定价预测,你要从哪些维度考虑?(考察吹逼能力,我吹了很长时间。。。)

    5. 接上问,面试官:你说的不错,从那些竞品当中,我们怎么选择出一个与我们的产品(Iphone8)最接近的竞品呢?你怎么考虑?

    6. 决策树ID3算法的特征选择指标,口述一下数学公式(信息增益)

    7. 场景题:现在我们有两个排序模型,分别是A和B,他们分别预测出了对应的排序的结果在我们的APP上,我们有真实地用户数据,那么怎么来评估这两个模型的好坏呢?用说出数学公式。(继续吹逼、、、)

    面试官说我没问题了,问我有啥问题要问的,我就随便问了下。

    8. 你是南方人吧,会考虑来北京吗?会不会更多的考虑上海。(哈哈哈,你要我,我去哪儿都行。。。)

    9. 提前批还投了哪些公司啊(楼主随便说了几个),面试官对我投了大疆表示有点惊讶。。。说这是你的老本行是吧2333

    10. 后面没事了能提前过来实习不?

    11. 目前在这家公司不是那种秋招转正的实习吧(23333,我当然说不是啦哈哈哈)


    作者:Serrie.
    链接:https://www.nowcoder.com/discuss/206593
    来源:牛客网

    1.自我介绍

    2.项目(问的很细致)
    3.实习时候做了些什么(楼主有两段实习经历)

    4.基础:

    梯度爆炸梯度消失

    L1范数L2范数原理,公式

    过拟合

    Yolo ssd fast系列区别

    包括yolo 1-3(对于yolo的细节提问)

    ssd 各种变体

    5.两道简单算法:

    判断链表有环

    二叉树中序遍历

    6.问答环节

    面试官建议:基础不错,多比较相关算法,多看state-of-the-art算法

    多运用到工程,想一想工程方向的优化。在有算法的基础做一做开发对于自己的成长有帮助

    作者:饺砸儿
    链接:https://www.nowcoder.com/discuss/205841
    来源:牛客网
    一面:面试官做推荐系统的
    LR和SVM的区别(写出各自目标函数)
    讲讲决策树(讲了三种决策树及分支点选择策略:手写信息增益和基尼系数等)
    过拟合(我结合SVM的参数C讲的)
    boosting方法(先讲了总的boosting方法,然后讲了gbdt,手推其原理)
    讲讲word2vector
    AUC及其几种用途
    结合我做的一个比赛项目讲了woe和iv,缺失值处理,集成方法,特征工程
    问了一个列表里面有很多英文单词,怎样选出频率出现最高的前几个词(这个没答好我开始以为是一到算法题,,,后来再提示下差不多答出来了:python里先用set处理后用字典储存)
    二面交叉面:面试官做大数据的
    问了我的实习经历(之前在一家AI医疗公司做CV,主要是器官和肿瘤的语义分割)
    问我最近看过的论文:答的是capsule和google的一篇用FFN做细胞分割的论文,然后让我讲了capsule
    然后问了CV和机器学习的不同点
    我这里二面没有手撕代码
  • 作者:piggyjam
    链接:https://www.nowcoder.com/discuss/205467
    来源:牛客网

    主要问的是项目,很基础的问题:

    1. 解释一下LDA主题模型,LDA的求解过程

    2. 中文分词器是怎么做的,有没有读过某种分词器的代码

    3. SVM解释一下,为什么SVM的复杂度高,怎么解决

    4. 为什么过拟合,怎么解决过拟合

    5. 其他的就是项目相关的


  • 作者:樱桃小丸子,并撩了你一下
    链接:https://www.nowcoder.com/discuss/205848
    来源:牛客网
    .自我介绍。
    2.问项目相关的,
    3.降维方法(因为介绍项目时说了下)
    4.别的降维方法?怎么解决特征组合问题?
    5.我主做分类,了解过深度学习方面内容?自然语言处理方面?
    6.学过词向量?说下为什么用词向量的方法?
    7.梯度消失是怎么解决的?
    8.逻辑回归跟线性回归的区别和联系?

    作者:R.Li
    链接:https://www.nowcoder.com/discuss/205718
    来源:牛客网
    头条 效率工程 算法实习
        笔试
        
            牛客上5月31日投递的简历。一场笔试,两场线上技术面     
    6月6日收到了笔试的邮件,当天就做完了,一共两道题,都很简单。
    第一道是给出一个数组,数组中有正数和负数,要求重新排列这个数组,使得原始数组中的正负数交替排列,且保证各自的相对顺序不变。
    第二道题也比较简单,描述是这样的

    我手中有一堆扑克牌, 但是观众不知道它的顺序。
    第一步, 我从牌顶拿出一张牌, 放到桌子上。
    第二步, 我从牌顶再拿一张牌, 放在手上牌的底部。
    第三步, 重复第一/二步的操作, 直到我手中所有的牌都放到了桌子上。
    最后, 观众可以看到桌子上牌的顺序是:13\12\11\10\9\8\7\6\5\4\3\2\1 请问, 我刚开始拿在手里的牌的顺序是什么?

    一面
    笔试结束后4天收到了通过的电话,中间隔了个端午节假期。面试官是个挺年轻的小哥,全程在问算法题。

    10G文件,每一行一个 uint32 数字。有一台1G内存的机器

    A. 找出最大的 k 个数
    B. 找出重复数字
    已知一天内用户登录登出的日志(数据量较大),求这一天用户在线的最大峰值和持续时间段

    日志包含字段(userid, login_time, logout_time)
    登录登出时间精确到秒
    对输入的unix风格的文件路径做精简。 例如:/a/b/…/./ 精简为 /a
    /a/b/…/./…/…/…/./…/a/b/ - > /a

    还有几道是面试官口述的,比如Two sum之类的
    一面还比较顺利,基本都答上来了

    二面
    我觉得很奇怪的一点是我投的是ML岗,但笔试和面试里几乎没有问这些话题相关的内容,而且没问项目经历。另外就是两轮面试的面试官都有问我懂不懂计算机网络和操作系统…但实际上我投的岗位要求里并没有提着两样技能,导致我这个面试很被动。
    先是手撕算法题
    给出字符串x,和字符集合y,求x中包含所有y中元素的最短字串
    这个题我在面试官的竭力引导下才把代码写完了…感觉面试官不是很满意,我自己反正也不怎么满意。
        之后问了我一些原理性的问题,面试官让我给他讲一下动态规划/逻辑回归/hash table的原理,了不了解其推导过程,感觉自己答得很差,都是一知半解。
    面试结束后面试官问我有啥想问的,我简单问了一下岗位的具体工作职责(因为招聘帖写的太不清楚了)。以及问面试官对我有什么建议,他跟我讲招人主要看两点,一点是对算法原理的掌握与了解,熟悉其推导过程;二是代码能力如何。他说从前边的面试和笔试来看,我的代码能力还ok,于是面试里就没太考察我这方面能力(我感觉他对我的原理掌握方面不是很满意吧= =)。
        最后还问了我什么时候能去实习,能实习多久。

        二面结束后的第二天上午就收到了感谢投递的拒信,没有撑到hr面。

        京东:
        boss某APP上投的简历,对方回复很快,约第二天下午在北辰那边面试。
        没笔试,两轮现场面
        一面
        详细讲了一个做过的DL&CV项目,图像增强+模型搭建+评估指标+最终效果;算法题手写快排,推复杂度;流形数据的随机抽样,这个我当时没想起来;问了LR/EM/Kmeans等常见机器学习算法的原理和推导
        二面
        手撕了两道算法题,数组中最大子数组的和,矩阵中最大子矩阵块的和,都不难,写的挺快的。
        讲了讲深度学习训练中过拟合/Loss不降等常见问题的处理方法;手写adam更新公式;稀疏数据如何建模/训练/优化,这个我不会;还有一些代码习惯。
        其他
        问了能实习多久,导师批不批,然后面试官给我讲了讲他们的主要业务,问我感不感兴趣,总体比较positive
        
        滴滴:
        boss某APP上投的简历
        没笔试,两轮现场面
        一面
        手推两层神经网络(input->FC->sigmoid->FC->sigmoid->output)的反向传播;L1,L2正则化的目的与原理;Tensorflow的一些代码习惯(你是写session.run还是estimator啊,有什么区别/优缺点);手写K-means伪代码(计算到中心点距离/判断迭代停止/更新中心点的坐标等核心函数,串一起),还被面试官夸写的挺快= =;算法题,给你若干个list,从每个list中选出一个元素,求全排列;
        二面
        讲一讲常见评价指标,TPR/FPR/ROC/AUC,IOU,F1;手写LR,讲一讲如果LR的效果不够好,你会怎么改进这个东西(这个问题很泛,楼主从检查过拟合欠拟合/ensemble/特征提取等方面乱答了一堆);样本不均衡你会怎么处理(重采样/Focal loss);
        
        百度:
        牛客上投递的简历
        楼主决定要去百度了= =所以这部分写的要从简一点。感觉整个流程效率还行,投递完简历5分钟就通过了,1小时收到了笔试邀约,当天晚上就做完了,然后等了两三天收到了面试邀约,面完后三四天给了结果。只是审批一个月太刺激了。
        笔试:机器学习&数据挖掘,难度不是很大,要求100分钟做完,楼主60分钟就写完了…
        电话面试:项目经历/基本机器学习算法原理/算法题2道,leetcode m难度
        其他:实习多久,面试官介绍了一下主要业务
        
        总结
        好心累的…每天时不时地看一眼邮箱,有没有新的笔试/面试邀请。被京东坑了一波,从面试结束到口头发offer再到HR通知意外情况,耽误了我大概半个月,期间没有投新的简历出去,还好楼主期间一直在复习ML和NLP的一些相关知识,后来的面试才没太难看= =。
        关于求职,好多岗位还是留给2020的毕业生的,对于我这种想找日常实习的可能就不是很友好…经验上来讲,还是要提前准备一下,楼主面头条的时候几乎是裸面,很多算法相关的东西忘记的差不多了,后续就一边复习一边投简历+面试,越往后越顺。以及广撒网的必要性,投了好多好多简历,最终收到面试邀约的寥寥无几,通过的就更少了…

  • 作者:要offer不要oppo
    链接:https://www.nowcoder.com/discuss/204240
    来源:牛客网
    k-means算法简述
    svm的优化目标
    分别写出线性回归和逻辑回归的损失函数
    生成式模型和判别式模型的区别
    c 基础语法
    过拟合与欠拟合
    方差与偏差
    linux文件操作
    神经网络的特点

    总之基本都是机器学习的基础知识,基本不涉及深度学习。

    三道编程题分别是:

    两个递增链表合并为一个递增链表
    二叉树和为某一值的路径(剑指offer原题)
    k-means算法

    面试是在上周三,去的望京东映客总部,一口气接连三面,基本就是一个下午。

    1.首先死磕项目,所以建议大家一定要把项目弄透彻不要在这里卡住自己。我和面试官在其中一个项目上讨论了很久,各持己见。然后我换了一种交流方式。我说,面试官你是不是这么想的,复述了一遍,面试官说对,我说那我回去再研究一下,可能糊涂了。这里不建议抱着说服面试官的念头和其争执,而是展现自己的交流能力和对算法的理解即可。

    2.面试官让我说说自己比较熟悉的机器学习算法,我说要不决策树吧,聊了聊决策树

    3.又聊了聊逻辑回归,写出了其损失函数和反向传播公式

    4.手撕代码。一个数组里,有两个只出现一次的数字,其他都是出现两次,请在o(n)时间复杂度内找出这两个数字

    5.python基础语法: 迭代器和列表的差别,装饰器的作用。

    然后面试官说你等一会。我等了十几分钟,二面面试官来了。

    1.写出逻辑函数的损失函数

    2.为何使用交叉熵作为损失函数,与MSE等相比其优点在哪里?

    3.word2vec中的skip-garm的下采样简单说一下

    4.神经网络中经常遇到收敛速度慢的问题,如何解决?

    5.你说优化梯度下降函数,请说出常见的梯度下降函数以及他们的优缺点,最好写出公式

    6.你遇到过什么困难,如何解决?

  • 作者:offer收割机机
    链接:https://www.nowcoder.com/discuss/205260
    来源:牛客网

    一面

    • Power(a,n) 常规递归方法写完让写一个O(1)的方法
    • 岛计数问题 dfs
    • 哪些处理过拟合的办法:正则,剪枝,dropout
    • CNN里面能自然起到防止过拟合的办法
    • bagging vs boosting简述
    • SGD每步做什么,为什么能online learning
    • Logistic Regression损失函数,怎么来的

    二面

    • CNN反向传播细节,怎么过全联接层、池化层、卷积层
    • Adam优化器的迭代公式
    • CNN多分类损失函数 softmax
    • 字符串最小编辑路径

    三面

    • 线性回归R^2公式及意义
    • p-value意义,怎么算?怎么做单边检验
    • 随机过程 稳态是什么
    • 时间序列 常用模型,arima模型的公式?自回归在机器学习中的应用?
    • 计算几何分布期望
    • 熟悉什么机器学习算法(SVM),写损失函数(hinge+正则)
    • 找完全二叉树最后一个节点
    • 找字典序的第k个数
  • 全部评论

    相关推荐

    11-15 18:39
    已编辑
    西安交通大学 Java
    全村最靓的仔仔:卧槽,佬啥bg呢,本也是西交么
    点赞 评论 收藏
    分享
    09-27 10:54
    重庆大学 C++
    人已微死:致敬传奇耐测王。
    投递小米集团等公司10个岗位
    点赞 评论 收藏
    分享
    点赞 3 评论
    分享
    牛客网
    牛客企业服务