ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

第四范式建模笔试全解析:特征工程与业务建模的备战之道

第四范式建模笔试全解析:特征工程与业务建模的备战之道 1. 从笔试题看第四范式在考什么每年秋招季AI公司的笔试题都会被拿出来反复琢磨。第四范式作为做机器学习平台和AI落地解决方案起家的公司它的2019校招建模笔试题在当年引起过不少讨论——不是因为题目特别难而是因为考察方向非常第四范式不考手推SVM不考CNN反向传播而是把大量篇幅放在特征工程、业务建模、结构化数据上。先说个背景。2019年前后AI行业正处在从模型炫技转向业务落地的节点。第四范式的核心产品是机器学习平台服务的客户集中在金融、零售、制造这些传统行业。这意味着他们的建模工程师面对的不是ImageNet不是BERT而是成千上万张的表结构数据、客户行为日志、风控规则库。所以笔试题目基本围绕一个核心问题给你一堆业务数据和业务目标你如何把它变成一个可上线、可解释、有效果的模型方案。这篇文章不打算复述原题毕竟题目版权和时效性都在而是结合当年笔试的考察逻辑拆解这类AI公司建模笔试的典型题型、解题思路、准备方法。不管你是准备校招还是社招只要目标岗位是机器学习/数据挖掘方向这套分析都有参考价值。2. 题型拆解五大类必考方向结合当年考生回忆和同类AI公司笔试风格第四范式的建模笔试题大致可以归为五类。每一类背后都对应一个实际工作场景这也是它和普通算法题最大的区别——几乎所有题目都能在真实业务里找到影子。2.1 特征工程与数据预处理这类题在笔试中占比最高一般会给一张业务表包含数值型、类别型、时间型字段甚至夹杂缺失值、异常值、重复记录。问题通常是你会如何构造特征、处理缺失值、选择特征考察的核心不是你会不会调用fillna而是你有没有一套可复用的特征工程方法论。比如面对时间戳字段能不能想到拆分出距上次行为间隔近7天行为频次工作时段标记这类衍生特征。面对类别特征能不能根据基数和目标关系选择Label Encoding、One-Hot还是Target Encoding。常见的失分点在只答操作、不讲依据。比如很多考生会写用均值填充缺失值但说不清什么时候该用均值、什么时候该用中位数、什么时候该单独分桶。这类题目想看到的是你的判断逻辑特征分布是否倾斜、缺失是否与目标相关、填充方式对树模型和线性模型的影响有什么不同。2.2 模型选择与算法原理第二类是模型相关但一般不会让你手写损失函数梯度。更多是给出一个业务场景让你选择合适的模型并说明理由。比如预测用户是否会逾期数据有10万样本、200个特征其中大量类别型变量你会选择什么模型这类题目要拿高分需要建立一套模型选型框架。最基础的框架是数据规模多大、特征类型是什么、可解释性要求高不高、上线环境有没有推理延迟限制。比如风控场景天然要求可解释性你直接说用深度神经网络可能就不是最优解而XGBoost/LightGBM加SHAP解释会更稳妥。另一个高频考点是模型对比。比如逻辑回归和决策树的优缺点对比、XGBoost和随机森林的差异、Bagging与Boosting的本质区别。这些概念如果只是背定义很难应对追问最好能用自己的话把底层逻辑讲清楚。我从实际面试经验来看能把GBDT为什么用负梯度拟合残差用三句话讲明白的候选人模型题基本都能拿高分。2.3 业务理解与建模方案设计这是第四范式笔试最有辨识度的部分。会给出一个完整业务问题比如某银行信用卡部门想要降低客户流失率现有数据包括客户的个人信息、近6个月交易流水、客服交互记录请设计一个完整的建模方案。这种题没有标准答案但考察维度非常明确你对业务目标的理解准不准、能不能把业务问题转化为数学问题、方案里有没有考虑到数据口径、样本定义、标签设计、评估指标、上线监控这些工程细节。一个常见的误区是把方案写成机器学习项目八股文——数据清洗、特征工程、模型训练、评估每一步都点到但每一步都说得肤浅。真正能拿高分的方案往往在细节处见真章。比如会主动讨论流失用户如何定义是连续3个月无交易还是6个月无交易沉默期设定多长会影响正样本数量和业务干预节奏。再比如评估指标的选择流失预测是典型的不平衡分类问题单纯看准确率没有意义应该看AUC还是PR曲线、Top 10%用户召回率不同指标对应不同业务侧重。2.4 代码实现与算法落地编程题通常不会太难比LeetCode中等题略简单但会嵌入数据处理和模型训练的语境。常见的题目有手写K折交叉验证、实现一个简单的梯度下降、用Pandas完成特定数据变换、手写F1分数的计算逻辑。这类题考察的是基本功是否扎实。我见过不少候选人理论聊得头头是道一写代码就露馅——K折交叉验证的索引切分写错、数据标准化时把均值和方差用全量数据计算导致数据泄露、算混淆矩阵时行列搞反。这些细节恰恰是笔试出题人想筛掉的。准备这类题目没有捷径就是多写。把Sklearn的StratifiedKFold、GroupKFold底层逻辑自己实现一遍把Pandas常用操作groupby、merge、pivot、apply过一遍基本就能覆盖80%的考点。2.5 开放题与业务敏感度最后会有一两道开放题比如你怎么看待AutoML对建模工程师的冲击如果你来设计一个反欺诈模型最重要的三个点是什么。这类题目没有对错但有优劣。高分答案通常有一个共同特征不是只谈技术而是把技术放在业务约束和成本收益的框架下谈。比如谈AutoML不是焦虑取代而是说AutoML能解决特征组合搜索和超参调优的重复劳动但业务逻辑梳理、样本定义、冷启动方案、模型风险监控这些环节仍然依赖人来决策。这种视角的差异往往就是普通候选人和优秀候选人的分水岭。3. 实战演练典型题目与解题思路还原光拆题型不够我们来实际操作一遍。下面还原四道当年笔试风格的典型题目给出完整的解题思路。这四道题分别对应特征工程、模型方案、算法实现、业务开放题基本就是整套笔试试卷的缩影。3.1 特征工程题客户流失预测的表单处理假设题目给出一个DataFrame包含用户ID、注册时间、最近登录时间、近30天登录次数、账户余额、用户等级普通/黄金/铂金/钻石、是否完成实名认证要求构造不少于8个特征并说明每个特征的设计动机。一个让我印象很深的思路是有候选人直接把这个表拆成四个维度去构造特征时间维度、频次维度、价值维度、身份维度。这个分类意识本身就能体现结构化思维。时间维度上除了最近登录时间直接用更关键的是构造注册到现在的天数和距今多少天未登录。后者往往比单纯的最近登录时间更有业务含义因为用户活跃度的衰减趋势是流失的核心信号。频次维度上近30天登录次数本身可以用但还可以细分为近7天登录次数和近30天与近7天的比值。这个比值很有意思它反映了近期活跃度是上升还是下降。比如一个用户近30天登录了15次但如果其中12次都集中在第一周说明最近两周其实在流失的边缘。价值维度上账户余额直接使用外还可以根据余额分位数做分桶。这里个人建议做成有序类别特征而不是直接等宽分箱因为账户余额分布通常是长尾的等宽分箱会在低余额区间产生大量空箱。身份维度上用户等级和实名认证都可以利用。实名认证本身就是一个强特征结合等级可以做交叉特征——比如高等级但是未实名认证这种异常组合往往暗示账户存在异常或者用户使用意愿不高。特征工程题的关键不只是特征数量而是每一个特征都有清晰的业务假设。你构造一个特征就要能说清楚我观察到了什么现象、这个现象为什么会与目标相关、这个特征在什么条件下会失效。3.2 模型方案题信贷风控模型设计题目背景某互金平台有100万注册用户其中5万人发生过借贷行为逾期率为2%。平台希望建立风控模型对新增借贷申请进行风险评分。你手头有用户注册信息、电商消费数据、社交行为数据、历史借贷记录。请设计完整方案。这道题首先需要拆解业务约束。样本量只有5万用户发生借贷其中逾期仅1000人左右这个正样本规模直接决定了模型复杂度上限。如果选择深层神经网络很容易过拟合可解释性也无法满足金融监管要求。比较稳妥的方案是选择GBDT类模型XGBoost或LightGBM配合逻辑回归做交叉验证和解释性补充。特征设计要围绕四个数据源展开。注册信息主要提取身份特征比如年龄、职业、地区这些特征稳定性高但区分度相对有限。电商消费数据能挖掘消费能力和稳定性比如月均消费金额、消费类目集中度、夜间消费占比——夜间消费占比在当时被很多团队验证与逾期风险存在相关性。社交行为数据的价值在于评估社交网络的稳定性和质量比如联系人数量、通话时长分布、深夜通话比例等。标签定义上有一个容易被忽略的细节观察期和表现期的窗口设置。不是所有逾期都算负样本通常需要定义首次逾期超过30天才标记为负样本用来排除临时性还款困难的情况。更严谨的做法是区分短期逾期和长期逾期分别建模或分别设计权重。评估指标方面因为正负样本比例悬殊不能用准确率。AUC可以作为整体排序能力的参考但更贴近业务的是提升度指标——比如根据模型评分从高到低排序Top 5%用户能否覆盖60%以上的逾期用户这个数字直接决定了风控策略的ROI。方案的最后一定要落到上线后如何监控和迭代。模型上线不是终点要设计PSI群体稳定性指标监控特征分布漂移设定每日评分分布对比发现衰减就启动重训练。这在笔试中写出来会明显拉开与其他考生的差距。我当时带过的实习生里能主动写这一段的不到20%。3.3 代码题手写K折交叉验证算F1代码题一般会给一个简化版任务。比如给定一个二分类预测结果数组y_true和y_pred均为0/1手写F1分数计算函数然后实现一个5折交叉验证的框架代码。先算F1核心是精确率和召回率的计算。需要先算混淆矩阵的四个值TP预测为正实际为正、FP预测为正实际为负、FN预测为负实际为正、TN预测为负实际为负)。精确率是TP/(TPFP)召回率是TP/(TPFN)F1是2精确率召回率/(精确率召回率)。很多考生会在一个地方栽跟头直接用Sklearn的f1_score交卷但题目明确要求手写。这时候即使结果一样评卷人也会认为你基本功不扎实。手写一遍其实只需要十几行代码但考察了你是否真正理解混淆矩阵的含义。交叉验证部分推荐手写循环而不是直接调cross_val_score。手写的好处是你能在每一折里控制数据处理流程避免数据泄露。一个典型的泄露场景先对全量数据做标准化再切分训练集和验证集这样验证集的均值和标准差其实已经看过了评估结果会偏乐观。正确的做法是只在训练集上计算均值和标准差然后应用到验证集上。这个细节在工作中极其常见也是面试官喜欢追问的点。3.4 开放题AutoML会不会取代建模工程师开放题没有标准答案但回答的思路框架很重要。我的建议是不要陷入会还是不会的二元对立而是分析AutoML能做什么、不能做什么、边界在哪里。AutoML擅长的是超参搜索、特征组合搜索、模型结构选择这类在明确目标函数下的全局寻优问题。但建模工程师的大量工作其实发生在AutoML介入之前和之后。之前是对业务问题的理解、对数据口径的确认、对标签定义的推敲、对特征工程业务假设的建立。之后是对模型结果的业务解释、对风险边界的把控、对上线后效果的持续监控。可以有观点AutoML在标准化场景比如常规风控评分卡确实能替代大部分调参工作但在非标准场景比如新业务冷启动、多目标冲突、强约束条件下仍然需要人来定义问题和设计约束。这个回答既承认了技术趋势也守住了建模工程师的价值定位比较符合第四范式这类公司对候选人理解AI落地方向的期待。4. 准备策略有效刷题与知识体系构建笔试准备如果只是刷题效率很低。更有效的做法是围绕业务建模能力构建自己的知识体系再通过刻意练习把知识转化成解题速度。4.1 建立机器学习核心知识框架第一步是梳理机器学习核心知识框架。建议按这个顺序过一遍特征工程、经典模型线性模型、树模型、SVM、KNN、集成学习Bagging/Boosting/Stacking、模型评估交叉验证、评估指标、过拟合与欠拟合、概率图模型可选、深度学习基础了解适用边界即可。每一块都要做到能用自己的话讲清楚。比如特征工程这一块要能回答类别特征有哪些编码方式各在什么场景下用连续特征为什么要分箱分箱的坏处是什么文本特征如何向量化TF-IDF的TF和IDF分别解决什么问题时间特征能衍生哪些子类型推荐一个自检方法找一面墙或打开空白文档尝试不看资料把某个主题的完整知识脉络复述出来。如果卡住了说明这块掌握不透彻回去查漏补缺。这个方法的效率远高于反复看教程因为它强制你输出而不是被动输入。4.2 刷题与面试题库的选择刷题方面推荐三个渠道。第一个是Kaggle竞赛的入门级比赛比如Titanic、House Prices重点不是名次而是通过完整实践理解建模流程中的每个环节。第二个是各类公众号和GitHub整理的机器学习面试题库不要直接背答案而是先自己答一遍再对照参考答案看差异。第三个是经典教材的课后题《统计学习方法》和《机器学习》西瓜书的课后题质量很高尤其是推导和证明类题目。刷题频率上建议每天保持1-2小时的代码手写练习加2小时的知识梳理。代码手写练习不仅仅是算法题还包括数据处理操作。我记得当年准备面试时每天会随机抽三个Pandas操作场景比如时序数据重采样、多表关联聚合、窗口函数计算手写实现这个习惯帮我避免了很多笔试现场的低级错误。4.3 业务建模案例的积累方法对于业务建模方案设计题建议提前积累3-5个完整的案例覆盖不同场景。比如电商用户复购预测、金融风控评分、内容推荐召回排序、流失预警、异常检测。每个案例都按照统一的框架整理业务目标与约束、数据源与口径、样本设计与标签定义、特征工程思路、模型选择与理由、评估方案、上线与监控方案。积累案例的资料来源有几个Kaggle的竞赛方案分享尤其是高名次队伍的solution write-up、技术大会的演讲PPT、大厂技术博客的实践文章。整理时不要只摘录结论而是尝试还原作者的思考链条——为什么会选择这个特征、为什么这个评估指标更合理、如果数据量减少一个数量级方案要不要调整。我个人的体会是案例积累到一定程度会产生迁移能力。当你面对一个没见过的业务问题时会发现它能映射到某几个已知案例的组合这时候方案设计就不再是从零开始而是组装和适配。4.4 实战模拟与时间管理笔试的时间压力往往被低估。第四范式的笔试时长两个半小时左右题量大约以6-8道题为主包含简答和编程。如果没有提前模拟很容易出现前面简答题写太详细导致编程题时间不够的情况。模拟建议找几套历年题或同类公司的真题严格限制2.5小时完成。注意几个时间分配原则。简答题控制在每道15-20分钟分值权重最高的方案设计题可以放宽到35-40分钟。编程题每道预留至少25分钟如果卡住超过10分钟果断跳过先做后面的题目。还有一个细节笔试中的简答题阅卷人更关注框架完整度和关键词命中。建议用总-分结构作答第一句先给出核心结论再展开说明理由。避免大段背景铺垫笔试题不是论文看到得分点才是关键。我记得有位阅卷朋友聊过一份卷子停留时间通常不超过3分钟段落开头如果没有直接出现得分关键点很容易被忽略。5. 避坑经验与常见失分点从历年笔试情况和身边同学反馈来看有几类问题反复出现。踩过一次就会长记性但这些教训写出来能让后来者少走弯路。5.1 特征工程中的目标泄露目标泄露是笔试中的高频扣分点但很多情况下考生自己意识不到。最典型的是在构造特征时用了未来的信息。比如预测用户是否流失但在特征中加入了该用户是否在近7天内提交了注销申请——这个特征在预测时点根本不可得因为提交注销申请本身就是流失后的行为。还有一种隐蔽的泄露是用全量数据统计做特征编码。比如用全量数据的Target Encoding结果直接作为特征这相当于让模型在训练时看到了验证集的标签信息。这类问题在实际工作中经常出现笔试考的就是你有没有这个敏感度。5.2 模型评估指标选错评估指标选错在业务建模方案题中是一个典型的失分点。很多考生习惯性地写AUC、Accuracy完全不区分场景。对于不平衡分类问题Accuracy基本没有参考价值AUC也不够直观。流失预测场景里业务方真正关心的是我触达Top 10%的疑似流失用户能挽回多少比例真正的流失用户。所以你要用提升度或者Top-K召回率才能说明业务收益。如果实在判断不清用什么指标一个万能的表述方式是把多个指标并列关注AUC评估排序能力同时使用PR曲线下的面积评估少数类的识别效果最后从业务角度报告Top 10%召回率。这既体现了全面性也规避了押错指标的风险。5.3 方案设计只谈模型不谈落地模型方案设计题最常见的失分点是模型做完就结束。真实的业务建模流程是问题定义→数据探索→特征工程→模型训练→评估→上线→监控→迭代。笔试方案如果能覆盖全链路哪怕某一环节讲得不够深整体框架分也会很高。所谓谈落地至少包括三个层面。第一是数据层训练的样本怎么来线上推理的输入格式怎么保障。第二是性能层模型单次推理耗时不能超过多少毫秒用什么方式部署是嵌入现有系统还是独立服务。第三是监控层模型效果衰减如何感知特征分布漂移如何预警多久需要重新训练一次。把这些写进方案明显比只写特征和模型高一个段位。5.4 代码题中的隐藏陷阱代码题除了逻辑正确还有几个容易丢分的小细节。变量命名是否可读会直接影响阅卷人的好感度建议不要用x、y1这类无意义命名而是用tp、fp、precision这类有含义的名字。边界条件的处理也容易被忽略比如除零保护、空数组处理、长度为1的数组切分。另外一个经常被忽视的点是代码注释。笔试代码题不需要写大量注释但关键步骤写上简短的注释比如仅用训练集计算均值防止泄露能帮阅卷人快速理解你的思路也可能在细节上捞回一些分数。6. 从笔试到面试后续环节的准备建议笔试只是第一关第四范式的面试通常在笔试后一到两周内进行。面试的深度比笔试更高尤其是简历上的项目经历会被深挖。如果笔试通过了建议花时间做以下三件事。第一把笔试中没答好的题目重新复盘一遍尤其是方案设计题。面试官很可能会追问笔试那道方案题你当时为什么没有考虑冷启动问题提前复盘能让你在面试时展现出学习能力和自我迭代意识。第二准备一个最熟悉的项目案例能用STAR法则讲15分钟以上。重点不是做了什么而是为什么这样做、遇到什么问题、如何解决的、最终效果如何验证。我当时面试时被追问最多的是评估指标的选择逻辑为什么用这个指标而不是那个指标如果你能说清楚指标背后的业务含义面试官会认为你真的做过项目而不是只跑通了代码。第三了解公司业务和产品方向。第四范式主打的是低门槛机器学习平台与行业解决方案面试中可能会问你对AutoML、迁移学习、隐私计算这些技术方向的看法。提前准备自己的立场和依据比现场临场发挥要稳得多。7. 实操后的一些个人体会写到这里想分享一点个人经验。我见过不少候选人机器学习基础非常扎实但笔试成绩却不理想原因几乎都是不会翻译——脑子里有知识但没法把知识翻译成阅卷人想看的答案。这里有一个很管用的技巧在动笔之前先列答题提纲。哪怕是一个非常简化的提纲场景→方案→细节1→细节2→风险点也能确保你的答案结构完整、逻辑清晰。很多考生是想到哪写到哪结果分数都丢在组织上而不是知识点上。另一个体会是建模岗位笔试本质上是在考察你的结构化思维。同一个问题有人能拆成数据、特征、模型、评估、落地五个层面有人只盯着模型跑分。前者答题自然有层次后者往往密密麻麻写一大堆仍然让阅卷人抓不住重点。所以准备笔试不只是背知识点更是在训练自己面对一个模糊业务问题时的拆解能力。这种能力短期靠刷题可以提升长期还是要靠在实际项目中刻意练习。回到第四范式这组笔试题它折射出的行业信号是AI公司真正需要的不是只会调包调参的工程师而是能从业务问题出发、设计完整技术方案、并且知道如何把它落地的建模人才。不管你最终是否加入这家公司按这个标准去准备总不会错。最后再分享一个小技巧平时做项目时刻意给自己增加一个环节——写一份建模备忘录记录每个决策背后的理由。这份备忘录既是你的经验沉淀也是未来笔试面试最好的素材库。
返回列表