一、Bagging 方法
Bagging(Bootstrap Aggregating)是一种用于提升模型性能的集成学习方法。它通过将多次采样得到的不同训练集分别训练多个模型,然后将这些模型的预测结果结合在一起,来降低模型的方差,从而提升整体的准确性和稳定性。Bagging 的主要步骤如下:
-
数据重采样:从原始训练集(大小为 N)中有放回地随机采样生成多个训练集,每个训练集的大小同样为 N。每个训练集可能会包含重复的样本,而原始训练集中的一些样本可能不会出现在某个特定的采样集中。这种有放回的采样过程称为 Bootstrap。
-
模型训练:对每个采样的训练集分别训练一个模型。常用的模型可以是决策树、神经网络等。
-
集成预测:对于分类问题,使用多个模型预测的结果进行投票(即多数表决),最终的预测结果为得票最多的类别。对于回归问题,取多个模型预测结果的平均值作为最终的预测结果。
公式表示
假设我们有一个训练集 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , … , ( x N , y N ) } D = \{(x_1, y_1), (x_2, y_2), \dots, (x_N, y_N)\} D={(x1,y1),(x2,y2),…,(xN,yN)},Bagging 的具体步骤如下:
-
生成 B B B个Bootstrap数据集 D 1 , D 2 , … , D B D_1, D_2, \dots, D_B D1,D2,…,DB,每个 D i D_i Di通过从 D D D中有放回地采样得到。
-
对每个 D i D_i Di 训练一个模型 f i