先说一下为什么要开始写这一系列笔记的原因。首先,本人目前是已经博士第二年,研究方向是图像分类。由于种种原因,我的课题方法是以“动态集成选择”为主题,而虽然目前我已经发了两篇SCI论文(毕业是够了),然而实际上我个人感觉我对于这一课题实际上并没有深入的理解,一直以来我都对这一方向并不是十分感兴趣。但是毕竟还是要毕业的,之前很长一段时间由于学业和其他压力,我也并没有仔细系统的总结过这方面的研究内容。现在,由于某些原因,我有了很长的一段自由时间,所以希望能够系统深入的总结一下这动态集成选择方面的内容,如果可以希望能够在这个方向有一个突破。
1 集成学习
1.1 集成学习的概念与定义
集成学习假设每个基分类器都是独立的,并且比随机猜测具有更高的准确性。 然后采用特定的策略将多个分类器组合起来以获得更高的分类精度。当然这里是针对分类问题来说的,实际上其他问题也可以采用多分类集成的方法。
一般而言,集成学习可以分为两个部分:
1.1.1 分类器池的构建
这一步就是选择不同的单个分类器作为基分类器用于集成。根据分类器池构建的策略集成学习可以分为两类:
1)同构集成:选择具有不同的参数的同一中分类器作为基分类器来构建分类器池。如选择节点数不同的RF模型作为基分类器来构建集成模型。
2)异构集成:选择不同的算法作为基分类器来构造分类器池。如选择SVM、RF、ANN等完全不同的分类器来用于集成。
1.1.1 分类器组合策略
这一步的作用就是采用不同的组合(融合)方法来将分类器池中的分类器结果进行集成以获得更好的结果。根据组合策略不同,一般分为两种:
1)串行集成:基分类器之间存在依赖关系,如经典的boosting系列的算法
2)并行集成:基分类器之间相互独立,仅仅对最后结果进行处理。
1.2 集成学习的常见方法
boosting(GBDT、XGboost、LightBoost等)、bagging(RF等) 和随机子空间等。
由于集成学习发展的已经十分成熟,各种经典方法已经被广泛应用,而且细究起来十分复杂,也不是我的研究重点,所以只需要总结到此即可。
2 分类器选择
1.1 简述
从集成学习的概念可以看出其中一个关键之处在于基分类器的选择。举例来说,如果用于集成的基分类器精度全部是100%,那么只需要选择其中一个分类器即可,不需要什么集成;反之,如果基分类器精度全部是0%,那么也没有必要继续集成。而在实际情况中,不同分类器对于同一目标分类结果十分复杂,那么,对于集成学习而言,如何选择合适的基分类器来构建分类器池自然而然是一个重要的研究课题。
简单的来说,对于集成学习来说,分类器的选择就是要根据某些条件选择出最合适构建集成模型的基分类器的方法。
1.2 动态集成选择的引入及概念
动态集成选择(dynamic ensemble selection, DES)的主要思想是通过某方法(如KNN、Cluster)将训练数划分为一些区域,用于集成的待选基分类器在每个区域上进行评估,并在每个区域中确定性能最佳的分类器。 然后通过特定的方法将测试数据同样划分到不同的区域。 最后使用相应的最优分类器对测试数据进行分类。简而言之,所谓的动态集成就是通过某种方法先验的获取待选基分类器的分类行为,从而为后续的集成选择出最佳的分类器或者分类器集合。
今天主要总结了一些动态集成选择研究需要学习的基本概念,如集成学习、分类器选择等,后续将通过一些论文详细总结动态集成选择的研究现状以及具体的算法,希望自己能坚持下来!