英语原文共 26 页,剩余内容已隐藏,支付完成后下载完整资料
基于SVM的Adaboost组件分类器
摘要: 使用支持向量机(SVM)作为AdaBoost的组件分类器,似乎违背了增强原则的好处,因为SVM不是一种易于分类的分类器。研究结果表明,具有强成分分类器的AdaBoost是不可行的。在本文中,我们认为这样的组合实际上是可行的,并且表明,在原则上,通过对基准数据集的实验,Adaboost与设计好的SVM分类器,我们称为AdaBoostSVM,可以和SVM一样执行。此外,提出的AdaBoostSVM在不平衡的分类问题上表现出比SVM更好的泛化性能。AdaBoostSVM的关键原则是,对于经过培训的RBFSVM(带有RBF内核的SVM)组件分类器,从大值(弱学习)开始,这些值随着不断增加的迭代而逐渐减少。这是一种具有一定精度的RBFSVM组件分类器。比较准确的RBFSVM组件分类器的原因在于,这些分类器的多样性比那些非常准确的分类器具有更大的多样性。这些更大的多样性可能会导致AdaBoost更好的泛化性能。从基准数据集,我们可以看出,我们的AdaBoostSVM算法在使用诸如决策树和神经网络这样的组件分类器时,优于其他的AdaBoost。提出的AdaBoostSVM可以被认为是Valentini和Valentini提出的观点的概念,Valentini和不同的SVMs可以很好地工作。此外,我们扩展并改进了分类器的分类器,以解决原始的Adaboost所报告的精确/多样性的困境。通过设计参数调整策略,对这些SVM组件分类器的精度和多样性进行了调整,以保持它们之间的良好平衡,并在基准数据集上获得有希望的结果。、
关键词: AdaBoost,支持向量机,构件分类器,多样性。
第一章 简介
在过去的十年中,机器学习的一个主要进展是综合方法,通过结合许多适度准确的成分分类器,找到了一个高精度的分类器。两种常用的组合分类方法是增加和装袋。与装袋相比,在数据没有太多噪音的情况下,提升性能会更好。作为最受欢迎的提高方法,演算法创建了一个集合的组件分类器通过维护一组权重对训练样本和自适应地调整每个提高迭代后这些权重:样本的权重由当前的组件分类器将更进一步的增加而正确分类的样本的权重将会减少。在Adaboost中,已经提出了几种方法来实现体重的更新。
AdaBoost的成功可以归功于它扩大优势的能力,这可以增强AdaBoost的泛化能力。许多研究都报告了使用决策树或神经网络作为AdaBoost的组件分类器。这些研究显示了这些AdaBoost的良好的泛化性能。然而,当决策树被用作com-ponent分类器时,应该有什么合适的树大小呢?当径向基函数(RBF)神经网络作为组件分类器时,如何控制复杂性,避免过度拟合?此外,我们还必须决定中心的最优数量以及如何设置RBFs的宽度值。所有这些都必须在实际使用AdaBoost的情况下进行仔细的调整。此外,多样性被认为是一个重要的因素,它是综合分类器的泛化精度的一个重要因素。提出了量化多样性的一些方法。众所周知,AdaBoost存在着一种精确的/多样性的困境,这意味着两种分类器越精确,它们之间的分歧就越小。只有当准确性和多样性得到很好的平衡时,才能表现出优秀的泛化性能。然而,现有的AdaBoost算法还没有明确地采取什么措施来解决这个问题。
支持向量机是由结构风险最小化理论发展而来的。通过使用内核技巧将训练样本从输入空间映射到高维特征空间,SVM在特征空间中找到了一个最优的分离超平面,并使用一个正则化参数C来控制模型的复杂性和训练误差。SVM使用的一个流行的内核是RBF内核,它有一个被称为高斯宽度的参数。与RBF网络不同的是,带有RBF内核(RBFSVM)的SVM可以自动确定中心的数量和位置,以及权重值。此外,它还可以通过选择适当的C值来避免过度拟合。从RBFSVM的性能分析中,我们知道,与C相比,这是一个更重要的参数:虽然RBFSVM在使用C的很低的值时不能很好地学习,但是它的性能很大程度上取决于是否有一个合适的C。这意味着,在适当的C范围内,可以通过简单地调整值来方便地更改RBFSVM的性能。
因此,在本文中,我们试图回答以下问题:SVM是否可以作为AdaBoost的组件分类器?如果是,那么这个AdaBoost的概括性能将会是什么呢?这一广告是否会比现有的广告更有优势,尤其是在上面提到的问题上?另外,与单独的SVM相比,使用这个AdaBoost的好处是什么,它是多个SVMs的组合?在这个工作中,RBFSVM被用作AdaBoost的组件分类器。如前所述,RBFSVM有一个必须预先设置的参数。一种直观的方法是简单地对所有SVM组件分类器应用一个单一的组件。然而,我们注意到,由于在提升过程中遇到的超弱或超强的SVM组件分类器,这种方法不能导致成功的AdaBoost。尽管可能存在一个最好的结果,但是我们发现通过交叉验证获得的最佳性能并不能带来最佳的泛化性能,并且对它进行交叉验证将增加计算负载。因此,如果可能的话,应该尽量避免使用单个的SVM组件分类器。
下面的事实为我们打开了一扇门,让我们避免去寻找最好的东西,并帮助AdaBoost实现更好的泛化性能。通过调整内核参数,可以方便地改变RBFSVM的分类性能。在此启发下,AdaBoostSVM算法可以自适应地调整SVM组件分类器的值,以获得一组适合于AdaBoost的中等精度的SVMs。如稍后所示,这将产生一个成功的基于svm的AdaBoost。与现有的AdaBoost算法相比,基于神经网络和决策树的组件分类器,提出的AdaBoostSVM算法可以实现更好的泛化性能,它可以被认为是Valentini和Valentini提出的观点的概念,Valentini和异构的SVMs可以很好地工作。此外,与单独的SVM相比,AdaBoostSVM算法是多SVMs的组合,可以在不平衡的数据集上获得更好的泛化性能。我们认为,在AdaBoostSVM算法中,增强机制迫使SVM组件分类器的一部分集中在少数类的错误分类样本上,这可以防止少数群体被错误地识别为大多数类的噪声,并将其分类。从另一个角度来看,这也证明了使用SVM组件分类器探索AdaBoost的重要性。
此外,由于AdaBoostSVM通过简单地调整值来控制每个组件分类器的分类精度,它也提供了一个机会来处理在提升方法上的众所周知的精确/双性的两难困境。这是对AdaBoost使用基于svm的组件分类器进行的调查的一个愉快的意外。通过一些参数调整策略,我们可以调整这些成分分类器的准确性和多样性的分布,从而达到一个良好的平衡。AdaBoostSVM的改进版本在这个工作中被称为多样化的AdaBoostSVM。研究表明,从准确性和多样性的平衡中受益,它可以比AdaBoostSVM提供更好的性能。
- 背景
给定一组训练样本,AdaBoost在这些样本中维持一个概率分布,W。这个分布最初是均匀的。然后,AdaBoost算法在一系列循环中反复调用组件学习算法。在周期t中,AdaBoost提供训练样本,并将其分配到组件学习算法。作为回应,组件学习训练一个分类器。根据训练样本的预测结果,在每个周期后更新分布。“容易”的样本被分类器分类,ht,得到较低的权重,而被分类的“硬”样本则得到了更高的权重。因此,AdaBoost关注的是带有更多权重的示例,这对于组件学习来说似乎更加困难。这一过程将继续进行T循环,最后,AdaBoost使用加权投票将所有获得的组件分类器合并到一个最终的假设中,更大的权重被分配给具有较低错误的组件分类器。AdaBoost的重要理论特性是,如果组件分类器的精度仅略高于一半,那么最终假设的训练误差就会以指数级的速度下降。这意味着组件分类器只需要比随机稍微好一点。
- AdaboostSVM
该工作的目标是使用RBFSVM作为Ada Boost的组件分类器。但是我们如何设置
在推进过程中,这些RBFSVM组件分类器的值是多少?遇到的问题是当将一个单一的组件应用于所有的组件分类器时。在细节上,过大的结果往往也会导致结果RBFSVM疲软。它的分类精度通常低于50%并且不能满足要求在Ada中提供的组件分类器。另一方面,较小的通常会产生RBFSVM加强和提高它们可能会变得不受影响因为这些成分分类器的错误是高度相关的。此外,一个太小的值甚至可能使RBFSVM超出培训的能力。样本和它们也不能被用作组件分类器。因此,找到适合这些的在Ada Boost中的SVM组件分类器成为一个问题。通过使用模型选择技术作为k-折叠或离开验证的交叉验证,对于这些组件分类器,可能会找到一个最佳的结果。但是,模型选择的过程是非常耗时的,如果可能的话,应该尽量避免。因此,似乎SVM组件分类器不能很好地工作,如果只使用了一个。
通过模型参数对SVM的分类性能进行了评估。对于RBFSVM,模型参数包括高斯宽度,和正则化参数C,系统上的变量,人和控制论,第B部分它们中的任何一个都导致了分类性能的变化。然而,正如所报道的,虽然RBFSVM在使用非常低的C值时不能很好地学习,但是它的性能很大如果给出一个大致合适的C,则取决于这个值。图1显示了一个例子,图1SVM的测试误差与C的值和在一个不可分离的数据集上的测试误差。很明显,更改值会导致测试错误的更大的变化,而不是更改C。大范围的C,RBFSVM的性能可以通过简单地改变其值来进行调整。众所周知,在一定范围内,一个更大的范围通常会使学习模型的复杂性降低降低分类性能。另外,一个小的通常会增加学习的复杂性并导致更高的分类性能。因此,这就给了我们一个机会对所有RBFSVM组件分类器使用固定的问题产生的问题。在接下来的一个通过自适应调整,获得适当的RBFSVM组件分类器的sigma;值。
图 1
- 多样化ADABOOSTSVM
多样性是一个重要的因素,它是整体综合性能的一个重要因素方法,这意味着由dierent组件分类器所犯的错误应该是不相关的。如果每个组件分类器都是适度的,并且这些组件分类器不一致的是,这些组件分类器的不相关错误将被移除投票过程是为了达到良好的整体效果。这也适用于Ada Boost。为Ada Boost,众所周知,在组件的分类精度之间存在着一个两难的问题分类器和它们之间的多样性,这意味着更精确的两个分量分类器变得越少,它们之间的分歧就越少。我们将使用精确的多样性接下来是Kappa统计这里是用来测量多样性的。
这个图是一个散点图,每个点对应于一个组件分类器。一个点的x坐标值是对应的组件分类器的多样性值而y坐标值是组件分类器的精度。从这个数字可以看出,如果组件分类器太精确,就会发现非常不同的分类器,并将这些精确组合在一起。但是,非多样化的分类器往往会导致非常有限的改进。另一方面,如果组件分类器太不准确了,尽管我们可以找到各种各样的组合结果可能比组合更准确和更多样化的组件分类器更糟糕。这是因为组合结果被太多的不准确的组件分类器所控制,并且大多数情况下,组合结果都是错误的,导致了糟糕的分类结果。因此,如何我们能否在获得一个相当好的部件分类器的条件下使多样性最大化?
准确性Ada提高吗?在被提议的Ada Boost SVM算法中,获得的SVM组件分类器大多是mod——准确地说,它提供了获得更多样化的组件分类器的机会。正如上面提到的,通过调整值,一组具有学习能力的SVM组件分类器获得的。这就提供了从这个集合中选择更多样化的组件分类器的机会处理精确/多元化的两难困境。因此,我们提出了一种多样化的AdaBoost SVM算法,希望进一步提高Ada Boost SVM的泛化性能。
尽管如何衡量和使用综合方法的多样性仍然是一个开放性的问题最近,一些有希望的结果被报道。通过专注于增加多样性在组件分类器中,这些方法可以实现更高的泛化精度。在
提出了不同的Ada增强SVM算法,我们使用了多样性的定义一个组件分类器和所有现有的组件分类器之间的不一致。在不同的Ada增强SVM,多样性的计算如下:如果ht(x
i)是t-th的预测标签样本x中的组件分类器我和f(xi)是所有存在于系统、人与控制论的所有存在的ieee事务的组合预测标签,第B部分组件分类器,x样本中的t-th组件分类器的多样性我计算为:
在N个样本中,Ada增强SVM的多样性被计算为:
在不同的Ada Boost SVM的每个环中,这个多样性值D首先被计算。如果D大于预定义的阈值,DIV,这个新的RBFSVM组件分类器将被选中。否则,这个组件分类器将被丢弃。通过这一机制,一套适度的accu——可以生成速率和不同的SVM组件分类器。这是从上面来的Ada Boost SVM,它只接收所有可用的SVM组件分类器。从的根据实验结果,Ada Boost SVM算法给出了最佳的泛化。我们认为改进是由于它明确地处理了精确/多样性的问题两难的境地。
参考文献:
[1] http://mlg.anu.edu.au/~raetsch/data.
[2] Aaairsquo;2000 workshop on learning from imbalanced data sets. 2000.
[3] Icmlrsquo;2003 workshop on learning from imbalanced data sets (ii). 2003.
[4] Editorial: Special issue on learning from imbalanced data sets. SIGKDD Explorations, 6, 2004.
[5] R. Akbani, S
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[25580],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。