【Python与机器学习 5-4】集成学习 Ensemble learning

集成学习(Ensemble learning)通过构建并结合多个学习器来完成学习任务

好的集成,个体学习器应“好而不同”:个体学习器要有一定的“准确性”,并且还要有“多样性”。
【Python与机器学习 5-4】集成学习 Ensemble learning_第1张图片

集成学习分类

集成学习可以分成同质集成和异质集成两大类。

同质集成

集成中包含同种类型的学习器->“基学习器”(base leaner)

异质集成

集成中包含不同类型的学习器->“组件学习器”(component leaner)

集成策略

首先来看下集成学习是如何实现的,如下图,先把训练集分成多个数据集,然后用不同的分类器对这些数据集进行学习。不同分类器会得到不同的结果,那如何把这些结果统一起来得到最后的结果呢?这就是集成策略要做的事情。
【Python与机器学习 5-4】集成学习 Ensemble learning_第2张图片

集成学习有多种集成策略,下面介绍四种集成策略:简单的集成策略,stacking、bagging和boosting。

bagging是并行化方法,boosting是串行生成的序列化方法。我们可以根据个体学习器之间是否有强依赖关系,来选择合适的集成策略。
个体学习器间不存在强依赖关系、可同时生成的并行化方法(Bagging)
个体学习器间存在强依赖关系、串行生成的序列化方法(Boosting)

简单的集成策略

我们假设我们分别用SVM,KNN,LR三种分类器对3个数据集进行学习,则会得到每种分类器对每种分类的预测值,以下面的表格为例。

分类器 类别A 类别B 类别C
SVM 0.8 0.1 0.1
KNN 0.6 0.2 0.2
LR 0.5 0.4 0.1

现在要把这三类分类器学到的每个分类预测的概率整合起来,这在简单的集成策略中有如下几种方法

简单平均法

简单平均法就是把三个分类此对某个分类预测的值求平均,得到的平均值即最后预测的概率。如,对与类别A来说,SVM,KNN,LR预测的值分别为0.8,0.6,0.5,则此集成学习最后对类别A预测的概率即 (0.8+0.6+0.5)/3
【Python与机器学习 5-4】集成学习 Ensemble learning_第3张图片

加权平均法

给每个分类器一个权重,再求平均。也就是我们更愿意相信哪种分类器就把它的权重增大,这样最后的结果更依赖于此分类器。
【Python与机器学习 5-4】集成学习 Ensemble learning_第4张图片

绝对数投票法

某标记投票过半,则预测为该标记。
也就是一共三个分类器,中有两个分类器都预测为类别A,则结果就预测为类别A。

相对数投票法

预测为投票最多的标记

你可能感兴趣的:(机器学习,python,机器学习)