时间:2022-12-22 02:30:01 | 来源:信息时代
时间:2022-12-22 02:30:01 来源:信息时代
分类分析 : 找出描述并区分数据类的模型,并使用该模型预测给定数据所属数据类的过程。
给定一个数据集D,D中的属性有{A1,A2,…,Ai,…,Ad},D={X1,X2,…,Xi,…,Xn},其中,Xi(1≤i≤n)是D中的一个数据对象,由d个属性值组成:Xi=(xi1,xi2,…,xij,…,xid),其中xij表示对象Xi中的属性,d是属性个数(或对象空间的维数)。以及一个类集合C={C1,C2,…,Cj,…,Ck}(1<=j<=k)。
分类(classify): 找到从数据集D到类集合C的映射f:D→C,即将数据集合D中的数据对象Xi分配到某个类Cj中的过程,有Ci={Xi|f(Xi)=Ci,1≤i≤n,且Xi∈D}。
训练数据集(training dataset): 给定一个数据集D和一组具有不同特征的类集合C,数据集中为建立模型而被分析的数据对象的集合称为训练数据集。每个对象属于一个预定义的类,由相关属性(或特征值)组成,由一个称作类别属性的属性确定。
训练样本(training samples):训练数据集中的单个数据对象称为训练样本,训练样本随机地由数据集选取,每个训练样本有一个类别标记。一个具体训练样本的形式为(v1,v2,…,vi,…,vd;Cj),其中,vi表示属性值,Cj表示类别。
构造分类器的过程分为训练和测试两个步骤。一般来说,测试阶段的代价远远低于训练阶段。具体过程如下:
(1)模型训练阶段: 分析输入数据,通过在训练数据集中数据表现出来的特性,为每一个类找到一种准确的描述或模型。通常学习模型用决策树、分类规则或数学公式的形式提供。
(2)测试阶段(使用模型分类阶段):利用类别的描述或模型对测试数据进行分类。首先用测试数据评估分类规则的准确率(正确被模型分类的测试样本的百分比),如果准确率是可以接受的,则模型可用于对类标号未知的新的数据对象进行分类。
分类模型的构造方法主要有机器学习方法、统计方法、神经网络方法等。机器学习方法包括决策树法和规则归纳法等,决策树法对应的表示为决策树,规则归纳法对应表示为产生式规则; 统计方法包括贝叶斯法和非参数法(近邻学习或基于事例的学习),对应的知识表示为判别函数和原型事例; 神经网络方法主要是BP算法,它的模型表示是前向反馈神经网络模型(由代表神经元的节点和代表连接权值的边组成的一种体系结构); 另外,还有粗糙集(rough set)方法,其知识表示是产生式规则。
评价分类模型的尺度主要有: 预测准确度、计算复杂度和模型描述的简洁度。
分类的效果还与数据的特点有关,如噪声大、存在空缺值、样本分布稀疏、属性间的相关性强、存在离散值属性或连续值属性或混合式的属性。
决策树是一种具有较高准确度且简单易于理解的分类方法。它是一种树性结构,基本组成部分包括根节点、叶节点、分割点(split point)、分支(split)。树的最顶层节点是根节点,是整个决策树的开始;叶节点代表类或类的分布,对应一个类别属性Ci的值; 非叶节点对应一个分割点,表示对一个或多个属性的测试,用于决定数据样本的分支,每个分割点都有一个分支判断规则(splitting predicate): 对连续属性A,分支判断规则形式是value(A)<x(x是A值域中的一个值); 而对离散属性A,分支判断规则形式则为value(A) ∈x(x⊂domain(A))。每个分支代表一个测试输出,要么是一个新的分割点,要么是树的结尾(叶节点)。
决策树(decision tree):给定一个数据对象集D={X1,X2,…,Xi,…,Xn},其中Xi=(xi1,xi2,…,xij,…,xid)(1≤i≤n),数据集中的属性有{A1,A2,…,Ai,…,Ad),类集合C={C1,C2,…,Cj,…,Ck}(1<=j<=k),与数据集D相关的决策树具有如下性质:
(1)每个非叶节点选用一个属性Ai进行分割。
(2)每个分支是一个测试输出。
(3)每个叶节点表示一个类分布,由一个类Cj标记。
根据决策树属性不同,决策树有以下特点:
(1)决策树内节点的测试属性是单变量的,即每个内结点只包含一个属性; 或是多变量的,即存在包含多个属性的节点。
(2)根据测试属性的不同属性值的个数,使得每个内节点有两个或多个分支。如果每个内节点只有两个分支称为二叉决策树,如CART算法得到的决策树每个节点有两个分支即为二叉树;允许节点含有多于两个子节点的树称为多叉树,如ID3和C4.5算法得到的都是多叉树。
(3)每个属性值的类型可能是数值类型,也可能是离散(枚举)类型的。
(4)分类结果既可能是两类又可能是多类,如果二叉树的结果只能有两类则称为布尔决策树。
使用决策树解决分类问题包括两个主要步骤:
(1)使用训练数据集构造决策树。
(2)对数据集中的每个数据样本利用决策树决定其所属类别。