一面
算法题:355. 设计推特
- AUC怎么计算
- 如果把预测结果随机分成两部分,这两个AUC有什么关系
- 熟悉的优化器有哪些
- 说一下adam
- adam的一阶矩和二阶矩对于梯度遇到陡峭和平坦的部分怎么处理
- 怎么认识交叉熵,交叉熵和KL散度关系
- 开放题:如果一个用户老是点第一个推荐结果,怎么办
二面
算法题1:实现一个np.matmul 需要判断边界条件
算法题2:用梯度下降法实现math.sqrt,只允许使用加减乘除,重点是loss怎么定
- 详细介绍word2vec,我说的比较多大概讲了15分钟,包括负采样和分层softmax的实现方式,框架和论文的负采样不同之处
- 分层softmax缺点,讲了哈夫曼树可能不平衡,面试官想要的是分到同一个class的词可能会近
三面
算法题:水题 105. 从前序与中序遍历序列构造二叉树
- 比对我的github详细问了论文,详细问了时序的概念和transformer里的mask,写了loss
- 口述GCN源码实现
- 计算CNN操作参数量,复杂度,操作后的shape
- 手推Adam
面试官觉得你行的话,基本会给连面,不能连面也会当天约。整体下来字节基本上3面都是压力面,问到不会为止,知识积累和心态都需要比较好。二面被榨干,算法题2就写了个loss剩5min,跟面试官求饶不想写了
目前在等HR面,写个面经攒人品,希望HR老哥给个机会