首页 > 秋招面试记录
头像
爱笑的漠
编辑于 2022-04-12 10:07
+ 关注

秋招面试记录

因为在实验室和实习时基本做的都是推荐相关的,因此投的也大都是推荐算法岗位
开个帖子就当记录这兵荒马乱的秋招吧
以后看看可能还挺有趣。
2021/9/16 小米 搜索与推荐算法工程师 一面
1.怎么实现循环队列
2. pandas里iloc和loc的区别
loc函数:通过行索引 "Index" 中的具体值来取行数据(如取"Index"为"A"的行)
iloc函数:通过行号来取行数据(如取第二行的数据)
3. pandas里groupby, 取均值
4. 建堆过程
5. Scala 怎么去重
scala> List(1,2,2,3).distinct
scala> List(1,2,2,3).toSet.toList
6. CART建树过程
7. 逻辑回归求导
8. FM化简, 时间复杂度如何从O(n2k) -> O(nk)
9. 算法题:前序遍历,两个相交链表交点,二叉树中值最大的路径

2021/9/16 滴滴 算法工程师 一面
1. 介绍论文和实习
2. 算法题:二叉树的前序遍历,迭代方式
3. 给我介绍他做的用户增长业务是干什么的
4. 手写FM公式并求导
滴滴二面
1. 实习公司线上用的模型介绍下
2. BN和LN的区别
3. BN和dropout能一起用吗
4. 常有激活函数及其优缺点
5. 介绍下你熟悉的推荐系统模型
6. 算法题:组合总数

2021/9/17 易车网 推荐算法 二面
1. 介绍论文和实习工作
2. 介绍实习公司线上模型
3. FM推导口述下
4. 什么是梯度下降法
5. 常有优化器
6. 分类问题常用指标
7. AUC介绍下
7. 算法题:最大子序和 要求输出子序列的起始、结束位置

2021/9/24 阿里天猫精灵 一面
1. 召回怎么做性能验证
2. 主动学习和小样本学习了解吗
3. 树模型怎么判断算各个特征的重要性
4. 字典创建时是怎么分配空间的

因为某垃圾公司毁校招生offer,我又要开始春招了,
2022/3/30 网易有道推荐算法 一面
1. 激活函数了解哪些
2. dropout了解吗
3. 最大池化,平均池化的反向传播怎么做
在反向传播时,梯度是按位传播的,那么,一个解决方法,就是如何构造按位的问题,但一定要遵守传播梯度总和保持不变的原则
对于平均池化,反向传播时,把池化后的神经元的梯度均分为n等份传递给池化前的神经元。
对于最大池化,在反向传播时,框架仅需要将该区域的梯度直接分配到最大值神经元即可,其他神经元的梯度被分配为0且是被舍弃不参与反向传播的,
但如何确认最大值神经元,这个还得框架在进行前向传播时记录下最大值神经元的Max ID位置
4. rnn、LSTM了解吗
5. 算法题 739. 每日温度

2022/4/1 网易有道推荐算法 二面
1. 设计一个为学生推荐题目的推荐系统
这道题其实是有一个前提的,与传统的推荐系统不同,题目推荐系统是不需要考虑用户喜爱程度的,
作业都是老师强制学生必须完成的,到时没考虑到。
2. 求平方根 梯度下降法 (没做出来 其实公式已经推出来了 太可惜了)
def canReorderDoubled(self, arr: List[int]) -> bool:
    lr = 0.001
    y = 8.0
    x = 1.0
    while abs(x*x-y)>=0.001:
        x = x-4*x*(x*x-y)*lr
    print(x)
3. 求x的y次方
剑指 Offer 16. 数值的整数次方

2022/4/7 网易有道推荐算法 三面
1. 详细介绍下实习时做的召回算法
2. 要召回长尾物品怎么办
3. 为什么投我们部门

2022/3/31 bilibili推荐算法 一面
1. 除了你项目中用到的swing模型,你还知道哪些召回模型
2. 介绍GBDT和XGboost。
3. 介绍知道的评价指标
4. auc提升,GAUC没有提升
答:GAUC没有得到有效提升,AUC提升来自于排序无关的bias。
5. 代码实现计算AUC

# 就是先对样本按概率从小到大排序,将正样本的序号求和再减去正样本数*(正样本数+1)/2 再除以正样本数*负样本数
def get_auc():

    label = [0, 0, 1, 1]
    y_ = [0.1, 0.4, 0.35, 0.8]

    arr = []
    m, n = 0, 0
    for x, y in zip(label, y_):
        m += 1 if x==1 else 0
        n += 1 if x==0 else 0
        arr.append((x, y))
        
    arr = sorted(arr, key=lambda x:x[1])
    sumn = 0
    for i in range(len(arr)):
        if arr[i][0]==1:
            sumn += i+1
    print((sumn-m*(m+1)/2)/(m*n))

2022/4/7 b站推荐算法 二面
1. 除了swing召回算法,还知道哪些召回算法
2. 多目标模型了解吗
3. 如果多个目标中有一个的label特别稀疏怎么办
4. 除了多目标模型,还有什么办法解决“跷跷板”现象
5. 优化器知道哪些
6. 哪个优化器适合于这种label特别稀疏的目标
7. 手写AUC
8. 知道怎么将AUC的计算过程优化到线性复杂度吗

2022/4/2 字节懂车帝 推荐算法 一面
1. AUC指标线下线上不匹配是什么原因造成的
2.半监督方法除了你用的还有哪些
3. 你知道的优化器有哪些
4. 算法题 25. K 个一组翻转链表
(注意这道题与leetcode的稍有不同,最后少于k个结点的也要翻转)

2022/4/12 航旅纵横 机器学习 一面
1. swing算法与itemcf的时间复杂度
2. swing算法的map和reduce的数据是什么样的
3. swing算法召回的种子数据是怎么选取的


更多模拟面试

全部评论

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

近期热帖

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

热门推荐