python之机器学习一:决策树之分类树(1)

一 、概述

决策树:有监督学习的一种算法,并且是一种基本的分类与回归的方法。
决策树分为分类树和回归树,本章主要是分类树。

二、决策树的准备工作

决策树的构建分为三个过程:特征选择、决策树的生成、决策树的剪枝

1 原理: 由根节点到叶节点构成一条规则,中间结点的特征对应着规则的条件,叶结点的特征(类标签)对应着结论。决策树路径互斥且完备,即每一个实例被有且仅有一条路径或规则覆盖(实例满足规则的条件)。

2 特征选择

目的: 选取对训练数据具有分类能力的特征。
随着划分的进行,我们希望决策树的分支节点所包含的样本尽可能属于同一类别,也就是节点的纯度越来越高。

2.1香农熵

计算所有类别所有可能值包含的信息期望值: E n t ( D ) = − ∑ i = 1 n p ( x i ) log ⁡ 2 p ( x i ) Ent(D) = - \sum_{i=1}^n{p(x_i)}\log_2^{p(x_i)} Ent(D)=i=1np(xi)log2p(xi)

:Ent(D)值越高,D的不纯度越高,混合数据越多。

'''
计算香农熵
'''
def calEnt(dataSet):
    n = dataSet.shape[0]
    iset = dataSet.iloc[:,-1].value_counts()  #标记类别
    p = iset/n                   #标签类别比
    ent = (-p*np.log2(p)).sum()  #信息熵
    return ent
2.2信息增益

信息增益是父节点的信息熵与其下修正后的所有子节点总信息熵之差

假设属性a有V个可能的值{ a 1 , a 2 , . . . , a v a^1, a^2,...,a^v a1,a

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值