提升算法:从弱规则到强分类器的机器学习魔法
1. 提升算法的奇妙概念
想象一下,一群能力平平的成员组成的委员会,却能做出非常明智的决策,这听起来是不是有些不可思议?但在机器学习领域,这种看似不可能的策略却构成了提升算法(Boosting)的基础。提升算法就像一个神奇的魔法,通过组合众多相对较弱、不太准确的规则,创造出一个高度准确的预测规则。
以垃圾邮件过滤问题为例,这是一个典型的分类问题,我们的目标是让计算机自动将电子邮件分类为垃圾邮件(spam)或正常邮件(ham)。我们很容易想到一些识别垃圾邮件或正常邮件的规则,比如包含“Viagra”这个词的邮件很可能是垃圾邮件,或者来自配偶的邮件很可能是正常邮件。然而,这些单独的规则并不完善,仅仅依据包含“Viagra”就将所有邮件分类为垃圾邮件,而其他邮件都归为正常邮件,这种做法往往会出错。但不可否认的是,这些规则确实提供了一些有用的信息,其准确性明显优于随机猜测。
我们可以设想有一个“弱学习”程序,它能够在给定的邮件示例集中,搜索出一个虽然粗糙且不太准确,但能为区分垃圾邮件和正常邮件提供一定指导的简单预测规则。通过多次调用这个弱学习程序,对不同的数据集子集进行处理,我们可以提取出一系列这样的规则。提升算法的核心思想就是将这些弱规则组合成一个“委员会”,使这个“委员会”的整体预测变得相当准确。
在利用这些规则时,我们面临两个关键问题:
- 如何选择呈现给弱学习程序的邮件示例集,以提取最有用的规则?
- 收集到众多规则后,如何将它们组合成一个高度准确的预测规则?
对于第二个问题,一种合理的方法是让组合规则对各个规则的预测结果进行投票。而对于第一个问题,我们提倡让弱学习程序专注于那
超级会员免费看
订阅专栏 解锁全文

292

被折叠的 条评论
为什么被折叠?



