机器学习之集成学习和随机森林
一、集成学习 集成学习就是合并多个分类器的预测。一般会在一个项目快结束的时候使用集成算法,一旦建立了一些好的分类器,就可以使用集成把它们合并成一个更好的分类器。 著名的集成方法:投票分类、bogging、pasting、boosting、stacking、和一些其它算法。 1.1 投票分类(少数服从多数) 令人惊奇的是这种投票分类器得出的结果经常会比集成中最好的一个分类器结果更好。 事实上,即使每一个分类器都是一个弱学习器(意味着它们也就比瞎猜好点),集成后仍然是一个强学习器(高准确率),只要有足够数量的弱学习者,他们就足够多样化。 如果每一个分类器都在同一个数据集上训练,会导致犯同一种类型的错误。相比较而言,每个分类器在不同的数据集上训练,集成后的结果会更好。 下面使用moons数据集,训练三个分类器,使用集成算法。 from sklearn.datasets import make_moons from sklearn.model_selection import train_test_split moons = make_moons(noise=0.3, random_state= 0) X, y = moons X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.4, random