首页 > 其他分享 >决策树简介

决策树简介

时间:2022-09-19 13:33:11浏览次数:95  
标签:10 概率 ve 错误率 简介 Eg 决策树

决策树简介

决策树实际上是一个布尔函数,它的输出可以是“0 或 1”或“-1 或 +1”或“-1、0 或 +1”。决策树的大小等于其中存在的节点数,其深度等于从顶部到根的最长路径的长度。

错误率:

训练集始终是给模型的标记示例,模型训练得越多,其错误率就越低。

训练样本 = { set } = { (X¹, Y¹), (X², Y²),...。 (X^n, Y^m) }
其中“n”表示训练样本的特征数,“m”表示训练样本的大小。

错误率/训练错误在数学上等于“训练时模型出错的样本数/样本总大小”。

树的根和错误率:

通过说根,我们实际上是指连接到当前节点的下一个节点。 X¹ 的根表示,X¹ 的输出将传递给下一个节点/根。

通常,根表示树的所有节点产生的最终输出。即整个模型的输出。

势函数 (Ø, phi) 用于决定必须将什么值放在树的根部,其根部的值是模型的实际输出。

Ø(a) = min(a, 1 — a)

假设我们提供了一个模型,其中包含“10”个正例和“5”个负例。为了计算节点 X¹ 中 Y = 0 时的错误率,

要得到 Y = 0,我们必须弄错 10 个正例。因为,错误率是(错误的样本数/总样本数)= 10/(10 + 5)= 2/3

并且,Ø(2/3) = min(2/3, 1/3) = 1/3

这是单节点 Y = 0 的平凡决策树的错误率。错误率为 1/3。

一般来说,错误率 = 概率 ( [x,y]~{set}, Y = 0 )

例如 2:假设在决策树的节点/叶“X¹”中,计算 Y = 0 的概率。如果我们为其提供“12”个正例和“4”个负例。

Ø 要得到 Y = 0,我们必须得到 '12' 个正例错误。所以,率=
12/16 = 1/4

最后使用势函数,Ø(1/4) = min(1/4, 3/4) = 1/4。

这种计算错误率的算法通常是基于一个字面的概率,但是如果我们不确定样本的数量,

那么,新的错误率=

