拓冰建站拓冰建站
首页 / 资讯中心 / 正文

招商银行信用卡中心数据挖掘笔试复盘:考点与备考策略

招商银行信用卡中心2019秋招IT笔试数据挖掘方向第二批这场笔试我印象挺深。银行系的数据挖掘岗笔试和互联网公司的风格差别很大它不追求你手撕红黑树或者现场推导Transformer但非常看重基础功底、业务理解以及对数据处理的细致程度。考完出来我复盘了很久觉得这套题其实把“银行想要什么样的数据挖掘工程师”表达得非常清楚——既要懂模型更要懂数据还得明白信用卡业务里的合规和风险底线。如果你正在准备银行系的数据挖掘岗位尤其是信用卡中心这类零售金融核心部门这篇复盘文应该能给你一个比较完整的参考。我会从笔试结构、核心考点、编程与SQL实战、案例分析思路再到备考路线和踩坑经验一层层拆开讲。1. 笔试整体结构与定位分析1.1 银行系笔试和互联网公司的核心差异先说最直观的感受银行笔试和互联网公司笔试完全是两个物种。互联网公司尤其是头部的几家喜欢出算法硬核题动不动就是动态规划、贪心、图论大部分人挂在第三题。银行系的笔试尤其是信用卡中心这种业务导向很强的部门考察逻辑是“你来了能不能马上干活并且不出事”。2019年秋招这场笔试题型大致可以分为四块行测类题目、专业基础知识、编程与SQL实操、案例分析。行测类题目言语理解、数量关系、逻辑推理是大多数银行笔试的标配信用卡中心也不例外。这部分没什么好说的就是公务员考试的行测题难度中规中矩关键是练手速。专业基础知识覆盖统计学、机器学习、数据库、数据结构题目形式是选择题和简答题重点考察基本概念的掌握程度不深但面广。编程和SQL实操是拉开差距的地方。银行非常看重SQL能力因为信用卡中心的数据分析师和数据挖掘工程师日常工作大概率是跟几十张表打交道写脚本提数、做特征、跑模型SQL用不熟会非常痛苦。案例分析题则是银行笔试的特色给你一个信用卡业务场景比如怎么预测客户流失让你写解决思路。这道题考察的是“业务理解 建模思路 落地可行性”很多刷惯了算法题的人会在这里栽跟头。1.2 各模块分数结构与时间分配的合理预判这场笔试的题量不小我记得做的时候时间还是比较紧的。行测题大概是30道左右专业选择题30道上下简答题3到4道SQL/编程题2道案例分析1道。总时间大概两个小时出头算下来平均每道题只有两分钟左右这个节奏其实相当快。合理的策略是行测部分快速做不要在言语理解或数量关系上死磕遇到不会的先凭第一感觉选一个并标记回头有时间再想。专业基础选择题是拿分重点因为考察的都是概念性内容复习过就能答出来。SQL和编程题需要留足时间因为不仅要写对还要考虑边界条件和书写规范。案例分析题放在最后但至少要留出15分钟哪怕写不完全也要把框架搭出来。1.3 这一批次的命题特点与趋势判断2019年算是银行数字化转型比较热闹的年份信用卡中心对数据挖掘人才的需求已经从“锦上添花”变成“刚需”。从第二批的题目来看命题方明显在探索一种平衡既要考察传统银行业看重的严谨稳重又要吸纳互联网公司流行的机器学习技术。所以你会看到题目里既有“决策树ID3和C4.5的区别”这种经典问题也有“如何设计特征来识别套现行为”这种贴近业务的应用题。另有一个趋势是题目越来越场景化。纯粹问“什么是过拟合”这种题在减少更多是“用户在短时间内频繁大额交易应该用什么方法识别异常”这类结合业务的问法。这个变化很关键它说明银行要的不是只会调包的人而是能理解数据背后的业务含义的人。2. 核心考点拆解从统计学到机器学习2.1 统计学与概率论笔试里的基本功统计学在银行笔试题里的权重比很多人想象中大。信用卡业务和数据挖掘天然离不开统计推断用户在某个渠道的转化率是否显著提升、不同客群之间的逾期率差异是否显著、模型上线后收益提升的置信度怎么算这些都是日常要面对的问题。笔试里常考的统计知识点有几个一是描述性统计均值、中位数、方差、标准差这些基本概念一般送分二是概率论尤其是贝叶斯公式几乎每年必考。贝叶斯公式在信用卡风控里用得极多比如已知欺诈样本占比很低比如0.1%模型预测为欺诈的精确率还是阳性预测值怎么算这背后就是贝叶斯思想。我做题时遇到一道题给了一个先验概率、一个似然概率让算后验概率就是套公式的事但很多人对“先验”“后验”的概念不够敏感容易懵。还有一类统计学考点是假设检验和置信区间t检验、卡方检验、p值的含义以及第一类错误和第二类错误的区别。银行是强监管行业做决策讲究证据链完整假设检验这种思维方式是刻在银行数据人骨子里的。你如果之前在互联网公司做增长可能习惯了“先上线再看数据”但在银行笔试里你要表现出对统计显著性的敬畏这是银行最想看到的职业习惯。2.2 机器学习算法概念深度优先于代码实现机器学习部分笔试的重点不是让你从零推导某个算法而是考察算法的原理理解、适用场景、优缺点比较。我在考场上印象比较深的几个点第一个是逻辑回归。逻辑回归在信用卡风控领域是绝对的“老大哥”它可解释性强、训练快、在大量稀疏特征上表现稳定而且银行监管要求风控模型必须能解释逻辑回归天然贴合这个需求。笔试会问它和线性回归的区别损失函数是什么怎么防止过拟合。有个坑是L1和L2正则化的区别L1能产生稀疏解L2会让权重趋向于0但不能等于0很多人在这个概念上翻车。第二个是决策树和集成学习。银行笔试里决策树考得比深度学习频繁得多。ID3用信息增益C4.5用增益率CART用基尼系数这些是经典且必考的内容。再往外延伸就是随机森林、GBDT、XGBoost但银行笔试考到XGBoost时会侧重工程问题比如它和GBDT在实现上的区别、如何调参避免过拟合。原因也好理解信用卡业务的特征维度高、噪音大、类别不平衡严重树模型处理起来比神经网络更可控也更容易解释。第三个是聚类和无监督学习。信用卡客群细分是数据挖掘的常见任务所以K-Means、DBSCAN、层次聚类这些算法也会被考到。重点是K-Means怎么选KDBSCAN怎么理解密度可达以及它们的适用场景。还有协同过滤和关联规则散落在“用户推荐”和“交叉销售”这类应用场景的题目里但考得不算深。深度学习在这一批笔试里占比不高顶多考一些基础概念比如CNN为什么适合图像、RNN为什么适合序列数据、过拟合的常见解决手段。这和银行实际业务也是匹配的——信用卡中心的数据挖掘岗日常建模型还是以逻辑回归和树模型为主深度学习的应用场景相对有限。2.3 业务场景理解信用卡数据挖掘的行业特色银行笔试里最让我觉得“有内味儿”的是业务场景题。它们不直接问“什么是逾期率”而是给你一个场景让你从数据挖掘角度提出解决方案。这些场景往往集中在几个方向一是客户流失预测和唤醒。信用卡用户很容易沉睡卡办下来刷几次就不用了行方关心什么时候该给他发权益刺激一下。二是反欺诈识别。盗刷、套现、伪卡交易这些都是银行实打实的损失数据挖掘要在交易级实时识别风险。三是额度管理与风险定价。给用户提额还是降额依据是什么这和预测违约概率紧密相关。四是精准营销与交叉销售。用户最适合办什么分期产品什么权益组合最容易激活他。之所以花这么多篇幅讲业务场景是因为银行笔试的不少题目就是把算法题包装在这些场景里。如果你只看算法书不关注业务很可能连题目说什么都搞不清楚。比如它说“构建一个识别套现团伙的模型”你要能反应过来这属于无监督异常检测 图数据挖掘团伙检测常涉及关联网络而不是简单套一个二分类器。3. 工程能力考察数据库、数据结构与编程题3.1 SQL题银行数据挖掘岗绕不开的重头戏SQL在银行数据挖掘笔试中的地位极高。可以说SQL题答得好不好基本决定了你能不能进入下一轮面试。信用卡中心的数据挖掘工程师日常要接触的数据表量级很大动辄千万级甚至亿级SQL写得好不好直接关系到工作效率。我记得笔试里SQL题目大概是这种类型给定两张表一张是客户信息表包含客户ID、年龄段、性别、城市、收入等级等一张是交易流水表包含客户ID、交易时间、交易金额、交易类型、商户类型等然后要求计算近三个月内交易次数大于10次且单笔交易金额超过一定阈值的客户数量。这看似简单但实际上需要你正确使用JOIN、COUNT、GROUP BY、HAVING这几个常用操作并且注意去重和NULL值处理。另一个典型题目是计算用户最近一次交易距离今天的天数这在客户流失预测里是核心特征。写法思路类似SELECT a.user_id, DATEDIFF(CURRENT_DATE, MAX(b.trans_date)) AS last_trans_days FROM cust_info a LEFT JOIN trans_record b ON a.user_id b.user_id GROUP BY a.user_id;注意这里用LEFT JOIN而不是INNER JOIN因为有些客户可能没有交易记录但你仍然想保留他的信息这时候LEFT JOIN并处理NULL才是正确的打开方式。很多人笔试时没注意这一点导致结果缺客户这就是细节分。另外窗口函数的考察在近年的银行笔试里越来越常见2019年那批已经开始涉及。比如让你算每个用户最近三笔交易的平均金额就需要用ROW_NUMBER()或LAG()来处理。如果你报了银行的数据挖掘岗但还不会窗口函数建议赶紧补上这是现代化SQL的标配能力。3.2 数据结构与算法常考题型与复习尺度银行笔试的算法题难度总体低于互联网公司但并不意味着完全不考。一般会涉及时空复杂度分析、常见数据结构数组、链表、栈、队列、哈希表、树的基本操作以及一些初级到中级的算法题。其中链表相关操作考得非常频繁比如反转链表、合并两个有序链表。这类题在LeetCode上属于easy到medium的难度但在笔试里主要考察你能不能快速、准确写出来。另一个高频考法是二叉树遍历前序、中序、后序递归和非递归都要能写因为银行系统里树结构无处不在比如组织架构、账户层级。栈和队列的应用也常考比如用两个栈实现一个队列或者判断括号是否匹配。哈希表则是处理大量数据问题的常用手段比如统计词频、查找公共元素。排序算法建议把快排、归并、堆排序的原理和复杂度记牢能手写最好因为笔试可能会问“在不使用额外内存的情况下如何找到数组中的中位数”这种题本质是考察你对排序和堆的理解。对于银行的算法题我的建议是不必刷太多hard题但easy和medium的经典题要熟练到条件反射。尤其注意细节比如边界条件、栈溢出风险、返回值的类型转换等。银行笔试的判题平台往往比LeetCode严格不小心写错一个分号或者变量名就可能整题0分。3.3 编程语言选型Python为主细节决定成败银行数据挖掘岗笔试通常允许选Python或Java大多数人会选Python因为它写起来快、库多、和数据分析的日常贴合。但Python题也有自己的陷阱。一个是版本问题Python2还是Python3print要不要加括号整除运算的差异这些看是小事但实际写代码的时候很影响体验。另一个是常用库的导入如果你要用pandas或numpy确保导入语句写对并写清楚用了哪些库让阅卷人或者判题系统能直接运行。第三个问题是代码风格银行非常看重代码的可读性和健壮性变量命名要有意义函数要简短清晰好习惯在笔试里也能加分。如果你是Java选手请务必熟练掌握HashMap、ArrayList这些常用集合类的API以及如何处理异常、怎么定义泛型。有些银行笔试对Java代码的编译环境要求严格如果导入的包不完整运行时找不到类问题就大了。还有一个容易被忽略的点处理输入输出。在线判题环境下输入格式有时候很绕比如一行有多个数字以逗号分隔或者第一行是测试用例数N后面跟着N行数据。写代码前先花30秒把输入格式看清楚不要急着撸逻辑。我在笔试时就遇到过因为没处理输入读取的换行符导致循环少读一行的情况这种错误非常气人。4. 案例分析题从业务问题到数据方案4.1 信用卡业务里最常见的三类案例分析题案例分析题是银行数据挖掘笔试的压轴题同时也是最考验综合能力的题。这类题一般给你一个业务问题要求你用数据挖掘的思路给出解决方案。2019年这批笔试的案例分析题中心思想基本不离这三类第一类预测类问题。怎么预测客户逾期、怎么预测客户流失、怎么预测客户是否会开通分期。这类问题的核心是定义好目标变量、选好特征、构建模型、做效果评估。第二类识别类问题。怎么识别套现、怎么识别盗刷、怎么识别羊毛党。这类问题通常面临着样本不平衡、正样本少、需要实时性、需要可解释性等难点。第三类分群类问题。怎么对信用卡客户做细分画像怎么做差异化经营。这类问题常用聚类和RFM模型最近消费时间Recency、消费频率Frequency、消费金额Monetary难点是聚类结果如何转化成业务可落地的策略。笔试里不会让你直接写代码而是让你“描述解决方案”但其实质是考察你是否具备完整的建模思维。你可以用文字把思考过程写出来包括数据准备、特征工程、算法选型、评估指标、上线流程逻辑链条越完整得分越高。4.2 答题框架怎么一步步把问题拆明白我自己用惯了一套案例分析题的答题框架当模板分享出来你可以根据自己的经验调整第一步明确业务目标和定义问题。不要上来就谈算法。先说明这个问题的业务价值在哪里目标变量是什么。比如客户流失预测目标变量可以定义为“未来三个月内交易笔数为0的客户”。如果是套现识别目标变量就比较难定义因为缺少完全准确的标签这时候就得用规则 模型结合的方式。第二步阐述数据来源与特征工程。这里要能说出来数据从哪里来客户基本资料、交易流水、客服交互记录、App行为数据等以及你会构建哪些特征维度。特征工程是最能体现数据挖掘工程师经验深度的部分比如交易频次、交易金额波动、商户类别分布、夜间交易占比、地理位置跳跃速度、设备变更次数等。你能写得越具体越让阅卷人信服你真的做过这个方向。第三步给出模型选型和训练方案。要说明你选择某个算法的理由。比如“由于信用卡欺诈数据极度不平衡我首先考虑使用基于树的模型如LightGBM并用SMOTE或者代价敏感学习处理不平衡问题。” 这种表述既体现你对算法的理解也体现你对业务特性的把握。第四步设计评估方式和上线方案。银行很看重模型上线后的监控和迭代。你要说清楚评估指标用什么如KS、AUC、RecallPrecision以及上线后如何配置策略规则、如何注意模型稳定性和监控。第五步风险与合规说明。这是银行案例分析的加分项。数据挖掘模型如果涉及个人隐私、歧视性特征如性别、宗教会带来合规风险。你在方案里如果能主动提到“对敏感特征做剔除或脱敏处理”“模型决策需要保留审计日志”效果会好很多。4.3 一个完整的作答示例睡眠户激活预测我来完整过一遍。假设题目是这样的某信用卡中心发现大量客户办卡之后很少使用希望你设计一套挖掘方案找出可能被激活的睡眠户并针对性营销。第一步我先定义目标睡眠户可以定义为“近90天没有发生任何交易的活卡客户”。为什么是90天这是业务经验具体要看数据分布来定但方案里要说明为什么这样选不要拍脑袋。目标变量可以定义为“未来30天内是否发生至少一笔交易”这是一个二分类问题。第二步特征工程是让这个案例活起来的关键。我会从几个维度构建特征用卡行为特征近30天交易笔数、交易金额、时间间隔、平均每笔金额、卡片特征卡级别、发卡渠道、开卡时长、额度使用特征当前额度、使用率、临时提额次数、客户画像特征年龄、收入等级、职业、营销响应特征近6个月是否响应过营销活动。还可以加一个比较高级的特征客户最大消费间隔的变化趋势用来捕捉“用户正在慢慢远离这张卡”的轨迹。第三步模型选了逻辑回归和XGBoost做对比。逻辑回归负责提供高解释性基线XGBoost负责追求更高预测精度。因为是睡眠户激活问题正负样本可能偏向少数类真正被激活的人不多所以加上调整类别权重的策略。第四步评估指标不看准确率而是看提升度和业务收益。比如模型圈定10%的客户能覆盖70%的未来激活户这个覆盖率比总体激活率高多少。通过这样的营销ROI预测来判断模型价值。这种答题方式等于给阅卷人展示了一个完整的数据挖掘项目雏形就算面试官后续追问你也能从容作答。5. 备考路线与实战避坑经验5.1 考前一个月的高效复习节奏如果你正在准备类似的银行数据挖掘岗位笔试我建议把复习周期定为一个月节奏大致如下第一周用来夯实统计学和机器学习基础。把假设检验、贝叶斯、线性回归、逻辑回归、决策树、随机森林、GBDT、K-Means这些核心知识点过一遍每块都要能说出原理、适用场景、优缺点。不需要会手推全部公式但损失函数、正则化、核心参数的含义还是要搞清楚。第二周集中刷SQL题。每天至少写5道SQL题覆盖JOIN、子查询、聚合、窗口函数、日期处理等常见考点。推荐在牛客网或者LeetCode的数据库题库里刷题遇到不会的查资料搞懂而不是背答案。第三周开始做算法题和真题模拟。算法题以LeetCode easy和medium为主每天3-5道。同时找几套银行历年笔试真题按照考试时间模拟练习训练做题节奏。案例分析题也要开始动笔写不要只看不写写的过程中你会发现自己的逻辑漏洞。第四周查漏补缺和错题复盘。把之前做错的选择题、SQL题、算法题重新过一遍确保没有漏网之鱼。行测部分每天花20分钟练速度和题感也注意积累一些银行常识和信用卡行业术语。5.2 笔试现场的时间分配与做题策略进了考场先别急着动笔。用一两分钟把整张卷子浏览一遍对题型分布和难度有个大概判断再分配时间。我的建议是行测部分控制在总时间的25%以内专业选择题占30%SQL和编程题占30%案例分析题占15%。如果选择题做得比预期快就把多出来的时间留给SQL和编程题这两块是最容易拉开分数的。行测遇到不会的题要果断放弃。数量关系里的一些计算题特别吃时间算了三分钟没有头绪就蒙一个别恋战。专业选择题有些题比较偏比如问某个统计软件的操作细节这种题靠积累不会也别慌先标记回头再看。SQL和编程题建议先写思路再看题。先在草稿纸上把表关联逻辑或算法流程画出来确认没问题再写代码。写代码的时候注意变量名清晰、缩进规范、注释简洁哪怕判题系统不看你也能加印象分。写完代码后一定要自己走一遍测试样例检查边界条件比如空列表、NULL值、重复记录等。案例分析题是很多人容易忽略的大头。不要因为时间紧就写两三行草草了事。哪怕答得不够深入也要把“数据准备→特征工程→模型选择→效果评估→上线监控”这个完整链路写出来让阅卷人看到你的框架感。银行的案例分析题很多时候框架对了分数也就拿了大半。5.3 我踩过的坑和总结出来的教训准备银行笔试的时候我犯过一个错花太多时间刷LeetCode的难题结果基础概念反而没复习到位。银行笔试的选择题问得很细比如K-Means初始化的几种方法、GBDT的负梯度拟合、Bagging和Boosting的核心区别这些在我刷LeetCode时根本不会碰到。后来我意识到银行笔试考的不是“算法天花板”而是“知识广度 工整的工程能力”。第二个坑是SQL题没注意数据量级。笔试时我写了一个性能很差的查询在大表上会跑挂。虽然最终答案算出来了但银行面试官对SQL性能极其敏感因为真实环境里表都是亿级行一个坏的JOIN可能导致数据库卡死。如果笔试中遇到类似的场景可能还要在答案里说明“如果数据量极大考虑分区表或加索引利用增量表处理。”这种工程思维会让你的答案脱颖而出。第三个坑是没有控制好案例分析题的篇幅。有一场模拟笔试我写得特别多收不住结果后面题目时间不够。案例分析题要抓住“结构化”而不是“字数多”用标题和编号把步骤列清楚每个部分写3-4行核心内容就行不用展开到每一步的代码。最后总结一条面试之外的认知银行信用卡中心的数据挖掘岗说到底是“数据 业务 安全”三点的交集。你在每一道笔试题里展示出来的不应该仅仅是一个解题机器的能力而是对金融业务场景的理解和对风险审慎的态度。笔试只是第一关这种思维方式会延续到面试、甚至到你入职后的日常工作中。5.4 简历上没写但笔试一定会考的隐藏知识点有些知识不会直接出现在招聘JD里但银行笔试特别爱考需要单独提一提。第一是信用评分卡Scorecard的基本逻辑。标准评分卡用逻辑回归系数映射成整数分数用WOEWeight of Evidence编码处理特征是信用卡风控的经典做法。笔试可能会问WOE和IVInformation Value的计算和含义这个概念很多互联网背景的同学完全不熟建议提前了解。第二是A/B测试的严谨做法。银行做营销策略或App改版都要跑严格的A/B测试。笔试可能会问两组样本的流量怎么分配、怎么判断结果显著、什么时候能提前停止实验。这里要注意组间样本独立和幂度计算的问题不要简单说“看p值小于0.05就有效”就完事了。第三是数据脱敏与合规。银行笔试可能会出现一些和《个人信息保护法》、数据安全相关的题目。这类题目不要求你背法条而是考察你有没有“数据安全”这根弦。比如在特征构建时用户身份证号、手机号能用吗答案是不能直接用原始字段要脱敏、哈希或替换成加密ID。你如果能在案例题里主动提一句“把涉及个人敏感信息的字段先做脱敏”马上就能和那些纯粹玩算法的候选人区分开。第四是模型监控的指标。银行模型上线后不是一劳永逸要监控PSIPopulation Stability Index来评估特征分布是否偏移监控KS曲线来评估模型区分度是否衰减。这些术语不一定考但如果在案例分析的末尾提到“上线后每月监控PSI和KS”阅卷人会觉得你确实懂银行的模型生命周期管理。
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门