带你读《数据挖掘导论(原书第2版)》之三:分类:基本概念和技术
点击查看第一章点击查看第二章 第3章 分类:基本概念和技术 人类具有分类事物的天赋,例如过滤垃圾邮件信息之类的日常任务,或者在望远镜图像中识别天体这类更为特殊的任务(参见图3.1)。虽然对于只有少数几个属性的小而简单的数据集,通常通过手动分类就足以解决,但对更大和更复杂的数据集,仍然需要自动化解决方案。 本章介绍了分类的基本概念,并描述了其中的一些关键问题,如模型过拟合、模型选择和模型评估等。虽然使用到了称为决策树归纳的分类技术来说明这些主题,但本章中的大部分内容也适用于其他分类技术,第4章会进行介绍。 3.1 基本概念 图3.2显示了分类的总体思路。分类任务的数据由一组实例(记录)组成。每个这样的实例都以元组(x,y)为特征,其中x是描述实例的属性值集合,y是实例的类别标签。属性集x可以包含任何类型的属性,而类别标签y必须是可分类的。 分类模型(classification model)是属性集和类别标签之间关系的抽象表示。正如在接下来的两章中将会看到的那样,该模型可以用许多方式来表示,例如树、概率表,或简单地用一个实值参数的向量表示。形式上,我们可以在数学表达上把它作为一个目标函数f,它将输入属性集x并产生一个对应于预测类别标签的输出。说明如果f(x)=y,则该模型可正确地对实例(x,y)进行分类。表3.1显示了分类任务的属性集和类别标签的各种例子。垃圾邮件过滤和肿瘤鉴定是二分类问题的例子,其中每个数据实例可以分为两类之一。如果类的数量大于2,如在星系分类示例中那样,那么它被称为多分类问题。 我们用以下两个例子来说明分类的基本概念。例3.1 脊椎动物分类 表3.2显示了将脊椎动物分为哺乳动物、爬行动物、鸟类、鱼类和两栖动物的样本数据集。属性集包括脊椎动物的特征,如体温、表皮覆盖和飞行能力。该数据集也可用于二分类任务,如哺乳动物分类,可将爬行动物、鸟类、鱼类和两栖类分为一类,称为非哺乳动物。 例3.2 贷款借款人分类 预测贷款人是否可以偿还贷款或拖欠贷款的问题。表3.3展示了用于建立分类模型的数据集。属性集包括借款人的个人信息,如婚姻状况和年收入,而类别标签则表明借款人是否拖欠了贷款。 分类模型在数据挖掘中担当两个重要角色。首先,它被用作预测模型(predictive model)来对先前未标记的实例进行分类。一个好的分类模型必须以快速的响应时间提供准确的预测。其次,它作为一个描述性模型(descriptive model)来识别区分不同类别实例的特征。这对于诸如医疗诊断的关键应用特别有用,因为如果无法证明如何做出这样的决定,就称不上是一个预测模型。例如,由表3.2所示的脊椎动物数据集显示的分类模型可用于预测以下脊椎动物的类别标签: 此外,它可以用作描述性模型来帮助确定将脊椎动物定义为哺乳动物、爬行动物、鸟类、鱼类或两栖动物的特征。例如,该模型可能会将生育后代的哺乳动物确定为恒温脊椎动物。关于前面的例子有几点值得注意。首先,虽然表3.2中显示的所有属性都是定性的,但对于可用作预测变量的属性类型没有限制。另一方面,类别标签必须是标称类型。这将分类与其他预测建模任务(如回归)区分开来,其中预测值通常是定量的。有关回归的更多信息可以在附录D中找到。另一点值得注意的是,可能并非所有属性都与分类任务相关。例如,脊椎动物的平均长度或重量可能不适用于哺乳动物分类,116因为这些属性对于哺乳动物和非哺乳动物都可以体现相同的值。这种属性通常在预处理期间被丢弃。其余属性可能无法自行分类,因此必须与其他属性一起使用。例如,体温属性不足以区分哺乳动物和其他脊椎动物。当它与“胎生”一起使用时,哺乳动物的分类显著改善。但是,如果包含附加属性(例如表皮覆盖),则该模型变得过于具体,并且不再涵盖所有哺乳动物。寻找区分不同类别实例的最佳属性组合是构建最优分类模型的关键挑战。 3.2 一般的分类框架 分类是将标签分配给未标记数据实例的任务,分类器用于执行此类任务。分类器(classifier)通常按照上一节所述的模型进行描述。该模型是使用给定的一组实例创建的,这组实例称为训练集(training set),其中包含每个实例的属性值以及类别标签。学习给定训练集分类模型的系统化方法称为学习算法(learning […]