概率([x,y]~{set}, X¹ = 0)。 Ø 概率 (( [x,y]~{set}, (Y = 0/ X¹ = 0 ) + 概率( [x,y]~{set}, X¹ = 1 )。Ø 概率 (( [x,y] ~{set}, (Y = 0/ X¹ = 1)

因此,X¹ 的最大增益计算为使用 X¹ 的旧错误率 - 使用 X¹ 的新错误率。

我们总是将最高增益的输出放在树的下一个节点/根中。

深入潜在功能,基因功能:

树的结构由其势函数 Ø (phi) 决定。势函数 Ø(a) = min( a, 1 — a) 对应模型的错误率,通常表示为 'ع'。

Ø(a) = 2.a.( 1 — a) 的基因函数,表示为'ز'。实际上,基因功能只是潜在功能的上限,或者'ز'是'ع'的上限。它的值越小,训练中的误差就越小。

计算和例子:

样本模型,S =

Ø ++
Ø + X¹ | X² | +ve 例如。 | -ve 例如 +
Ø +
+
Ø + 0 | 0 | 1 | 1+
Ø + 0 | 1 | 2 | 1+
Ø + 1 | 0 | 3 | 1. +
Ø + 1 | 1. | 4 | 2. +
Ø +==============================+

Ø(a) = 2。一个 。 (一——一)

1.计算Ø(概率( S [ -ve Eg ]):

负例总数 = 5
示例总数 = 15
反例的概率 = 1/3
现在,Ø(a) = 2。 1/3。 2/3 = 4/9。

这是潜在的功能
平凡的树,4/9。

为了通过手动函数决定将 X¹ 或 X² 放在树的根部,我们必须单独计算它们。

首先是 X¹ :

概率(X¹ = 0)。 Ø (Pr. (-ve Eg/ X¹ = 0)) + Pr.(X¹ = 1)。 Ø (Pr. (-ve Eg/ X¹ = 1))

1. 概率(X¹ = 0) =
X¹ 为 0 = 5_ 的样本数
总点数 15 即 1/3。

2. 概率(-ve Eg/X¹ = 0)=
-ve 的数量,例如 X¹ 为 0 = 2
X¹ 为 0 的 Eg 总数 5
Ø(2/5) = 2. 2/5 . 3/5 = 12/15

3. 概率(X¹ = 1) = 2/3
4. 概率(-ve Eg/X¹ = 1) = 3/10
Ø(3/10)= 2. 3/10。 7/10 = 21/50

现在,整个值等于
1/3。 2/5 + 12/15。 21/50 = 11/25

将此值与 11/25 与 4/9(较早获得)进行比较,我们可以说 11/25 略小于 4/9。

现在为 X² 计算相同的东西:

概率(X² = 0)。 Ø (概率(-ve Eg/ X² = 0)) + 概率(X² = 1)。 Ø (概率(-ve Eg/ X² = 1))

1. 概率(X² = 0) =
X² 为 0 = 6_ 的样本数
总点数 15,即 2/5。

2. 概率(-ve Eg/X² = 0)=
X² 为 0 = 2 的 -ve Eg 的数量
X² 为 0 的 Eg 总数 6。即 1/3。
Ø(1/3) = 2. 1/3. 2/3 = 4/9

3. 概率(X² = 1) = 3/5
4. 概率(-ve Eg/X² = 1) = 1/3

Ø( 3/10) = 2. 3/9. 7/9 = 4/9

现在,整个值等于
2/5。 4/9 + 3/5.4/9 = 4/9

比较这个值,我们实际上得到了与我们之前获得的 4/9 相同的值。

现在,如果我们计算增益:
增益 = 旧值 - 新值

X¹ 的增益 = 4/9–11/25 > 0
X² 增益 = 4/9–4/9 = 0

因此,我们必须选择放入根中的文字是 X¹,因为选择 X¹ 会给我们的模型带来一些收益。
增益越大,错误率就越低。

我们的算法什么时候结束?

由于我们的算法是基于递归的,即使我们获得任何文字的最大增益,它也会继续运行。

为了给我们的算法做一个端点,我们有很多方法:

1. 当任何文字的增益变得非常小时,停止算法。这是结束算法的最常见方式。

2.通过剪枝,剪枝是从树中移除某些随机节点的过程。它可以帮助我们重新更改整个数据并重新计算输出

3. 通过智能构建决策树:

○ 通过使用随机森林算法构建一棵树。

在树的随机森林模型中,我们构建了许多小的独立决策树,并在所有小树中取最常见的输出。

我们可以通过对原始数据样本和随机特征进行随机二次抽样来创建一棵小树。所以每棵小树都有随机选择的点和随机选择的特征。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/37994/29231913

标签:10,概率,ve,错误率,简介,Eg,决策树
From: https://www.cnblogs.com/amboke/p/16707413.html

相关文章

  • slab着色区简介
    slab机制的简介表示如下图所示:slab内的结构如下图所示: 每个Slab的首部都有一个小小的区域是不用的,称为“着色区(coloringarea)”。着色区的大小使Slab中的每个对象......
  • tracer ftrace笔记(7)—— Perfetto简介
    一、Perfetto简介1.Perfetto支持多种数据来源,systrace、atrace、sysstat、HeapProfiles、logcat.也支持动态配置和定制。2.PerfettoUI一些常见的表述(1)slice:......
  • GFM语法个人简介示例
    个人简介基本信息姓名:曾强年龄:20岁职业:攻城狮爱好:看电影、听音乐、喝咖啡抽烟、喝酒、烫头(头发没了)人生格言:机会总是留给有准备的人。时时居先,方可快......
  • Spring(一):简介
    一、什么是Spring广义上的Spring泛指以SpringFramework为核心的Spring技术栈。经过十多年的发展,Spring已经不再是一个单纯的应用框架,而是逐渐发展成为一个由多个......
  • Clojure概念简介
    故事要从<<黑客与画家>>这本书说起,这本书讲述了硅谷创业之父PaulGraham的创业故事和人生体会。其中最有感触的有几点:1.财富是创造出来的,世界的财富是在渐进增长,钱只是......
  • 01-项目简介
    当你站在我的面前看我时,你知道我心里的悲伤吗商城模式B2C模式 项目技术&特色前后端分离开发,并开发基于Vue的后台管理系统springcloud全新的解决方案应用监......
  • django中的模板层简介
    1.什么是模板层模板层可以根据视图中传递的字典数据动态生产相应的HTML页面2.模板层的配置1.在项目下创建一个与同名文件夹平行的templates文件夹2.在settings.py中的T......
  • 第一章. 操作系统简介
    1操作系统的概念、功能和目标常见的操作系统:Windows,Android,iOS,MacOS,Linux1.1操作系统的概念操作系统的概念:1.管理协调硬件和软件等计算机资源2.为上层应用......
  • SDL开发库简介
    什么是SDLSimpleDirectMediaLayer是一个跨平台开发库,旨在通过OpenGL和Direct3D提供对音频、键盘、鼠标、游戏杆和图形硬件的低级访问。它被视频播放软件、模拟器和......
  • Lambda简介
     1、什么是Lambda?Lambda就是一个匿名函数。 2、为什么要使用Lambda?使用Lambda表达式可以对一个接口进行非常简洁的实现(如下图,分别是三种方式实现接口的对比)。 3......