Clustering-Based Ensembles as an Alternative to Stacking

作者:Anna Jurek, Yaxin Bi, Shengli Wu, and Chris D. Nugent, Member, IEEE

杂志:IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, VOL. 26, NO. 9, SEPTEMBER 2014

这篇论文是聚类集成问题,聚类框架是传统的框架,按论文的说法有点创新,是将传统的分类集成框架,后半部分用聚类集成代替,最终的框架便是:

  1. 前半部分通过多个分类器获得类标号。
  2. 后半部分通过将类标号看左样本新的属性,结合旧的属性作聚类集成(kmeans)。DBI 作为衡量指标。
  3. 最终样本的划分通过k中心。

  这样简单的结合其实很多发表论文已经用过,我认为这篇论文主要创新点是后半部分的论述:

为什么结合了分类标号作为新的属性,能够提升准确度。

论文指出以前论文的做法其实属于经验主义,而该论文则通过理论来推论证明。

  对于监督学习,这个其实便是按传统的分类集成框架,如下:

  1. 对于数据集,通过N 个分类器划分,得出了N 列结果。
  2. 将N 个分类器的结果,与数据集的属性结合,获得新的属性。
  3. 通过信息增益函数计算各个属性的信息熵。
  4. 选择最具代表性的属性。
  5. 对于提取后的属性,进行kmeans,聚类,通过DBIndex 衡量。
  6. 模型训练结束,样本的类标号通过k 中心 划分。

  模型的训练如上,在模型训练后,对于新输入的数据集,便只计算样本原来的属性。

下面是论文的论述:

对于连个确定的集合(validation sets):

  V1,V2,其实便是初始数据集通过了N个分类器之后的分类结果,作为样本的新属性C1 to Cn,与就的属性 F1 to Fk结合,这里的n k 小写意思是提取过的,P 是样本个数。

  既然是讨论:为什么结合了分类标号作为新的属性,能够提升准确度。

  那么便是一个添加了分类结果,一个没有添加,前者便是V1,后者便是V2.

  问题便是:分别使用者两个确定集合,作kmeans 聚类,然后样本的类标号通过k 中心确定,为什么V1比V2准确率高

  分别对V1 V2进行kmeans 聚类,假设例子如下,左图的是V1,有图的是V2,其中的Y* Z* 便是类中心,可以看出V1 聚类成8个,V2聚类成7个:

  怎么确定一个聚类结果的类标号? 因为这是监督学习,所以是知道样本的类标号的,那么便是一个类中属于哪个类标号多的,这个类标号便是类中心的标号。这句话比较重要,因为后边的论述是以其为基础。

  当然并不是全部的都考虑,例如上面划分直线附近的点,容易导致overlap,所以引入了如下约束:

  意思是便是只考虑距离类中心一定距离的样本点,其中dC、dF 表示样本X与中心Y* 之间的欧式距离,可以看出是拆开考虑,这两个临界值的取值如下:

  对于第一条,每个类中心,在其类中的样本点,选出到中心点最大的距离(dc),每个类都有一个这样 的距离,最后选择最小的作为θ1。

  第二条,跟上面的类似的,只是衡量有dc 变成df,同时选择V1 V2 中较小的作为θ2.

  这样的图示如下:

  这样加了约束后,影响的是类中心的类标号确定,因为只考虑了约束内的样本点。在知道了类中心的类标号后,考虑分类阶段,对于一个不知道标号的样本X,通过原始属性F1 to Fk,来计算他离得最近的中心,然后用这个中心的类标号作为其标号,假设这个样本X的真实类标号为c,通过公式表示便是:

  

  其中L1,表示类的个数,上图中L1 =8.

  衡量准确度,便是衡量被预测样本X将要归属的类中心的标号是否与X 的真实类标号一样。通过概率表现如下:

其中:

V1:I II 是为了为了约束的,III约束X 将要被分配到的类中心。

  这样来看,其实证明上面的概率比下面的概率大,即X最近的聚类中心,通过添加分类标号作为属性的话,更有可能被确认为cr 标号。

 通过一定推导可以得出下面公式,推导过程见论文附录。

  左边其实是V1 概率,右边是V2 概率。那么假如中间部分>=1,便可以得出左边>=右边。

  上面这个条件的成立,只需要下面条件成立,推导过程也在附录中。

  上面这条件的意思是:两个真实标号一样的样本,被分配到同一个分类中的概率,比两个真实标号不同的样本,分配到同一个分类中的概率大。

  这其实是分类的作用了,论文中附录还证明了对于真实标号数目只有2时候,分类器的准确率达到0.5便可以使上式成立。

  上面的 是分类标号+样本属性 > 样本属性,同时论文还证明 分类标号+样本属性 > 分类标号,只需满足一下条件:

  意思是:两个真实标号一样的样本,比两个真实标号不一样的样本更相似。

