Press "Enter" to skip to content

Posts published in “Math”

精读西瓜书(第九章-聚类)-原型聚类

写在前面 昨天, 我们学习了聚类中的距离计算; 今天, 我们将继续学习聚类中的原型聚类. 原型聚类 原型聚类亦称'基于原型的聚类'(prototype-based clustering), 此类算法假设聚类结构能通过一组原型刻画, 在显示聚类任务中极为常用. 通常情形下, 算法先对原型进行初始化, 然后对原型进行迭代更新求解. 采用不同的原型表示, 不同的求解方式, 将产生不同的算法. k均值算法 给定样本集 , 'k均值'(k-means)算法针对聚类所得簇划分 最小化平方误差 其中 , 是簇 的均值向量.…

精读西瓜书(第九章-聚类)-性能度量

写在前面 昨天, 我们学习了聚类中的聚类任务; 今天, 我们将继续学习聚类中的性能度量. 性能度量 聚类性能度量亦称聚类'有效性指标'(Validity Index). 与监督学习中的性能度量作用相似, 对类似结果, 我们需通过某种性能度量来评估其好坏; 另一方面, 若明确了最终将要使用的性能度量, 则可直接将其作为聚类过程的优化目标, 从而更好地得到符号要求的聚类结果. 聚类是将样本集 划分为若干互不相交的子集, 即样本簇. 那么, 什么样的聚类结果比较好呢? 直观上看, 我们希望'物以类聚', 即同一簇的样本尽可能彼此相似, 不同簇的样本尽可能不同. 换言之,…

精读西瓜书(第九章-聚类)-聚类任务

写在前面 昨天, 我们学习了集成学习中的多样性; 今天, 我们将继续学习聚类中的聚类任务. 聚类任务 在'无监督学习'(unsupervised learning)中, 训练样本的标记信息是未知的, 目标是通过对无标记训练样本的学习来揭示数据的内在性质及规律, 为进一步的数据分析提供基础. 此类学习任务中研究最多, 应用最广的是'聚类'(Clustering). 聚类试图将数据集中的样本划分为若干个通常是不相交的子集, 每个子集称为一个'簇'(Cluster). 通过这样的划分, 每个簇有可能对应于一些潜在的概念(类别). 需要说明的是, 这些概念对聚类算法而言事先是未知的, 聚类过程仅能自动形成簇结构, 簇所对应的概念语义需由使用者来把握和命名. 形式化地说, 假定样本集 包含 个无标记样本,…

精读西瓜书(第八章-集成学习)-多样性

写在前面 昨天, 我们学习了集成学习中的结合策略; 今天, 我们将继续学习集成学习中的多样性. 误差-分歧分解 欲构建泛化能力强的集成, 个体学习器应'好而不同'. 现在我们来做一个简单的理论分析. 假定我们用个体学习器 通过加权平均法结合产生的集成来完成回归学习任务 . 对示例 , 定义学习器 的'分歧'(Ambiguity)为: 则集成的'分歧'是: 显然, 这里的'分歧'项表征了个体学习器在样本 上的不一致性, 即在一定程度上反映了个体学习器的多样性. 个体学习器 和集成 的平方误差分别为: 令…

精读西瓜书(第八章-集成学习)-结合策略

写在前面 昨天, 我们学习了集成学习中的Bagging与随机森林; 今天, 我们将继续学习集成学习中的结合策略. 结合策略 学习器结合可能会从三个方面带来好处: 首先, 从统计的方面来看, 由于学习任务的假设空间往往很大, 可能有多个假设在训练集上达到同等性能, 此时若使用单学习器可能因误选而导致泛化性能不佳, 结合多个学习器则会减小这一风险; 第二, 从计算的方面来看, 学习算法往往会陷入局部极小点所对应的泛化性能可能很糟糕, 而通过多次运行之后进行结合, 可降低陷入糟糕局部绩效点的风险; 第三, 从表示的方面来看, 某些学习任务的真实假设可能不在当前学习算法所考虑的假设空间中, 此时若使用单学习期则肯定无效, 而通过结合多个学习器, 由于相应的假设空间有所扩大, 有可能学得更好的近似,…

