3.1 机器学习 --- 决策树

3.1 机器学习 — 决策树

一 金融评分卡

  • 模型做好后尽量快的上线,以符合要求的模型,尽快上线。
  • 超参数赋予权重,使得模型的参数不一致,而达到均衡样本数据

二 决策树原理

1. 找女朋友
  • 性别:男 女
  • 年龄:20-23 非20-23
  • 学历:高中以上 高中以下
  • 颜值:>=75 <75
  • 子女状况:无 有
  • 恋爱经历:5段以下 5段及以上
  • 负债情况:10万以下 10万及以上
  • 相处到结婚:3-4年 非3-4年
  • 是否接收异地恋:可以 不可以
  • 是否接受控制欲比较强的:接受 不接受
  • 财政大全在谁的手中:接受 不接受
  • 养老负担 : 两个及以下 两个以上
    以上都是对标签值进行二分类
2. 决策树定义

决策树的定义:决策树(decision tree)是一个树结构(可以是二叉树或非二叉树)。其每个非叶节点表示一个特征属性上的测试,每个分支代表这个特征属性在某个值域上的输出,而每个叶节点存放一个类别。使用决策树进行决策的过程就是从根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,直到到达叶子节点,将叶子节点存放的类别作为决策结果。

决策树的特点:可以看到,决策树的决策过程非常直观,容易被人理解。目前决策树已经成功运用于医学、制造产业、天文学、分支生物学以及商业等诸多领域。之前介绍的K-近邻算法可以完成很多分类任务,但是它最大的缺点就是无法给出数据的内在含义,决策树的主要优势就在于数据形式非常容易理解。决策树算法能够读取数据集合,构建类似于上面的决策树。决策树很多任务都是为了数据中所蕴含的知识信息,因此决策树可以使用不熟悉的数据集合,并从中提

  • 过程非常直观,易于理解
    • 黑盒模型 :对输出的结果不清楚原理,只是知道结果,可解释性不强。
    • 百盒模型/灰盒模型:清楚训练原理,对结果的产生可解释性强

不同于逻辑斯蒂回归和贝叶斯算法,决策树的构造过程不依赖领域知识,它使用属性选择度量来选择将元组最好地划分成不同的类的属性。所谓决策树的构造就是进行属性选择度量确定各个特征属性之间的拓扑结构。构造决策树的关键步骤是分裂属性。所谓分裂属性就是在某个节点处按照某一特征属性的不同划分构造不同的分支,其目标是让各个分裂子集尽+可能地"纯"尽可能"纯"就是尽量让一个分裂子集中待分类项属于同一类别。
简而言之,决策树的划分原则就是:将无序的数据变得更加有序

分裂属性分为三种不同的情况:
属性是离散值且不要求生成二叉决策树。此时用属性的每一个划分作为一个分支。
属性是离散值且要求生成二叉决策树。此时使用属性划分的一个子集进行测试,按照"属于此子集"和"不属此子集"分成两个分支
·属性是连续值。

三 ID3、C4.5、CART

这个概念最早起源于物理学,在物理学中是用来度量一个热力学系统的无序程度。而在信息学里面,嫡是对不确定性的度量。在1948年,**香农引入了信息嫡,将其定义为离散随机事件出现的概率,一个系统越是有序,信息嫡就越低,反之一个系统越是混乱,它的信息嫡就越高。**所以信息嫡可以被认为是系统有序化程度的一个度量。
在可以评测哪种数据划分方式是最好的数据划分之前,我们必须学习如何计算信息增益。集合信息的度量方式称为香农嫡或者简称为嫡,这个名字来源于信息论之父克劳德·香农
嫡定义为信息的期望值,在明晰这个概念之前,我们必须知道信息的定义。如果待分类的事务可能划分在多个分类之中,则符号x的信息定义为:

先处理熵高的,即先处理混乱程度大的。

**信息增益:**在划分数据集之前之后信息发生的变化称为信息增益。
我们可以使用多种方法划分数据集,但是每种方法都有各自的优缺点。组织杂乱无章数据的一种方法就是使用信息论度量信息,信息论是量化处理信息的分支科学。我们可以在划分数据之前使用信息论量化度量信息的内容。知道如何计算信息增益,我们就可以计算每个特征值划分数据集获得的信息增益,获得信息增益最高的特征就是最好的选择。

ID3算法的优缺点:

优点

  • 方法简单、计算量小、理论清晰、学习能力较强、比较适用于处理规模较大的学习问题。

缺点

  • 倾向于选择那些属性取值比较多的属性,在实际的应用中往往取值比较多的属性对分类没有太大价值、不能对连续属性进行处理、对噪声数据比较敏感、需计算每一个属性的信息增益值、计算代价较高。由于信息增益的不稳定性,容易倾向于众数属性导致过度拟合,算法抗干扰能力差。
其他常见算法
  • CLS 算法:是最原始的决策树分类算法,基本流程是,从一棵空数出发,不断的从决策表选取属性加入数的生长过程中,直到决策树可以满足分类要求为止。CLS算法存在的主要问题是在新增属性选取时有很大的随机性。ID3算法是对CLS算法的改进,主要是摒弃了属性选择的随机性。

  • C4.5 算法

    基于ID3算法的改进,主要包括:使用信息增益比替换了信息增益下降度作为属性选择的标准;在决策树构造的同时进行剪枝操作;避免了树的过度拟合情况;可以对不完整属性和连续型数据进行处理;使用k交叉验证降低了计算复杂度;针对数据构成形式,提升了算法的普适性。

  • CART树


    在这里插入图片描述

四 决策树代码实现

1 . 信息增益 ID3
import math
import numpy as np

# 账号是否真实
# p(no) = 3/10
# p(yes) = 7/10

# np yes
info_D= -0.3*math.log2(0.3) - 0.7*math.log2(0.7)
info_D  #  0.8812908992306927

## 1. 日志密度
# 1.按照日志密度进行划分
info_s = -(2/3)*math.log2(2/3) - (1/3)*math.log2(1/3)
info_l = -1*math.log2(1)
info_m = -(1/4)*math.log2(1/4)-(3/4)*math.log2(3/4)

# 日志密度
info_L_D = 0.3*info_s+0.3*info_l+0.4*info_m
info_L_D  # 0.6

## 按照日志密度的信息增益
info_D - info_L_D   #0.2812908992306927

# 按照好友密度的信息增益
info_s1 = -(1/4)*math.log2(1/4) - (3/4)*math.log2(3/4)
info_l1 = -1*math.log2(1)
info_m1 = -1*math.log2(1)
info_L_D1 
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值