其他分享
首页 > 其他分享> > ML笔记 | 零基础学懂机器学习(五)

ML笔记 | 零基础学懂机器学习(五)

作者:互联网

机器学习概述

决策树(decision trees)

  根据数据的属性采用树状结构建立决策模型。决策树模型常常用来解决分类和回归问题,从名字看解决离散型的分类问题的是决策树,决策连续型值的回归问题的是回归树(明白决策树的运行机制后,回归树也可理解)。常见的算法包括 CART (Classification And Regression Tree)、ID3、C4.5,它们都是采用贪心(即非回溯)方法,自顶向下递归的分治方法构造。在决策树理论中,“用较少的东西,照样可以做很好的事情。越是小的决策树,越优于大的决策树”。


  a) 决策树原理:决策树最简单的就是二元划分,类似于二叉树,也可以认为决策树是一种if-then规则集合(例子,见图18-1)。数据分类是一个两阶段过程,包括模型学习阶段(构建分类模型)和分类预测阶段(使用模型预测给定数据的类标号):

图片

  简单决策树,预测用户是否有能力偿还贷款,树中每个结点表示某个对象,内部结点表示一个特征或属性,叶结点表示一个类,而每个分叉路径则代表某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。每一个实例都被一条路径或一条规则所覆盖,而且只被一条路径或一条规则所覆盖。


  b) 决策树算法优点:算法比较简单、理论易于理解、与噪声数据有很好的健壮性。现在决策书是应用最广泛的归纳推理算法之一,衍生出许多出色的集成算法:随机森林、adaboost、gradient tree boosting等都是基于决策树模型。


  c) 决策树算法一般流程:


  d) 具体的,我们有了数据后要怎么构造一颗决策树?首先应该解决三个:


e) 要解决这三个问题就要明白些概念:

  上图的香农信息熵公式表示D(ata)中的元祖所有分类所有可能值的信息期望,其中,D表示训练数据集,m表示数据类别数,pi表示类别i样本数量占所有样本的比例。熵越大,说明系统越混乱,携带的信息就越少。熵越小,说明系统越有序,携带的信息就越多,信息的作用就是在于消除不确定性。

  对应数据集D,选择特征A作为决策树判断节点时,在特征A作用后的信息熵为infoA(D)(作用之前的信息熵为info(D))。其计算公式为,其中,K表示样本D被分为K部分,信息增益表示数据集D在特征A作用后,其信息熵减少的值,公式为:。对于决策树节点最合适的特征选择,就是Gain(A)值最大的特征。


  f) 不同的决策树算法在选择目标函数上会有差别:有最小化条件信息熵、信息增益(ID3)、信息增益比(C4.5)和基尼系数(CART)。

  [1] 回归树: 平方误差最小的准则

  [2] 分类树: 基尼系数最小的准则


  g) 剪枝:分类模型建立的过程中,很容易出现过拟合的现象。过拟合是指在模型学习训练中,训练样本达到非常高的逼近精度,但对检验样本的逼近误差随着训练次数而呈现出先下降后上升的现象。过拟合时训练误差很小,但是检验误差很大,不利于实际应用。决策树的过拟合现象可以通过剪枝进行一定的修复,剪枝分为预先剪枝和后剪枝两种。


  h) 决策树模型评估:用来判断得到的决策树模型的优劣。学习算法模型使用训练集建立模型、使用测试集评估模型。


  i) 决策树的评估指标:分类准确度、召回率(recall)、虚警率和精确度等,具体这些指标是基于混淆矩阵(confusion matrix)进行计算的,矩阵的行表示实际分类,矩阵列表示预测分类。以二类分类为例(要识别的是类1)(与前面6相似):


实际为类1

实际为类2

预测为1

TP(true positive)

FN(false negative)

预测为2

FP(false positive)

TN(true negative)

总计

P(positive)

N(negative)

  TP:待预测图片是类1,且被准确识别为类1;

  FN:待预测图片是非类1(类2),却被错误识别为类1;

  FP:待预测图片是类1,却被错误识别为非类1(类2);

  TN:待预测图片是非类1(类2),且被正确识别为非类1(类2);

  P:测试过的所有真实类别为类1的测试图片;

  N:测试过的所有真实类别为非类1(类2)的测试图片;

  准确度(对错样本分别被正确分类的概率)公式:图片

  召回率(对的样本被识别的概率)公式:图片

  虚警率(错的样本被错误当作对的样本的概率)公式:图片

  精确度(分类为正样本中正确图片的概率)公式:图片


  i) 决策树评估方法:保留法、随机二次抽样、交叉验证和自助法等。

  保留法 (holdout) 是评估分类模型性能的最基本的一种方法。将被标记的原始数据集分成训练集和检验集两份,训练集用于训练分类模型,检验集用于评估分类模型性能。但此方法不适用样本较小的情况,模型可能高度依赖训练集和检验集的构成。


标签:剪枝,ML,模型,分类,信息熵,笔记,学懂,数据,决策树
来源: https://blog.51cto.com/15057851/2674179