拿下技术面上传简历

训练一个 CART 二分类树,10 万样本、30 个特征,其中一个是“用户 ID”,有 5 万个不同取值。你不加任何限制直接训练,训练集准确率 0.99、验证集 0.71。把 max_depth 限制到 6 之后,用户 ID 仍然出现在根节点附近。请解释原因,并给出你处理这个特征的方案。

机器学习基础监督学习1-3 年知识点 1 个

面试官在考什么

考察是否理解树模型对高基数特征的偏好机制,以及能否把“ID 类特征”正确转化为可用特征而不造成标签泄漏。

决策树

回答框架 · 前两步

  1. 原因是 CART 对多取值特征有系统性偏好:5 万个取值意味着每次二分有近 5 万个候选分裂点,候选越多越容易在训练集上找到一个让不纯度大幅下降的切分,这是多重比较带来的过拟合,即便用 Gini 而不是信息增益也一样。
  2. 限制深度只能缓解不能根治:根节点附近已经按身份把样本切开了,后面再浅也没用,泛化必然差。

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

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

延伸阅读

想看这个方向的整体准备路线? 进入「机器学习基础」方向页

同一能力域的其他题