决策树(理论知识4)

目录

决策树中的连续值处理

在前面的数据集中,各项特征(以及标签)均为离散型数据,但有时处理的数据对象可能会含有连续性数值,为了解决这一问题,我们可以对数据进行离散化处理。此时,可把连续取值的数据值域划分为多个区间,并将每个区间视为该特征的一个取值,如此就完成了从连续性数据到离散性数据的转变。例如,当 "学校举办运动会的历史数据" 为下表时,我们可根据这些数据(并结合相关知识)将温度特征的取值作以下划分:

将 "温度" 属性进行分区处理:

对于一些尚无明确划分标准的特征(如下面是一组无具体含义的数据):

62,65,72,86,89,96,102,116,118,120,125,169,187,211,218

我们要如何将这些数据进行离散化呢?一种较为直接的方式是:对原数据进行排序,再取任意相邻值的中位点作为划分点,

例如:可以取65和72的中位点( φ = a i + a i + 1 2 = 65 + 72 2 = 68.5 \varphi=\frac{a_i+a_{i+1}}{2}=\frac{65+72}{2}=68.5 φ=2ai+ai+1=265+72=68.5)进行划分。对数据进行离散化处理是希望划分之后的数据集更加纯净,

所以这里依然可以用信息熵来作为对划分的度量,并选取划分效果最好的点作为划分点。

对于长度为n的数据,其备选中位点有n−1个:
φ = { a i + a i + 1 2 , 1 < = i < = n − 1 } \varphi=\{\frac{a_i+a_{i+1}}{2},1<=i<=n-1\} φ={2ai+ai+1,1<=i<=n−1}

我们需要算出这n−1个备选中位点划分出的数据集的信息熵,信息熵最小的就是最优划分点。

在评估决策树执行分类或回归任务的效果时,其方式也有所不同。对于分类任务,可用熵或基尼系数;对于回归任务,则需要用方差来衡量最终落到某个叶子节点中的数值之间的差异(方差越小则说明数据之间的差异越小,越应该被归类到一类)。注:决策树在执行回归任务时,其最终反馈的结果应当取某个叶子结点中所有数的均值。

相关推荐
千纸鹤安安21 小时前
千问Qwen-AgentWorld来了:一个语言模型搞定七大Agent场景,GPT-5.4都输了
算法
七牛开发者1 天前
MCP 到底是什么?为什么 Agent 都想接上它
算法·aigc·agent
魏祖潇1 天前
我在飞书里养了个“分身”——私聊喊它办事,群里 @ 它干活,还能替我传话
人工智能·机器学习
kisshyshy1 天前
从递归到迭代,一文吃透二叉树的核心知识与 JavaScript 实现
javascript·算法·代码规范
To_OC2 天前
LC 49 字母异位词分组:想到哈希表很简单,选对 key 才是精髓
javascript·算法·leetcode
用户938515635072 天前
从 O(n²) 到 O(nlogn):一文读懂快速排序的“快”与“妙”
javascript·算法
To_OC2 天前
手写快排次次翻车?别死背快排模板了,这才是面试官想听的底层逻辑
javascript·算法·排序算法
饼干哥哥2 天前
Reddit VOC调研太慢?搭一个AI专家团队半小时洞察任何品类|以猫用饮水机为例
人工智能·算法·ai编程