拿下技术面上传简历

召回返回 3000 个候选,精排模型 batch=256 打一次分要 20ms,整条排序链路的预算只有 100ms。请回答:① 先做预算核算,说明为什么必须加一级粗排、粗排大概要截到多少个;② 粗排和精排的差别具体体现在哪几处(模型结构、特征量、样本、目标),不要只说“模型更小”;③ 有人提议“把精排的 200 维特征砍到 20 维直接给粗排用”,这个做法有什么问题,你会怎么让粗排尽量贴近精排的排序结果。

推荐与搜索召回与排序校招知识点 1 个

面试官在考什么

判断候选人是否会做吞吐/预算核算,是否理解粗排存在的理由是算力约束而非模型偷懒,以及是否知道用蒸馏对齐两级排序。

粗排精排

回答框架 · 前两步

  1. 预算核算:3000 条按 batch=256 打分约需 12 个 batch × 20ms ≈ 240ms,超 100ms 预算,所以必须先截断;若粗排把候选压到 300 个,精排只需约 2 个 batch ≈ 40ms,留出余量。
  2. 差别不止是模型小:粗排模型容量/结构更简单(双塔、FM、小 DNN),特征更少且偏向可提前算好的统计特征、少用实时交叉特征,样本常从精排样本中采样,目标上要逼近精排打分而不是只拟合点击。

还有 3 条答案要点、 3 层追问、 5 个常见坑, 以及针对你简历的追问路径,在定制报告里。

上传简历,生成我的题库先看示例报告

同一能力域的其他题