决策树与决策树回归详解——基于电信客户流失预测案例
一、机器学习中的决策树算法简介在机器学习领域分类和预测问题是最常见的任务之一。例如银行预测客户是否违约电信企业预测客户是否流失医疗系统预测疾病风险电商预测用户购买行为这些问题都有一个共同特点根据已有数据中的多个特征预测一个未知结果。例如电信客户数据年龄消费金额套餐类型是否流失2580普通是40200高级否模型需要学习输入年龄 消费金额 套餐类型输出是否流失决策树就是解决此类问题的重要算法之一。二、什么是决策树2.1 决策树概念决策树Decision Tree是一种基于树形结构进行决策的监督学习算法。它通过选择最优特征根据特征划分数据递归构建树结构根据叶节点输出结果完成分类或者预测任务。简单理解决策树就是模拟人类判断过程的一种机器学习模型。例如判断客户是否流失是否长期合约 / \ 有 无 | | 不易流失 消费金额 | 容易流失三、决策树的结构组成一棵完整的决策树包含根节点内部节点叶节点3.1 根节点根节点表示第一次进行数据划分的特征。它通常选择对分类影响最大的特征。例如合约类型3.2 内部节点内部节点表示一次特征判断。例如消费金额 1003.3 叶节点叶节点表示最终预测结果。例如客户流失 客户未流失四、决策树算法工作原理决策树训练过程第一步选择最佳特征从所有特征中寻找最能区分样本的特征。例如比较年龄 消费金额 套餐类型 合约情况寻找哪一个特征划分后类别最纯。第二步数据划分根据选择的特征将数据分成多个子集。第三步递归建立树继续对子节点进行划分。直到满足停止条件。第四步预测新数据进入树结构按照判断条件不断向下移动。最终到达叶节点得到预测结果。五、决策树特征选择方法决策树核心问题如何选择最优划分特征常用指标基尼指数(Gini)信息熵(Entropy)信息增益六、基尼指数(Gini)原理代码criteriongini基尼指数是CART决策树默认方法。公式Gini(D)1−∑pi2Gini(D)1-\sum p_i^2Gini(D)1−∑pi2​其中$p_i$表示类别比例。例如节点中100个客户 60个流失 40个未流失计算Gini1−(0.620.42)Gini1-(0.6^20.4^2)Gini1−(0.620.42)结果0.480.480.48基尼指数越小表示节点越纯。七、信息熵与信息增益代码criterionentropy信息熵用于衡量数据的不确定程度。公式H(D)−∑pilog2piH(D)-\sum p_i log_2p_iH(D)−∑pi​log2​pi​如果一个节点全部属于同一类别100%流失熵接近0。如果50%流失 50%未流失熵较高。因此熵越低分类效果越好。八、决策树回归原理决策树不仅可以分类也可以用于回归。区别模型预测结果分类树类别回归树连续数值例如分类是否流失 0/1回归房价 350万元九、决策树回归的数学原理回归树目标寻找最佳划分方式使预测误差最小。常用指标均方误差(MSE)公式MSE1n∑(y−y^)2MSE\frac1n\sum(y-\hat y)^2MSEn1​∑(y−y^​)2划分后每个叶节点输出该区域样本平均值。例如预测房价区域A300 350 400预测值350十、电信客户流失预测案例介绍项目背景电信行业竞争激烈。客户流失会导致收入下降用户减少运营成本增加因此提前预测潜在流失客户具有重要意义。目标根据客户信息预测客户是否流失十一、数据读取与数据划分读取数据dataspd.read_excel( 电信客户流失数据2.xlsx )划分特征datadatas.iloc[:,:-1]划分标签targetdatas.iloc[:,-1]数据划分train_test_split()比例训练集 80% 测试集 20%十二、决策树模型建立与参数优化建立模型DecisionTreeClassifier()由于决策树容易过拟合需要参数优化。使用GridSearchCV()自动搜索最佳参数。主要参数criterion划分方式ginientropymax_depth控制树最大深度。影响深度结果过小欠拟合过大过拟合min_samples_split节点继续划分需要的最少样本。min_samples_leaf叶节点最少样本数量。十三、模型评价方法模型训练完成后需要评价效果。主要指标1.Accuracy准确率预测正确比例。2.Precision精确率预测流失的人中真正流失比例。3.Recall召回率真实流失客户中成功发现比例。4.F1-score综合评价Precision和Recall。5.混淆矩阵结构预测0预测1真实0TNFP真实1FNTP用于分析模型预测错误类型。十四、决策树可视化与模型分析使用plot_tree()可以查看特征划分过程每个节点样本数量分类结果决策路径例如消费金额100 | | 套餐类型 | 客户流失可视化提高模型解释能力。十五、决策树总结与应用决策树优点1. 可解释性强结构类似人工规则。2. 不需要标准化不受特征尺度影响。3. 能处理非线性关系决策树缺点1. 容易过拟合树过深容易记住训练数据。2. 稳定性较差数据稍微变化树结构可能变化。3. 泛化能力有限因此实际应用中通常使用随机森林等集成算法。

相关新闻

STM32串口控制LED:从硬件电路到通信协议的嵌入式入门实践

STM32串口控制LED:从硬件电路到通信协议的嵌入式入门实践

1. 项目概述:从“点灯”到通信的桥梁“通过串口控制LED的亮灭”,这个标题听起来像是嵌入式开发领域一个再基础不过的“Hello World”级实验。确实,对于很多初学者来说,这往往是他们用单片机做的第一个交互式实验。但如果你认为这仅…

2026/10/29 23:51:33 阅读更多 →
第四章WSaiOS行业认知系统工程

第四章WSaiOS行业认知系统工程

第九卷WSaiOS应用工程实践WSaiOS Application Engineering Practice第四章WSaiOS行业认知系统工程WSaiOS Industry Cognitive System Engineering4.1 项目概述WSaiOS行业认知系统工程,是WSaiOS面向行业领域开发的综合分析应用系统。系统目标:将一个行业中…

2026/11/1 1:12:03 阅读更多 →
Vitis AI开发套件安装指南:从环境准备到实战部署避坑

Vitis AI开发套件安装指南:从环境准备到实战部署避坑

1. 项目概述:为什么Vitis AI开发套件是FPGA/SoC开发者的必备工具 如果你正在接触Xilinx(现在是AMD的一部分)的FPGA或Zynq/SoC平台,并且对边缘AI应用感兴趣,那么Vitis AI开发套件绝对是你绕不开的一环。它不是一个简单的…

2026/10/31 4:08:40 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/1 0:24:43 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/31 10:20:19 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/31 10:20:23 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/1 1:06:58 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/31 10:30:19 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/31 9:29:43 阅读更多 →

日新闻

周新闻

月新闻