【AI学习笔记】初学机器学习西瓜书概要记录(二)常用的机器学习方法篇
初学机器学习西瓜书的概要记录(一)机器学习基础知识篇(已完结)
初学机器学习西瓜书的概要记录(二)常用的机器学习方法篇(持续更新)
初学机器学习西瓜书的概要记录(三)进阶知识篇(待更)
文字公式撰写不易,随意学习,转载请注明!谢谢
(二)常用的机器学习方法篇
- 4.1 决策树的基本流程
- 4.2 信息增益划分
以下内容出自周志华老师亲讲西瓜书
4.1 决策树的基本流程
决策树基于“树”结构进行决策
- 每个内部结点对应某个属性上的测试
- 每个分支对应于该测试的一种可能结果(即该属性的某个取值)
- 每个叶结点对应于一个预测结果
学习过程:通过对训练样本的分析来确定“划分属性”(即内部结点所对应的属性)
预测过程:将测试示例从跟结点开始,沿着划分属性所构成的“判定测试序列”下行,直到叶结点
策略:分而治之,自根至叶的递归过程,在每个中间结点寻找一个"划分"属性
对当前某个结点进行划分时,确定递归停止的三种条件:
- 当前结点包含的样本全属于同一类别,无需划分;
- 当前属性集为空,或是所以样本在所有属性上取值相同,无法划分;
- 当前结点包含的样本集为空,不能划分。
4.2 信息增益划分
决策树的提出是收到信息论的启发,因此很多东西是以信息论的准测进行判断,而在信息论中最重要的一个量就是“熵”
信息熵是度量样本集合“纯度”最常用的一种指标,假定当前样本集合 D D D 中第 k k k 类样本所占的比例为 p k p_k pk,则 D D D 的信息熵定义为
E n t ( D ) = − ∑ k = 1 ∣ y ∣ p k l o g 2 p k Ent(D)=-\sum^{|y|}_{k=1}p_klog_2p_k Ent(D)=−k=1∑∣y∣pklog2pk
计算信息熵时约定:若 p = 0 p=0 p=0,则 p l o g 2 p = 0 plog_2p=0 plog2p=0
E n t ( D ) Ent(D) Ent(D) 的值越小,则 D D D 的纯度越高, E n t ( D ) Ent(D) Ent(D) 的最小值为 0,最大值为 l o g 2 ∣ y ∣ log_2{|y|} log2∣y∣
信息增益直接以信息熵为基础,计算当前划分对信息熵所造成的变化
离散属性 a a a 的取值: { a 1 , a 2 , . . . , a V } \{a^1,a^2,...,a^V\} {a1,a2,...,aV}
D v D^v Dv: D D D 在 a a a 上取值 = a v =a^v =av的样本集合
以属性 a a a 对数据集 D D D 进行划分所获得的新增增益为:
G a i n ( D , a ) = E n t ( D ) − ∑ v = 1 V ∣ D v ∣ ∣ D ∣ E n t ( D v ) Gain(D,a)=Ent(D) - \sum_{v=1}^V{|D^v|\over |D|}Ent(D^v) Gain(D,a)=Ent(D)−v=1∑V∣D∣∣Dv∣Ent(Dv)
其中:
E n t ( D ) Ent(D) Ent(D) 为划分前的信息熵
∣ D v ∣ ∣ D ∣ {|D^v|\over |D|} ∣D∣∣Dv∣ 为第 v v v个分支的权重,样本越多越重要
E n t ( D v ) Ent(D^v) Ent(Dv) 为划分后的信息熵