监督学习 1 基本概念 监督学习又称为分类(Classification)或者归纳学习(Indu ctiv e Learning)。几乎适用于所有领域,包括文本和网页处理。给出一个数据集D,机器学习的目标就是产生一个联系属性值集合A和类标集合C的分类/预测函数(Classification/Prediction Function),这个函数可以用于预测新的属性集合的类标。这个函数又被称为分类模型(Classification Model)、预测模型(Prediction Model)。这个分类模型可以是任何形式的,例如决策树、规则集、贝叶斯模型或者一个超平面。 在监督学习(Supervised Learning)中,已经有数据给出了类标;与这一方式相对的是无监督学习(Unsupervised Learning),在这种方式中,所有的类属性都是未知的,算法需要根据数据集的特征自动产生类属性。算法用于进行学习的数据集叫做训练数据集,当使用学习算法用训练数据集学习得到一个模型以后,我们使用测试数据集来评测这个模型的精准度。 机器学习的最基本假设是:训练数据的分布应该与测试数据的分布一致。 2 决策树推理 2.1 什么是决策树 决策树学习算法是分类算法中最广泛应用的一种技术,这种算法的分类精度与其他算法相比具有相当的竞争力,并且十分高效。例如,对于表 2-1 所示的贷款申请的数据集,可以学习到一种决策树结构,表示为图 2-1。 表 2-1 贷款申请数据 根据数据集建立的一种决策树结构如下: 图2-1 对应与表2-1 的决策树 树中包含了决策点和叶子节点,决策点包含针对数据实例某个属性的一些测试,而一个叶子节点则代表了一个类标。 一棵决策树的构建过程是不断的分隔训练数据,以使得最终分隔所得到的各个子集尽可能的纯。一个纯的子集中的数据实例类标全部一致。 决策树的建立并不是唯一的,在实际中,我们希望得到一棵尽量小且准确的决策树。 2.2 学习算法 学习算法就是使用分治策略,第贵的对训练数据进行分隔,从而构造决策树。递归的终止条件在算法的1~4 行,当所有的节点中的数据都属于同一个类时,迭代终止。学习算法中,每一个后续的递归都选择最佳分类属性作为分隔当前数据实例集的属性。最佳分类属性等的选择通过混杂度函数(Impurity Function)来实现,这个函数反映了用该属性进行数据分隔以后的数据集的混杂度。决策树学习算法如图2-2 所示。 图2-2 决策树学习算法 该算法最核心的思想就是选择能最大限度降低类别混杂度的属性作为决策点。其中的第7 行使用熵的公式计算: ...