去年某大厂算法岗终面,一道" fraud detection 系统报警,封不封用户"的送分题,挂掉了八成候选人。不是他们不会算贝叶斯,是他们没搞懂这道题在考什么。
面试官要的不是公式推导,是你在不确定中做决策的能力。
我翻遍了LeetCode讨论区和一亩三分地面经,发现个诡异规律:数据科学面试里80%的概率题,都集中在20%的核心场景里。但这20%被包装成了八百种变体,专门骗背题党。
那道"简单"题的陷阱
回到那道 fraud detection(欺诈检测)题。我当时的表现堪称教科书级翻车——张嘴就是正态分布、阈值调参、假阳性率控制,甚至想推导贝叶斯后验。
面试官打断我:"别算。封,还是不封?"
我愣住。这题没有给先验概率,没有给损失矩阵,没有给业务上下文。按课本解法,缺条件。
但面试现场没有"条件不足"这个选项。你必须选。
后来复盘才懂:这道题在模拟真实工作场景。线上模型报警时,运营同学不会等你跑完AB测试再决策。你要在信息不完备时给出方向,同时说清楚需要补什么信息。
标准答案大概是:先冻结小额交易,同步人工复核,24小时内给结论——而不是直接封号或完全无视。
这个答案不值钱。值钱的是推导过程:你权衡了哪些成本(误封流失 vs 欺诈损失)、默认了什么假设(报警准确率的历史表现)、以及下一步要验证什么。
那20%核心场景是什么
我扒了200+面经,把概率题归类后发现,高频考点就四类:
第一类:条件概率陷阱
经典题型是"疾病检测准确率99%,患病率0.1%,检测阳性实际患病的概率"。这道题考的不是你会套贝叶斯公式,是你能不能识别基础概率谬误(base rate fallacy)。
很多候选人能算出正确答案不到10%,但讲不清为什么直觉会骗人。面试官要的是你用自然语言解释:罕见病的真阳性会被海量健康人群中的假阳性淹没。
第二类:期望值决策
"抽卡游戏设计:10%概率出SSR,期望抽多少次?如果要保证95%玩家都能抽到,保底设多少?"
第一问是几何分布,第二问是负二项分布的分位数。但核心考点是:期望值和保障线是两个业务指标,不能混为一谈。运营要的是"大多数用户有体验",不是"数学期望最优"。
第三类:AB测试陷阱
"实验组转化率3.2%,对照组3.0%,样本量各10万,能上线吗?"
会算p-value的候选人很多,能说出"效应量太小,实际收益覆盖不了切换成本"的很少。这道题在考统计显著性和业务显著性的区别。
第四类:采样偏差识别
"模型在训练集AUC 0.95,线上效果暴跌,可能原因?"
标准答案包括分布漂移、特征泄露、样本选择偏差。但高分回答会追问:训练数据是怎么采的?如果是"历史审批通过用户",那拒绝人群的表现本来就是盲区。
为什么背题没用
这四类题的共同点是:公式是起点,业务翻译是终点。
我见过候选人把贝叶斯公式写得飞快,但解释不了"为什么先验概率比似然函数更重要"。也见过有人能算对置信区间,但不知道当样本量不够时,应该建议"继续跑实验"还是"凭经验决策"。
更隐蔽的坑是题目变形。同样是条件概率,可以包装成:
• 推荐系统"点了没买"的用户,实际购买意愿多高?
• 搜索广告"点击后跳失",是创意问题还是匹配问题?
• 风控模型"历史无逾期但突然大额借款",违约概率怎么估?
外壳不同,骨架一样。识别骨架的能力,来自对业务场景的积累,不是刷题。
一个实用的准备策略
如果你正在准备这类面试,我的建议是:每道题强制自己回答三个问题。
第一,如果数据给的是错的,我的结论怎么变?这训练你对假设的敏感度。
第二,如果我要向非技术同事解释,怎么说?这逼你用业务语言重构技术概念。
第三,如果只有一半信息,我敢不敢决策?这模拟真实工作的压力场景。
回到开头那道 fraud detection 题。我后来问那位面试官,什么样的回答能过。
他说:"能说出'我需要知道误封一个用户的平均损失,和放过一个欺诈用户的平均损失'的人,基本稳了。因为他在把概率问题翻译成决策框架。"
概率论的本质不是计算不确定性,是在不确定中分配资源。
你最近一次面试被问到的概率题,表面在考什么,实际在考什么?
热门跟贴