当前位置:网站首页>Decision tree principle and code implementation
Decision tree principle and code implementation
2022-07-29 23:55:00 【The romance of cherry blossoms】
1.树模型
决策树:从根节点开始一步步走到叶子节点(决策)
所有的数据最终都会落到叶子节点,既可以做分类也可以做回归
2.树的组成
根节点:第一个选择点
非叶子节点与分支:中间过程
叶子节点:最终的决策结果
3.决策树的训练与测试
训练阶段:从给定的训练集构造出来一棵树(从跟节点开始选择特征, 如何进行特征切分)
测试阶段:According to the constructed tree model, it goes from the root node to the leaf node
如何切分特征(选择节点)
目标:通过一种衡量标准,来计算通过不同特征进行分支选择后的分类情况,找出来最好的那个当成根节点
衡量标准-熵
熵:熵是表示随机变量不确定性的度量 (解释:物体内部的混乱程度,比如杂货市场里面什么都有那肯定混乱呀,专卖店里面只卖一个牌子的那就稳定多啦)
公式:H(X)=- ∑ pi * logpi, i=1,2, ... , n
比如:
A集合[1,1,1,1,1,1,1,1,2,2] 、B集合[1,2,3,4,5,6,7,8,9,1]
显然A集合的熵值要低,因为A里面只有两种类别,relatively stableB中类别太多了,熵值就会大很多
熵:不确定性越大,得到的熵值也就越大,当p=0或p=1时,H(p)=0,随机变量完全没有不确定性,当p=0.5时,H(p)=1,此时随机变量的不确定性最大

如何决策一个节点的选择呢?
信息增益:表示特征X使得类Y的不确定性减少的程度.(分类后的专一性,希望分类后的结果是同类在一起)
决策树构造实例
数据:14天打球情况
特征:4种环境变化
目标:构造决策树
划分方式:4种

在历史数据中(14天)有9天打球,5天不打球,所以此时的熵应为:
4个特征逐一分析,先从outlook特征开始:
Outlook = sunny时,熵值为0.971
Outlook = overcast时,熵值为0
Outlook = rainy时,熵值为0.971
决策树算法
ID3:信息增益
问题:When data exists oneID特征,那么,决策树在idThe entropy of the feature is0,就会根据ID进行分支,但是IDFeatures are meaningless.Decision trees cannot handle matrix sparsity,There are more kindsid特征
(和熵的衡量标准类似,计算方式不相同)
连续值怎么办?
决策树剪枝策略
为什么要剪枝:决策树过拟合风险很大,理论上可以完全分得开数据

边栏推荐
猜你喜欢

Some personal understandings about MySQL indexes (partially refer to MySQL45 lectures)
![CesiumJS 2022^ 源码解读[0] - 文章目录与源码工程结构](/img/6a/0a446eb00fb73275897cbfb336e0b0.png)
CesiumJS 2022^ 源码解读[0] - 文章目录与源码工程结构

Mysql内外连接

桌面软件开发框架大赏

【无标题】

Install PyCharm on Raspberry Pi

UE4 makes crosshair + recoil

EA&UML日拱一卒-多任务编程超入门-(7)关于mutex,你必须知道的

EA & UML Sun Gong Yip - Multitasking Programming Super Introductory - (7) About mutex, you must know

logback过期日志文件自动删除
随机推荐
Install PyCharm on Raspberry Pi
深度学习的随机种子
微信小程序获取手机号getPhoneNumber接口报错41001
SQL Server、MySQL主从搭建,EF Core读写分离代码实现
容器化 | 在 Rancher 中部署 MySQL 集群
devops学习(十) Jenkins 流水线
PyTorch笔记 - Attention Is All You Need (1)
容器化数据库必经之道
环形链表(LeetCode 141、142)
Docker install MySQL8.0
新标杆!美创科技助力广西桂林某三甲医院实现勒索病毒主动防御
USACO2008通信线路
mysql使用on duplicate key update批量更新数据
Getting Started with Sentinel
乐理&吉他技巧
对数据库进行增删改查操作
子无序测试
Access Modbus TCP and Modbus RTU protocol devices using Neuron
Prometheus 的功能特性
esp12f + tft 显示图片问题