顺丰科技大数据挖掘工程师笔试客观题复盘与考点解析

📅 发布时间:2026/8/31 13:57:09
顺丰科技大数据挖掘工程师笔试客观题复盘与考点解析 2019年秋招那阵子我投了不少大数据方向的岗位顺丰科技的大数据挖掘与分析工程师就是其中之一。收到笔试链接的时候其实挺淡定毕竟大数据、数据挖掘、数据分析这几个方向平时一直在准备但真正点开试卷才发现客观题的范围比想象中宽得多——从概率统计到机器学习算法从SQL到Spark原理再到业务分析思维全塞在有限的时间里。今天把这份客观题合集的考察逻辑和知识点重新梳理一遍既是对自己笔试过程的复盘也能给后面准备同类岗位的朋友一些参考。当时这套卷子给我的整体感觉是不偏不怪但覆盖面极广。它不像某些公司喜欢出偏题怪题来拉区分度而是老老实实考察你作为大数据挖掘与分析工程师的基本功是否扎实。数学基础、经典算法、工程工具、业务思维四条线交叉出题哪一块有短板都会在分数上体现出来。1. 顺丰科技这次笔试到底考了什么1.1 岗位定位与笔试侧的考察逻辑先说要考的岗位。大数据挖掘与分析工程师在顺丰科技的职级体系里属于技术类中台岗位日常工作大概率是围绕物流场景的海量数据做清洗、挖掘、建模和分析支撑运营决策、路径优化、时效预测、客户画像等业务方向。这类岗位和纯算法研究员不一样它更强调数据工程师和数据科学家的复合能力——你既要能写SQL把数取出来又要能建模把数用起来还要能理解业务把结果讲清楚。笔试侧自然会沿着这个定位来做考察设计。客观题部分不会让你手写完整模型代码而是通过选择题和判断题来测试你的知识广度、概念准确性和快速推导能力。这其实是很好的筛选方式——概念清晰不清晰边界条件掌握不掌握公式理解到位不到位选几个选项就能看出来。从当年的考点分布来看数学与统计占了大概三成机器学习与数据挖掘算法占了三成多大数据工程和SQL占了近三成剩下的就是少量数据分析思维和业务场景题。这个比例对准备方向很有指导意义如果只刷机器学习模型而不重视概率论和SQL大概率会翻车。注意这种客观题笔试并不仅仅是看最后得分部分公司还会参考你的答题时长和正确率分布来评估熟练度。所以不只是要会做还要做得快。1.2 客观题的整体结构与时间分配整套客观题我记得是50道左右题型包括单选、多选和判断答题时间一般在90分钟到120分钟之间。平均下来每道题只有两分钟左右这对概念的熟练度要求很高。如果是需要现场推导的数学题两分钟其实挺紧张所以做题顺序很重要。我的策略是先把判断和单选快速过一遍遇到一时拿不准的题目先用排除法选一个标记好回头再看多选放在最后做因为多选的得分规则通常是少选不得分或者少选得部分分需要更谨慎地对待。时间分配上数学和统计题我控制在每道一分半以内机器学习题控制在两分钟以内SQL和数据工程题视复杂度而定但不会在一道题上超过三分钟。整套卷子最好留出十到十五分钟来检查标记的题目尤其是概率计算题很容易出现小数点错位或者条件概率漏算的情况。2. 数学与统计基础最容易失分也最容易捡分2.1 概率统计考察思路与典型题目复盘概率统计是这类笔试的绝对重点因为大数据挖掘的本质就是从数据中推断规律而规律背后都是概率。顺丰科技的客观题里条件概率、贝叶斯公式、期望、方差、常见分布基本各出了一到两道难度介于教材课后题和考研数学之间不超纲但需要熟练。我印象很深有一道题大意是一个分类器在正样本上的召回率是90%在负样本上的误报率是10%样本集中正负样本比例为1:9问随机抽取一个样本分类器预测为正类时该样本真实为正类的概率是多少。这道题考的就是贝叶斯公式。很多同学看到召回率和误报率就直接作答忽略了先验概率。正确做法是设样本总量为100正样本10个负样本90个。预测为正的正样本有10乘以90%等于9个预测为正的负样本有90乘以10%等于9个。所以在预测为正的18个样本里真实为正的是9个概率是50%。这道题给我最大的启发是在任何场景下先验分布和分类器的性能指标必须一起看单独拿一个指标说事都是耍流氓。这种思维放到实际业务场景中同样成立比如物流场景中投诉识别模型即使准确率看着很高如果投诉本身是极小概率事件模型预测为正的样本里真正是投诉的可能比例并不高。还有一类高频题是期望与方差的性质。比如问E(aXb)和D(aXb)的表达式考的是线性变换对期望和方差的影响。前者等于aE(X)b后者等于a方D(X)。这类题不难但容易记混复习时一定要把公式推一遍而不是死记硬背。2.2 线性代数与最优化相关考点线性代数在数据挖掘笔试里虽然占比不如概率统计但一定会出现而且通常和机器学习模型结合着考。比如矩阵乘法在神经网络前向传播中的作用、特征值与特征向量在主成分分析中的含义、矩阵的秩与数据有效维度之间的关系。顺丰科技的卷子里有一道题我记得比较清楚给出几个关于PCA的描述让选出正确的。其中有一个选项说“PCA是对协方差矩阵做特征值分解取最大的k个特征值对应的特征向量作为投影方向”这个是对的。还有个选项说“PCA是一种有监督的降维方法”这个显然是错的。这类题考察的不是计算能力而是对常见算法原理的理解是否准确。最优化相关的题目主要集中在损失函数的凸性和梯度下降上。比如问逻辑回归的损失函数是否凸函数、学习率设置过大会导致什么后果等。逻辑回归的损失函数是关于参数的对数似然函数取负值整体上是凸函数所以梯度下降能找到全局最优解。学习率过大会导致损失函数震荡甚至发散这个是最基本的优化常识。复习这部分内容时我的建议是不要只背结论要能从几何意义上理解。比如PCA的投影方向为什么是特征值大的方向因为特征值代表该方向上的方差大小而PCA就是要保留方差最大的方向这样才能最大程度保留原始信息。理解了这个逻辑相关题目无论怎么变都能应对。3. 数据挖掘算法考点集中在模型原理与业务落地3.1 经典模型高频考点贝叶斯、树模型、聚类机器学习与数据挖掘算法部分是整套卷子的重头戏顺丰科技考察的内容非常经典基本都是主流算法。朴素贝叶斯、决策树、随机森林、K近邻、K-means、逻辑回归、支持向量机这些模型的概念、适用场景、优缺点几乎覆盖了全部考点。朴素贝叶斯有一个关键假设就是特征之间相互独立这在实际数据中往往不成立但它在文本分类等场景下依然表现良好。笔试里经常考的就是朴素贝叶斯的假设是什么、为什么在特征相关性强的场景下效果会变差。树模型主要考察分裂依据比如ID3用信息增益C4.5用信息增益率CART用基尼指数。有一道题是问决策树在选择分裂特征时为什么倾向于选择取值较多的特征就是因为信息增益对取值数目较多的特征有所偏好。这种细节题如果没有真正理解信息增益的计算过程很容易答错。聚类题目的典型问法范围很广包含K-means算法的步骤顺序比如初始化簇中心、分配样本到最近中心、更新中心、重复直至收敛也会涉及K值的选择方法比如肘部法则。需要注意的是K-means对初始中心敏感、容易陷入局部最优并且只适用于凸形簇。我当时还遇到了一道和业务结合得比较紧的题在物流用户分群场景中如果要基于用户的寄件频率、寄件金额、寄件区域等特征做聚类哪些特征需要先做标准化处理。因为K-means基于距离计算量纲不一致会导致距离被数值大的特征主导所以聚类前通常要做Z-score标准化或Min-Max归一化。这类题就是把算法原理放到业务场景里去考察应用能力。3.2 模型评估、过拟合与特征工程模型评估和过拟合处理是客观题里又一个集中出题区域。准确率、精确率、召回率、F1值、ROC曲线、AUC值的定义和适用场景几乎每年都会考到顺丰科技的考卷也不例外。有一道题是给定混淆矩阵让计算精确率和召回率。这种题没有技巧就是公式。精确率是预测为正类中真实为正类的比例召回率是真实为正类中被预测为正类的比例。容易混淆的是分母不同一个是预测结果一个是真实结果。还有一个高频选择题是在正负样本极其不平衡的场景下以下哪个评估指标更适合答案是AUC或者F1而不是准确率。因为在样本不平衡时即使全部预测为多数类准确率也可能很高但这个模型没有实际意义。更重要的是AUC值不受分类阈值的影响它能更全面地评价模型排序能力。这一点在物流场景里很重要比如风险包裹识别真正有风险的包裹占比很低模型评估如果只看准确率优化方向就会跑偏。过拟合问题也是必考内容考察点包括过拟合的表现、原因、解决方法。正则化项L1和L2的区别也属于高频考点L1稀疏、L2平滑。L1正则化为什么能产生稀疏解是因为L1范数在零点不可导优化过程中更容易让参数变为零。如果笔试中出现了深度学习相关题目问Dropout的作用是缓解过拟合通过随机丢弃神经元来降低神经元之间的复杂共适应关系这种常规题也要掌握。特征工程相关的客观题相对少一些但也会出现比如类别型特征的编码方式比如独热编码和标签编码以及两者各自的适用场景。另外特征选择的方法通常从过滤式、包裹式、嵌入式三个维度来区分这属于数据挖掘的基本常识。经验之谈复习模型评估时不要只看公式要自己画一个混淆矩阵把精确率、召回率、F1、特异度全部手写推导一遍。笔试的时候时间紧张只有形成肌肉记忆才能快速答对。4. 大数据开发与SQL一面笔试里的硬核环节4.1 Spark/Hadoop原理考点大数据挖掘与分析工程师毕竟带着“大数据”三个字所以Spark和Hadoop相关原理几乎一定会考到。这类题考察的是你对分布式计算框架的理解深度而不是会不会写代码。Hadoop相关的考点主要是HDFS和MapReduce。HDFS的核心设计思想是把大文件切分成多个块每个块默认128M分布式存储在集群的不同节点上并且每个块有多个副本默认是3副本。这样设计是为了在普通服务器上实现高容错和高吞吐。MapReduce的核心是分而治之的思想把计算任务分成Map阶段和Shuffle阶段以及Reduce阶段。Map阶段处理原始数据Shuffle阶段进行分区、排序和合并Reduce阶段进行聚合汇总。Spark相关的考点主要集中在RDD、宽窄依赖、Stage划分这几个核心概念上。有一道题是判断哪些操作会触发Shuffle比如groupByKey、reduceByKey、join都会触发Shuffle而map和filter不会。这个基础概念在实际调优中非常重要因为Shuffle是Spark作业性能瓶颈的主要来源。还有一道题考察的是宽依赖和窄依赖的区别。窄依赖是指父RDD的每个分区只被子RDD的一个分区使用可以放在同一个Stage中比如map、filter宽依赖是指父RDD的分区被子RDD的多个分区使用需要进行Shuffle比如groupByKey。宽窄依赖的划分决定了Stage什么时候被切断这也是Spark作业优化的关键依据。笔试中如果涉及Spark任务调优可能会提到以下方式增大广播变量、减少Shuffle数据量、调整分区数、使用reduceByKey替代groupByKey。这是因为reduceByKey会在Map端先做一次Combine操作减少Shuffle阶段传输的数据量。这就是典型的“懂得原理才能做出正确选择”的题目。4.2 SQL与数据仓库场景题SQL题在大数据岗位笔试里基本属于送分题但也是送命题——会的就是秒选不会的就只能蒙。顺丰科技的SQL题主要以场景题为主考察常用函数的掌握和逻辑思维而不只是单纯的语法记忆。我记得有一道题是给定一个订单表有三个字段分别是order_id、city_name和order_time要求统计每个城市每个月的订单数量。这道题考察的是DATE_FORMAT函数配合GROUP BY来使用。类似的还会考察行转列和列转行比如把每个用户在不同月份的消费金额从长表转成宽表通常使用CASE WHEN配合聚合函数来实现这在做用户行为分析时非常常见。窗口函数也是这几年笔试的常客。比如要求计算每个城市订单量排名前3的城市需要用到ROW_NUMBER()或RANK()窗口函数然后按照排名进行过滤。窗口函数的考察点在于理解PARTITION BY和ORDER BY的作用范围——PARTITION BY决定了窗口如何分组ORDER BY决定了窗口内如何排序。这个考点在实际工作中用得非常多比如计算物流时效的环比和同比、对客户进行RFM分层的排名等。Hive SQL和数据仓库的概念也会穿插考察。比如问到Hive中内部表和外部表的区别内部表删除时元数据和HDFS数据都会删除外部表只删除元数据底层数据保留。还有分区表和分桶表的区别分区表是按某个字段的目录维度来组织和数据分桶表则是按照某个字段的哈希值把数据分散到不同文件中。在实际数仓建设中分区表用于按时间日期管理数据分桶表常用于抽样查询和表连接优化。行业经验告诉你SQL这类题目没有捷径关键是要多写多练。笔试前可以把常用的聚合函数、日期函数、窗口函数都过一遍确保语法细节不出错。我个人还习惯把每道SQL题先写下解题思路再写语句因为笔试环境下的SQL题往往不仅仅考察语法更考察逻辑是否清晰。5. 实操复盘笔试过程中的方法与踩坑记录5.1 时间分配与做题顺序的临场策略客观题笔试的临场策略往往比复习策略更容易被忽略但它对最终分数的影响非常大。我在顺丰科技的笔试里总结了几个比较实用的做法。第一拿到卷子后不要急于动笔先花两分钟从头到尾浏览一遍所有题目标注出哪些是必拿分的简单题哪些是可以直接选出来的概念题哪些可能需要推导。这个过程能让你对整体难度有把握避免在前几道难题上浪费太多时间。第二严格按照先易后难的顺序来做。选择判断这类客观题的难点往往在于个别需要计算的概率题和带场景的数据分析题。我的习惯是先做概念题和SQL场景题把计算题和容易混淆的概念题留在后面集中攻克。这样安排的原因是概念题不需要草稿纸一旦判断准确就可以快速得分而计算题如果卡壳很容易产生焦虑影响后面题目的状态。第三多选题目要格外小心。多选通常采用漏选、错选、多选都不得分的规则所以不确定的选项尽量不选。如果题目要求选出“以下哪些说法正确”遇到拿不准的说法先用反向验证法——尝试举一个反例如果举不出反例通常可以认为是正确的。临场技巧做概率和统计计算题时善用选项之间的数量关系来验证。如果感觉自己计算出来结果不在任何一个选项中不要急着怀疑题目出错先重新检查有没有漏掉条件或者用错公式。我笔试时有一道条件概率题第一次算出来是0.6选项里没有重新读题才发现看漏了“在样本不均衡条件下的先验值”这个关键信息。5.2 错题复盘与知识点补全清单笔试结束并不代表事情就完了。客观题考试最有价值的部分其实是考后复盘通过错题来查漏补缺比任何模拟题都有效。我在复盘时发现最容易失分的不是那些难啃的算法原理题而是一些基础概念和边界条件。比如“逻辑回归是否能处理非线性问题”这种经典问题如果没有深入理解它的决策边界本质很容易被表象迷惑。逻辑回归本质上是一个线性分类器因为它学到的决策边界是线性的。但可以做特征变换比如添加多项式特征或者使用核方法来实现非线性分割效果。这类型的题目如果只是背结论很容易翻车。复盘时我会把错题整理成一个知识点补全清单按主题归类并标注薄弱程度。我的清单上当时主要有这几块贝叶斯公式的实际应用场景、K-means聚类中K值的选择、Spark宽窄依赖的划分规则、窗口函数在各种统计场景下的具体写法以及L1和L2正则化的数学本质。针对这些薄弱点再去找对应资料逐项击破比盲目刷题效率高很多。此外有些错题是审题不仔细导致的。比如多选题里的“不正确的是”被看成了“正确的是”这种失误只能靠平时养成先圈关键词的习惯来避免。我在后来的准备中遇到选择题都会先把“以下正确的是”或者“以下说法错误的是”这类的限定词圈出来不要高估自己考场上集中注意力的能力因为考试中的时间压力会放大粗心的概率。6. 往届真题背后的大数据技能树从这套客观题合集往深处看能发现顺丰科技这类物流龙头企业对大数据挖掘与分析工程师的技能要求其实构成了一棵完整的技能树。笔试只是这棵树的映射真正的价值在于让你意识到自己缺了哪根枝杈。三块核心能力明确了大数据岗位的准入门槛数学基础决定你能不能在理论上理解算法算法理解决定你能不能把数据变成可用的模型工程能力决定你建模之后能不能落地到生产环境。数学基础层面除了概率统计和线性代数最好还要懂一点信息论和数值优化常识。信息熵是决策树和特征选择的基础交叉熵是很多分类损失函数的基础这些概念在笔试里经常以“变形考法”出现。虽然不要求你会推导每个公式但至少要知道每个概念解决什么问题以及解决思路。算法层面要有意识地建立算法之间的联系。线性回归、逻辑回归、SVM、朴素贝叶斯、决策树、K近邻这些经典算法看似独立实际上它们都是一条解决问题的思想链上的不同环节。比如都涉及损失函数的设计都涉及模型的偏置和方差权衡都涉及训练集和测试集误差的比较。树模型可以通过集成学习演变成随机森林和梯度提升树聚类算法和降维算法又可以结合做用户分群和特征压缩。笔试里很多多选题目本质上就是考察这种横向归类能力而不是单点记忆。工程能力层面需要做到至少熟练掌握一种SQL引擎并能看懂Spark等分布式计算框架的核心原理。在真实的大数据挖掘工作中你会遇到的情况很可能是数据存放在Hive中处理逻辑需要用Spark来实现特征的产出又依赖数仓的分区和生命周期管理。如果只懂sklearn而不懂数据如何被取出和处理建模就只能停留在案例阶段无法真正在业务中落地。因此在准备这类笔试的时候不要把目光只局限在刷题目上。我当时在刷完客观题之后花了额外的时间去补完这棵技能树重看《机器学习》周志华版的经典章节补齐Hadoop生态的组件图谱坚持每天在本地Spark环境里写几个分析任务。这些积累在后来面试的每一轮都派上了用场。回到顺丰科技这套2019秋招客观题合集它给我的最大启发是大厂笔试考的是基本功基本功就是那些最朴素、最经典、最不容易过时的知识。概率论不会因为深度学习的火热而失效SQL不会因为AI平台的流行而消失一题一题分析下来你会发现每一个考点都能在你的技能树上找到对应的位置。准备笔试的过程其实也是自我体检的过程——哪里弱一目了然补就是了。