[论文]Clustering-Based Ensembles as an Alternative to Stacking的更多相关文章

  1. Science论文"Clustering by fast search and find of density peaks"学习笔记

    "Clustering by fast search and find of density peaks"是今年6月份在<Science>期刊上发表的的一篇论文,论文中 ...

  2. PP: Deep clustering based on a mixture of autoencoders

    Problem: clustering A clustering network transforms the data into another space and then selects one ...

  3. 【论文:麦克风阵列增强】An alternative approach to linearly constrained adaptive beamforming

    作者:桂. 时间:2017-06-03  21:46:59 链接:http://www.cnblogs.com/xingshansi/p/6937259.html 原文下载:http://pan.ba ...

  4. Science14年的聚类论文——Clustering by fast search and find of density peaks

    欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 这是一个比较新的聚类方法(文章中没看见作者对其取名,在这里我姑且称该方法为local density clu ...

  5. 论文阅读 SNAPSHOT ENSEMBLES

    引入 1. 随机梯度下降的特点 随机梯度下降法(Stochastic Gradient Descent)作为深度学习中主流使用的最优化方法, 有以下的优点: 躲避和逃离假的鞍点和局部极小点的能力 这篇 ...

  6. Self-paced Clustering Ensemble自步聚类集成论文笔记

    Self-paced Clustering Ensemble自步聚类集成论文笔记 2019-06-23 22:20:40 zpainter 阅读数 174  收藏 更多 分类专栏: 论文   版权声明 ...

  7. Memory Networks02 记忆网络经典论文

    目录 1 Recurrent Entity Network Introduction 模型构建 Input Encoder Dynamic Memory Output Model 总结 2 hiera ...

  8. MapReduce的核心资料索引 [转]

    转自http://prinx.blog.163.com/blog/static/190115275201211128513868/和http://www.cnblogs.com/jie46583173 ...

  9. ### Paper about Event Detection

    Paper about Event Detection. #@author: gr #@date: 2014-03-15 #@email: forgerui@gmail.com 看一些相关的论文. 1 ...

随机推荐

  1. Python基础学习总结__Day1

    一.Python是一门什么类型语言 1.解释型:一边编译一边执行,劣势是运行速度慢,但通过运用PyPy交互解释器(JIT技术)会让python程序执行速度快很多.优势是可移植性强. 2.强类型:即类型 ...

  2. 想成长为一名年薪50万+的实战型架构师?必掌握这7大实战技能经验--阿里mike

    想成为一名架构师,但是架构师对应的技能,我应该掌握哪些啊?以及掌握的程度是什么样的?如何成为一名真正的实战性架构师? 我简要分为以下7点来谈谈,从技能的角度抛砖引玉,希望你对你架构师之路有一定的参考. ...

  3. DRF工程搭建

    环境安装与配置 DRF需要以下依赖: Python (2.7, 3.2, 3.3, 3.4, 3.5, 3.6) Django (1.10, 1.11, 2.0) DRF是以Django扩展应用的方式 ...

  4. B1023 组个最小数 (20分)

    B1023 组个最小数 (20分) 给定数字 0-9各若干个.你可以以任意顺序排列这些数字,但必须全部使用.目标是使得最后得到的数尽可能小(注意 0 不能做首位).例如:给定两个 0,两个 1,三个 ...

  5. Android开发——JVM、Dalvik以及ART的区别

    )预编译也可以明显改善电池续航,因为应用程序每次运行时不用重复编译了,从而减少了 CPU 的使用频率,降低了能耗.

  6. leetcode 【 Triangle 】python 实现

    题目: Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjace ...

  7. IOS开发学习笔记031-代码实现微博界面

    微博界面如下 1.准备资源文件 新建一个plist文件,添加条目,root类型是array,子类型是Dictionary 2.更改父类,实现代理方法 接下来得实现过程如上一篇文章,改变父类为UITab ...

  8. php代码审计 strcmp和MD5函数漏洞

    通过get得到三个值,v1,v2,v3. if第一层判断,v1和v2得到的值不一样,但是对它们进行md5加密后的值得相等. if第二层判断,v3得到的值得和$flag的值相等,满足这两个条件输出fla ...

  9. Python+Selenium练习篇之18-获取元素上面的文字

    本文介绍如何通过Selenium方法来获取某一个元素的text属性值.在很多自动化测试脚本中,需要多次获取元素的text值,拿过来进行对比和匹配.例如,在一个登陆界面,如果不输入用户名和密码,直接点击 ...

  10. Mac OS使用brew安装memcached

    1.查看安装信息 brew info memcached 显示如下: memcached: stable 1.5.9 (bottled) High performance, distributed m ...