精读西瓜书(第八章-集成学习)-Bagging与随机森林

写在前面 昨天, 我们学习了集成学习中的Boosting; 今天, 我们继续学习集成学习中的Bagging与随机森林. Bagging Bagging是并行式集成学习方法最著名的代表, 从名字即可看出, 它直接基于我们上节介绍过的自助采样法(Boostrap Sampling). 给定包含 个样本的数据集, 我们先随机取出一个样本放入采样集中, 再把改样本放回初始数据集, 使得下次采样时该样本仍有可能被选中, 这样, 经过 次随机采样操作, 我们得到含 个样本的采样集, 初始训练集只能怪有的样本在采样集里多次出现, 有的则从未出现. 照这样, 我们可采样出 个含…

精读西瓜书(第八章-集成学习)-Boosting

写在前面 昨天, 我们学习了集成学习中的个体与集成; 今天, 我们将继续学习集成学习中的Boosting. Boosting Boosting是一族可将弱学习器提升为强学习器的算法. 这族算法的工作机制类似: 先从初始训练集训练出一个基学习器, 再根据基学习器的表现对训练样本分布进行调整, 使得闲钱基学习器做错的训练样本在后续受到更多关注, 然后基于调整后的样本分布来训练下一个基学习器; 如此重复进行, 直至基学习器数目达到实现指定的值 , 最终将这 个基学习器进行加权结合. Boosting族算法最著名的代表是AdaBoost, 其描述如下图, 其中 , 是真实函数: AdaBoost算法有多种推导方式, 比较容易理解的是基于'加性模型'(Additive Model),…

精读西瓜书(第八章-集成学习)-个体与集成

写在前面 昨天, 我们结束了对贝叶斯分类器章节的学习; 今天, 我们将继续学习集成学习中的个体与集成. 个体与集成 集成学习(Ensemble Learning)通过构建并结合多个学习器来完成学习任务, 有时也会被称为多分类器系统(Multi-Classifier System), 基于委员会的学习(Committee-Based Learning)等. 如下图, 显示出集成学习的一般结构: 先产生一组'个体学习器'(Individual Learner), 再用策略将它们结合起来. 个体学习器通常由一个现有的学习算法从训练数据产生, 例如C4.5决策树算法, BP神经网络算法等, 此时集成中值包含同种类型的个体学习器, 例如'决策树集成'中全是决策树, '神经网络集成'中全是神经网络, 这样的集成是'同质'的(Homogeneous). 同质集成中的个体学习器亦称'基学习器'(Base…

精读西瓜书(第七章-贝叶斯分类器)-EM算法

写在前面 昨天, 我们学习了贝叶斯分类器中的贝叶斯网; 今天, 我们将继续学习贝叶斯分类器中的EM算法. EM算法 在前面的讨论中, 我们一直假设训练样本所有属性变量的值都已被观测到, 即训练样本是'完整'的. 但在现实应用中往往会遇到'不完整'的训练样本. 未观测变量的学名是'隐变量'(Latent Variable). 令 表示已观测变量集, 表示隐变量集, 表示模型参数. 若欲对 做极大似然估计, 则应最大化对数似然: 然而由于 是隐变量, 上式无法直接求解. 此时我们可以通过对 计算期望, 来最大化已观测数据的对数'边际似然'(Marginal…

精读西瓜书(第七章-贝叶斯分类器)-贝叶斯网

写在前面 昨天, 我们系统的学习了贝叶斯分类器中的半朴素贝叶斯分类器; 今天, 我们继续学习贝叶斯分类器中的贝叶斯网. 贝叶斯网 贝叶斯网(Bayesian Network)亦称'信念网'(Belief Network), 它借助有向无环图(Directed Acyclic Graph, 简称DAG)来刻画属性之间的依赖关系, 并使用条件概率表(Conditional Probability Table, 简称CPT)来描述属性的联合概率分布. 具体来说, 一个贝叶斯网 由结构 和参数 两部分构成, 即 . 网络结构…