汇总了自己去年秋招的面试记录,希望给大家提供一些帮助。
提前祝各位都能拿到心仪的offer~
个人情况:
双985科班,研究生主要做推荐相关研究, 下面的面经基本上即为自己秋招阶段(含提前批)参加过的所有面试。
p.s.
欢迎大家投递b站实习,随时可查进度, 可以帮忙修改简历、辅导面试
通过下面链接即可
https://jobs.bilibili.com/social/positions?token=b8f76b21-800a-403f-a8fc-d0b3f7373ec1&page=1
coding:
滑窗最大值 二维滑窗
提问:
FM公式推导: 最后怎么计算的
AUC公式特点
LR的损失函数为什么是交叉熵
GNN工作的背景和具体做法
二面 50min
自我介绍
项目介绍
项目提问
FM的原理
具体模型产出, 讲的不太好
模型过拟合怎么评估, 怎么处理
召回阶段和排序阶段的任务差异对比
FM与YoutebeDNN模型的异同点
ANN技术了解吗
GNN:graphsage了解么, 简单介绍
业务情况
用户冷启动怎么做
怎么用GNN做
Coding思路说明:
编辑距离
三面 55min
项目介绍
建议: 可以使用pairwise方式进行训练 softmax 或者 hingeloss
MIND:
提示: 创新点在于track: weight
本质: 进行特征聚类
介绍实习项目; 提问: FM 的原理; 如何多路召回
基础提问: Bert了解么,介绍一下Transformer; 介绍一下word embedding的方法
手写LR公式,以及其loss函数
手写sigmoid函数,并分析其原理;并与其他激活函数进行对比
代码题目:
跳一跳问题; 分两问给出
商业化 60min 二面
题目: 293. 滑动窗口最大值
分析时间复杂度 O(N + W) 时间复杂度分析的不对
项目提问:
FM的公式: 二叉项的计算方式: 写的不太清楚
1/2 \sum{f = 1}^k ( (\sum_i=1 v_if x_i)^2 - \sum{i=1}^n v_{i,f}2x_i2 )
具体交叉计算距离
对推荐其他框架了解么:
Wide&Deep细节: 优化器使用情况 wide FTRL deep使用
NLP提问:
word2vec如何处理OOV问题: fast2text grams
还有其他方式设计处理OOV么?
Word Embedding 如何处理未登录词?
机器学习基础提问:
LR的损失函数
LR能用MSE函数代替么: 不能, 因为LR+MSE函数是非凸函数
MSE 会有梯度消失现象
MSE 的导数非凸函数,求解最优解困难
反问环节
介绍大根堆,大根堆的定义是什么?如何构成大根堆;
经过排序的完全二叉树
代码考察: 非递归方式实现大根堆
机器学习基础提问:
了解GMM么
了解EM么
了解决策树么 建树过程如何?
adaboost模型了解么, loss函数如何写: 指数函数
深度学习基础提问:
online learning了解么
FTRL与LR的最大区别在于什么? FTRL的核心思想是什么
个人情况了解:
兴趣方向与工作方向
个人coding能力如何?
考虑提前来实习么?
同组能力如何?
coding题目:
LC152. 连续子序列的最大乘积
反转单链表
语言基础:
map unordedmap
list linkedlist array:
概率论与统计
协方差计算及其意义, 其与相关系数的差异
概率密度函数的解释
贝叶斯公式的举例及解释
ML基础
朴素贝叶斯解释, 什么是条件独立,与独立性有什么区别
kmeans聚类与混合高斯模型的区别与相同点
bagging和boosting的区别:
全连接网络初始化问题:
MLP能不能参数全初始化为1
参数初始化有哪些方式
LR能不能参数全初始化为1
回归问题中为什么常对特征进行归一化?
L1和L2正则化的区别
为什么L1能得到稀疏解?
二面 50min
以项目介绍为主
发散提问
coding:
两个有序链表合并
项目提问: FM怎么做的
DSSM和FM的区别
其他向量召回了解吗 MIND模型中的胶囊网络怎么做的?
GNN相关: 图怎么构建的; GNN与我们常用的NN有什么区别?
基础提问:
adam与sgd的主要区别是什么?为什么对稀疏特征学习效果比较好?
coding:
迷宫搜索: 给定10*10的迷宫, 入口和出口固定; 搜索最短路径
dfs/bfs搜索即可
实际使用bfs搜索, 直接得到最小步数。
45min 一面
实习项目介绍及提问
介绍GNN研究项目,提问:social rec和session rec的差异
编程题目:
最长回文子串: 使用中心双向拓展完成;
进一步提问: dp的方式怎么设计
项目提问:
模型优化目标: 时间 交互
特征使用情况
基础:
CF相关: item CF user CF的计算方式
基于模型如何计算
向量召回如何实现,向量线上如何生成
了解召回框架么
介绍一下图采样
GraphSage的特点, 常用的聚合方法
coding:
不同的二叉搜索树数量
项目提问:
FM原理, 索引构建方式
多路召回的量如何调配设置
图神经网络边权重设计
基础:
xgb与gbdt的区别;
L2与L1的区别
coding:
给n个字符,从中选m个(排列问题,n个字符不重复)
三面
项目介绍
基础知识提问:
SVM原理:
SVM核函数的条件: 正定性 没答出来
SVM常用核函数
C++代码量是多少
LSTM与RNN的区别
工业界常用的模型应该是什么? GRU
计算资源和性能效果
即从性价比出发
反问环节
代码: 去除字符串相邻字符: 使用栈解决
思考题: 编译选项优化, 给定N个编译选项,如何设计优化目标; 设计优化模型; 考虑时间复杂度
代码: 二叉树层次遍历
提问: C++相关:
vector内部实现 queue内部实现
C++ 11新特性有哪些
iterator的实现方式
const与constexptr的区别
c++ 11 构造函数
虚函数作用与实例 (当父类与子类采用virtual函数参数都为default)
了解模板与元编程么
左值与右值
提问: 数据结构相关
图的存储方式与遍历方式
bfs与dfs的区别,适用场景
提问: 操作系统
进程与线程的区别
进程空间
给定一个hello world程序, 进程空间的动态调整过程
给定一个递归程序,分析栈区的变化
提问: 体系结构方面
给定指令 ADD R0 R1 R2 分析CPU执行过程
交流项目和其中遇到的问题
职业规划分析
一面
项目提问
深度学习提问: Bert介绍
机器学习提问: 决策树介绍, 节点划分的方式
题目: 快排实现; 快排复杂度;
最差时间复杂度 O(N^2) 优化方法
项目提问: FM数据样本如何构造
针对position bias 如何处理
比赛提问: 具体做的内容; 为什么采用xgb
介绍一下GNN推荐 以及它是否可以落地
代码题目:
给定一个不包含重复数组的整数数组, 和一个目标数字target; 返回能够构成target的数字组合; 数字可重复使用; 但最后的结果不能有重复的组合。 回溯法完成即可
一面
项目介绍: 推荐
提问:
gbdt与xgboost的差异
gbdt与rf的差异
开放问题:
电池包工况曲线构建: 聚类
聚类方法有哪些: dbscan与kmeans的区别
项目介绍: 推荐
开放问题:
异常点检测如何做?
方差的作用
介绍FM及其变形
介绍FM与DSSM区别
介绍数据处理: 样本构建(正负样本) + 数据流 + 离散化处理 (分桶)
介绍一个熟悉的模型
熟悉SVM么 (不怎么熟悉)
- 其他: C++中的虚函数的作用
个人优势与劣势
个人职业规划
期望薪资
最突出的个人评价