我觉得。。随机森林没啥好写的。。太简单了,就是行列有放回采样然后每次采样训练一个cart或者决策树也行,不过sklearn里面随机森林用的是cart tree,最后的决策不是通过投票而是通过概率求和求平均,需要提到的是随机森林是假设样本和特征的权重服从一个伯努利分布,即部分样本的权重可能为0,部分样本的权重可能为1,是一个典型的伯努利分布,而在catboost中,就基于这一点使用了贝叶斯采样,假设权重服从一个狄利克雷分布(如果没记错的话),然后每次从这个分布中抽取一个权重的分布值作为新的基学习器训练的样本权重。
这里装模做样的算是实现了了把哈哈哈哈哈