Python数据建模及模型优化实战 【课程目标】 本课程专注于金融行业的数据建模,包括客户行为预测模型,风控识别与风控预测模型,面向数据分析部等专门负责数据分析与建模的人士。 本课程的主要目的是,培养学员的大数据意识和大数据思维,掌握常用的数据分析方法和数据分析模型,并能够用于对客户行为作分析和预测,提升学员的数据分析综合能力。 通过本课程的学习,达到如下目的: 1、 掌握数据分析和数据建模的基本过程和步骤 2、 掌握数据分析框架的搭建,及常用分析方法 3、 掌握业务的影响因素分析常用的方法 4、 掌握常用客户行为预测模型,包括逻辑回归、决策树、神经网络等等 5、 掌握模型优化的思路及措施,包括特征优化、超参优化、集成优化等 6、 掌握金融行业信用评分卡模型,构建信用评分模型 本课程突出数据挖掘的实际应用,结合行业的典型应用特点,从实际问题入手,引出相关知识,进行大数据的收集与处理;探索数据之间的规律及关联性,帮助学员掌握系统的数据预处理方法;介绍常用的模型,训练模型,并优化模型,以达到最优分析结果。 【授课时间】 2-4天时间,或者根据培训需求选择组合(每天6个小时) 【授课对象】 风险控制部、金融科技部、IT系统部、数据分析部等对数据建模有较高要求的相关领域人员。 【学员要求】 要求熟悉Python语言,熟悉numpy/pandas/sklearn库的使用。 1、 每个学员自备一台便携机(必须) 2、 环境要求:Python3.10版本以上(建议ananconda+VsCode) 注:讲师可以提供课堂上演示使用数据源及代码 【授课方式】 理论框架 + 落地措施 + 实战训练 【课程大纲】 第一部分: 数据分析基础—流程步骤篇目的:掌握数据分析基本步骤和过程,学会如何构造数据分析框架 1、数据决策的三个关键环节 Ø 业务数据化:将业务问题转化为数据问题 Ø 数据信息化:提取数据中的业务规律信息 Ø 信息策略化:基于规律形成业务应对策略 2、数据分析的六步曲 Ø 步骤1:明确目的--理清思路 Ø 步骤2:数据收集—理清思路 Ø 步骤3:数据预处理—寻找答案 Ø 步骤4:数据分析--寻找答案 Ø 步骤5:数据展示--观点表达 Ø 步骤6:报表撰写--观点表达 第二部分: 数据分析框架—业务模型篇1、数据分析思路来源于业务模型 2、分析框架来源于业务模型 Ø 商业目标(粗粒度) Ø 分析维度/关键步骤 Ø 业务问题(细粒度) Ø 涉及数据/关键指标 3、常用的业务模型:PEST/5W2H/SWOT/PDCA/AARRR… 案例:搭建精准营销的分析框架(6R) Ø 如何寻找目标客户群 Ø 如何匹配合适的产品 Ø 如何确定推荐的最佳时机 Ø 如何判断合理的价格 Ø …… 案例:搭建用户购买行为分析框架(5W2H) 第三部分: 探索性分析法—统计分析篇问题:数据分析方法的种类?分析方法的不同应用场景? 1、 业务分析的三个阶段 Ø 现状分析:通过企业运营指标来发现规律及短板 Ø 原因分析:查找数据相关性,探寻目标影响因素 Ø 预测分析:合理配置资源,预判业务未来的趋势 2、 常用的数据分析方法五大种类 3、 统计分析基础(类别à指标) 4、 描述性分析法(现状分析) Ø 对比分析(查看数据差距,发现事物变化) 演练:分析理财产品受欢迎情况及贡献大小 演练:用户消费水平差异分析,提取优质客户特征 Ø 分布分析(查看数据分布,探索业务层次) 案例:银行用户的消费层次/消费档次分析 演练:客户年龄分布/收入分布分析 Ø 结构分析(查看指标构成,评估结构合理性) 案例:收入结构分析/成本结构分析 案例:动态结构分析 Ø 趋势分析(查看变化趋势,了解季节周期性) 案例:营业厅客流量规律与排班 案例:用户活跃时间规律/产品销量的淡旺季分析 演练:产品订单的季节周期性规律 5、 相关性分析(原因分析) Ø 相关分析(衡量两变量间的相关程度,三种相关系数) Ø 方差分析(判断影响目标变量的关键要素,适用场景) Ø 卡方检验(从多个维度的数据指标分析) 演练:不同客户的产品偏好分析 演练:银行用户违约的影响因素分析 第四部分: 用户风险识别—异常数据篇1、 反欺诈识别的重点内容 Ø 如何识别异常数据 Ø 如何查找影响因素 Ø 如何提取欺诈用户的特征 Ø 如何预测用户的欺诈行为 2、 异常数据的定义 3、 异常数据的检测方法 Ø 基于统计法:标准差法、四分位距法、离群点检测算法 Ø 基于机器学习:回归、聚类等 4、 异常数据处理方法 演练:各种异常数据识别 第五部分: 影响因素分析—根因分析篇问题:如何做原因分析?比如价格是否可用于产品销量?影响用户违约的关键因素是什么? 1、 数据预处理vs特征工程 2、 常用特征选择方法 Ø 相关分析、方差分析、卡方检验 3、 相关分析(衡量两数据型变量的线性相关性) Ø 相关分析简介 Ø 相关分析的应用场景 Ø 相关分析的种类 ² 简单相关分析 ² 偏相关分析 ² 距离相关分析 Ø 相关系数的三种计算公式 ² Pearson相关系数 ² Spearman相关系数 ² Kendall相关系数 Ø 相关分析的假设检验 Ø 相关分析的四个基本步骤 演练:营销费用会影响销售额吗?影响程度如何量化? 演练:哪些因素与产品销量有显著的相关性 演练:影响用户消费水平的因素会有哪些 Ø 偏相关分析 ² 偏相关原理:排除不可控因素后的两变量的相关性 ² 偏相关系数的计算公式 ² 偏相关分析的适用场景 4、 方差分析(衡量类别变量与数值变量间的相关性) Ø 方差分析的应用场景 Ø 方差分析的三个种类 ² 单因素方差分析 ² 多因素方差分析 ² 协方差分析 Ø 单因素方差分析的原理 Ø 方差分析的四个步骤 Ø 解读方差分析结果的两个要点 案例:摆放位置与销量有关吗 演练:客户学历对消费水平的影响分析 Ø 多因素方差分析原理 Ø 多因素方差分析的作用 Ø 多因素方差结果的解读 案例:广告形式、地区对销售额的影响因素分析 演练:销售员的性别、技能级别对销量有影响吗 Ø 协方差分析原理 Ø 协方差分析的适用场景 演练:排除用户收入,其余哪些因素对销量有显著影响? 5、 列联分析/卡方检验(两类别变量的相关性分析) Ø 交叉表与列联表:计数值与期望值 Ø 卡方检验的原理 Ø 卡方检验的几个计算公式 Ø 列联表分析的适用场景 案例:产品类型对客户流失的影响分析 案例:用户学历对产品类型偏好的影响分析 研讨:行业/规模对风控的影响分析 第六部分: 数据建模过程—建模步骤篇1、 预测建模六步法 Ø 选择模型:基于业务选择恰当的数据模型 Ø 特征工程:选择对目标变量有显著影响的属性来建模 Ø 训练模型:采用合适的算法对模型进行训练,寻找到最优参数 Ø 评估模型:进行评估模型的质量,判断模型是否可用 Ø 优化模型:如果评估结果不理想,则需要对模型进行优化 Ø 应用模型:如果评估结果满足要求,则可应用模型于业务场景 2、 数据挖掘常用的模型 Ø 定量预测模型:回归预测、时序预测等 Ø 定性预测模型:逻辑回归、决策树、神经网络、支持向量机等 Ø 市场细分:聚类、RFM、PCA等 Ø 产品推荐:关联分析、协同过滤等 Ø 产品优化:回归、随机效用等 Ø 产品定价:定价策略/最优定价等 3、 特征工程/特征选择/变量降维 Ø 基于变量本身特征 Ø 基于相关性判断 Ø 因子合并(PCA等) Ø IV值筛选(评分卡使用) Ø 基于信息增益判断(决策树使用) 4、 模型评估 Ø 模型质量评估指标:R^2、正确率/查全率/查准率/特异性等 Ø 预测值评估指标:MAD、MSE/RMSE、MAPE、概率等 Ø 模型评估方法:留出法、K拆交叉验证、自助法等 Ø 其它评估:过拟合评估、残差检验 5、 模型优化 Ø 优化模型:选择新模型/修改模型 Ø 优化数据:新增显著自变量 Ø 优化公式:采用新的计算公式 Ø 集成思想:Bagging/Boosting/Stacking 6、 常用预测模型介绍:回归、时序、分类 第七部分: 客户行为预测—分类模型篇问题:如何评估客户购买产品的可能性?如何预测客户的购买行为?如何提取某类客户的典型特征?如何向客户精准推荐产品或业务? 1、 分类模型概述及其应用场景 2、 常见分类预测模型 3、 逻辑回归(LR) Ø 逻辑回归的适用场景 Ø 逻辑回归的模型原理 Ø 逻辑回归分类的几何意义 Ø 逻辑回归的种类:二项、多项 Ø 如何解读逻辑回归方程 Ø 逻辑回归算法的实现及优化 ² 迭代样本的随机选择 ² 变化的学习率 ² 逻辑回归+正则项 ² 求解算法与惩罚项的互斥有关系 Ø 带分类自变量的逻辑回归分析 Ø 多项逻辑回归/多分类逻辑回归 ² ovo, ovr 案例:用sklearn库实现银行贷款违约预测 案例:订阅者用户的典型特征(二元逻辑回归) 案例:通信套餐的用户画像(多元逻辑回归) 4、 分类决策树(DT) 问题:如何预测客户行为?如何识别潜在客户? 风控:如何识别欠贷者的特征,以及预测欠贷概率? 客户保有:如何识别流失客户特征,以及预测客户流失概率? Ø 决策树分类简介 演练:识别银行欠货风险,提取欠贷者的特征 Ø 决策树分类的几何意义 Ø 决策树算法(三个关键问题) ² 如何选择最佳属性来构建节点:熵/基尼系数、信息增益 ² 如何分裂变量:多元/二元划分、最优切割点 ² 修剪决策树:剪枝原则、预剪枝与后剪枝 Ø 决策树的解读 Ø 决策树的超参优化 案例:商场用户的典型特征提取 案例:客户流失预警与客户挽留 案例:识别拖欠银行货款者的特征,避免不良货款 Ø 多分类决策树 案例:识别不同理财客户的典型特征,实现精准推荐 5、 人工神经网络(ANN) Ø 神经网络的结构 Ø 神经网络基本原理 ² 加法器,激活函数 Ø 神经网络分类的几何意义 Ø 神经网络的结构 ² 隐藏层数量 ² 神经元个数 Ø 神经网络实现算法 案例:评估银行用户拖欠货款的概率 6、 支持向量机(SVM) Ø SVM基本原理 Ø 线性可分问题:最大边界超平面 Ø 线性不可分问题:特征空间的转换 Ø 维灾难与核函数 第八部分: 客户行为预测—模型评估篇1、三个方面评估:指标、方法、过拟合 2、两大矩阵 Ø 混淆矩阵 Ø 代价矩阵 3、六大指标 Ø 正确率Accuracy Ø 查准率Precision Ø 查全率Recall Ø 特异度Specify Ø F度量值(file:///C:/Users/yzl05/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png/file:///C:/Users/yzl05/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png) Ø 提升指标lift 4、三条曲线 Ø ROC曲线和AUC Ø PR曲线和BEP Ø KS曲线和KS值 5、多分类模型评估指标 Ø 宏指标:macro_P, macro_R Ø 宏指标:micro_P, micro_R 6、模型评估方法 Ø 原始评估法 Ø 留出法(Hold-Out) Ø 交叉验证法(k-fold cross validation) Ø 自助采样法(Bootstrapping) 7、其它评估 Ø 过拟合评估:学习曲线 Ø 模型差异性评估 Ø 残差评估:白噪声评估 第九部分: 预测模型优化—超参优化篇1、模型优化的三大方向 Ø 超参优化 Ø 特征工程 Ø 集成优化 2、超参优化的方法比较 Ø 交叉验证类(RidgeCV/LassoCV/LogisticRegressionCV/…) Ø 网格搜索GridSearchCV Ø 随机搜索RandomizedSearchCV Ø 贝叶斯搜索BayesSearchCV 3、超参调优策略 第十部分: 预测模型优化—特征工程篇1、数据清洗技巧 Ø 异常数据的处理方式 Ø 缺失值的填充方式 Ø 不同填充方式对模型效果的影响 2、降维的两大方式:特征选择和因子合并 3、特征选择的模式 Ø 基于变量本身的重要性筛选 Ø Filter式(特征选择与模型分离) Ø Wrapper式(利用模型结果进行特征选择) Ø Embedded式(模型自带特征重要性评估) Ø 确定特征选择的变量个数 案例:客户流失预测的特征选择 4、因子合并(将多数变量合并成少数几个因子) Ø 因子分析(FactorAnalysis):原理、适用场景、载荷矩阵 Ø 主成份分析PCA:原理、几何含义、扩展KernelCA/ICA/… 案例:汽车油效预测 5、变量变换 Ø 为何需要变量变换 Ø 因变量变换对模型质量的影响 Ø 特征标准化:作用、不同模型对标准化的要求、不同标准化对模型的影响 Ø 其它变换:正态化、正则化等 6、变量派生:基于业务经验的派生、多项式派生 7、特征工程的管道实现 Ø 管道类Pipeline Ø 列转换类ColumnTransformer Ø 特征合并类FeatureUnion 第十一部分: 预测模型优化—集成优化篇1、模型的优化思路 2、集成算法基本原理 Ø 单独构建多个弱分类器 Ø 多个弱分类器组合投票,决定预测结果 3、集成方法的种类:Bagging、Boosting、Stacking 4、Bagging集成:随机森林RF Ø 数据/属性重抽样 Ø 决策依据:少数服从多数 5、Boosting集成:AdaBoost模型 Ø 基于误分数据建模 Ø 样本选择权重更新公式 Ø 决策依据:加权投票 6、高级模型介绍与实现 Ø GBDT梯度提升决策树 Ø XGBoost Ø LightGBM 第十二部分: XGBoost模型详解及优化1、 基本参数配置 Ø 框架基本参数: n_estimators, objective Ø 性能相关参数: learning_rate Ø 模型复杂度参数:max_depth,min_child_weight,gamma Ø 生长策略参数: grow_policy, tree_method, max_bin Ø 随机性参数:subsample,colsample_bytree Ø 正则项参数:reg_alpha,reg_lambda Ø 样本不均衡参数: scale_pos_weight 2、 早期停止与基类个数优化(n_estimators、early_stopping_rounds) 3、 样本不平衡处理 Ø 欠抽样与过抽样 Ø scale_pos_weight= neg_num/pos_num 4、 XGBoost模型欠拟合优化措施 Ø 增维,派生新特征 ² 非线性检验 ² 相互作用检验 Ø 降噪,剔除噪声数据 ² 剔除不显著影响因素 ² 剔除预测离群值(仅回归) ² 多重共线性检验(仅回归) Ø 变量变换 ² 自变量标准化 ² 残差项检验与因变量变换 Ø 增加树的深度与复杂度 ² 增大max_depth ² 减小min_child_weight, gamma等 Ø 禁止正则项生效 5、 特征重要性评估与自动特征选择 6、 超参优化策略: Ø 分组调参:参数分组分别调优 Ø 分层调参:先粗调再细调 7、 XGBoost模型过拟合优化措施 Ø 降维,减少特征数量 Ø 限制树的深度和复杂度 ² 减小max_depth ² 增大min_child_weight,gamma等 Ø 采用dart模型来控制过拟合(引入dropout技术) Ø 启用正则项惩罚:reg_alpha,reg_lambda等 Ø 启用随机采样:subsample,colsample_bytree等 8、 Stacking模式:XGBoost+LR、XGBoost+RF等 9、 XGBoost的优化模型:LightGBM 第十三部分: 银行客户信用卡模型1、 信用评分卡模型简介 2、 评分卡的关键问题 3、 信用评分卡建立过程 Ø 筛选重要属性 Ø 数据集转化 Ø 建立分类模型 Ø 计算属性分值 Ø 确定审批阈值 4、 筛选重要属性 Ø 属性分段 Ø 基本概念:WOE、IV Ø 属性重要性评估 5、 数据集转化 Ø 连续属性最优分段 Ø 计算属性取值的WOE 6、 建立分类模型 Ø 训练逻辑回归模型 Ø 评估模型 Ø 得到字段系数 7、 计算属性分值 Ø 计算补偿与刻度值 Ø 计算各字段得分 Ø 生成评分卡 8、 确定审批阈值 Ø 画K-S曲线 Ø 计算K-S值 Ø 获取最优阈值 案例:构建银行小额贷款的用户信用模型 第十四部分: 数据建模实战篇1、电信业客户流失预警和客户挽留模型实战 2、银行欠贷风险预测模型实战 3、银行信用卡评分模型实战 结束:课程总结与问题答疑。
|