机器学习库sklearn中集成学习模型参数释义

本文详细介绍了sklearn库中AdaBoostClassifier和AdaBoostRegressor的参数和使用,包括学习率、基本分类器、损失函数等关键设置。此外,还探讨了GradientBoostingClassifier和GradientBoostingRegressor(GBDT和GBRT)的参数,如损失函数、学习率和决策树相关参数。最后,概述了RandomForestClassifier和RandomForestRegressor的参数,如决策树数量、特征选择和节点分裂条件。这些模型是机器学习中常用的集成学习方法。
摘要由CSDN通过智能技术生成
'''
scikit-learn基于AdaBoosts算法提供了两个模型:
1.AdaBoostClassifier用于解决分类问题
2.AdaBoostRegressor用于解决回归问题
'''
from sklearn.ensemble import AdaBoostClassifier

AdaBoostClassifier(base_estimator=None,
                 n_estimators=50,
                 learning_rate=1.,
                 algorithm='SAMME.R',
                 random_state=None)
'''
参数含义:
1.Base_estimator:object, optional (default=DecisionTreeClassifier)
                基分类器。默认为DecisionTreeClassifier。
                基分类器需要支持带样本权重的学习以及具备classes_和n_classes_属性。
2.n_estimator:integer, optional (default=50)
                整数,默认是50.指定基分类器的数量。
                提升学习过程被终止时基分类器的最大数量。当完美的拟合训练数据了,
                提升算法会提前停止。这时的基本分类器数量小于给定的值
3.learn_rate:float, optional (default=1.).
                学习率。默认是1.
                通过learning_rate缩减每个分类器的贡献。在learning_rate和n_estimators之间需要权衡。
                通常学习率越小,需要的基本分类器就越多,因此在learning_rate和n_estimators之间要有所折中。
                学习率就是下面公式中的v:
                                    F_m(x)=F_m-1(x)+v*alpha_m*G_m(x)
                其中G_m(x)就是第m个基本分类器。aplha_m是第m个基本分类器的系数。
4.algorithm:{'SAMME', 'SAMME.R'}, optional (default='SAMME.R')
            指定所采用的算法。默认为'SAMME.R'。
            标准的AdaBoost算法只适用于二分类问题。SAMME适用于AdaBoost多分类问题
            (1).algorithm='SAMME',采用SAMME离散提升算法。
            (2).algorith='SAMME.R',采用SAMME.R真正的提升算法。如果选择SAMME.R算法,
            基本分类器必须必须支持类别概率的计算。
            (3).SAMME.R算法通常比SAMME收敛得更快,通过较少的提升迭代实现较低的测试误差。
5.random_state:int, RandomState instance or None, optional (default=None)
            (1).如果为整数,则它指定了随机数生成器的种子。
            (2).如果为RandomState实例,则指定了随机数生成器。
            (3).如果为None,则使用默认的随机数生成器。

属性:
1.estimators_:list of classifiers.分类器列表。所有训练过的基本分类器。
2.classes_ : array of shape = [n_classes]。类别标签。
3.n_classes_ : int。类别数量。
4.estimator_weights_ : array of floats。数组,存放每个基本分类器的权重。
5.estimator_errors_ : array of floats。数组,存放每个基本分类器的分类误差。
6.feature_importances_ : array of shape = [n_features]
                        每个特征的重要性。

方法:
1.fit():模型训练。
2.predict():模型预测。
3.predict_log_proba():预测的每个样本属于各个类别的概率对数值。
4.predict_proba():预测的每个样本属于各个类别的概率值。
5.staged_predict():预测每一轮迭代后输入样本的预测值。
6.staged_predict_proba():预测每一轮迭代后输入样本属于各个类别的概率值。
'''

from sklearn.ensemble import AdaBoostRegressor

AdaBoostRegressor(base_estimator=None,
                 n_estimators=50,
                 learning_rate=1.,
                 loss='linear',
                 random_state=None)

'''
参数含义:
1.base_estimator:object, optional (default=DecisionTreeRegressor)
                基本分类器。默认是DecisionTreeRegressor
                基分类器需要支持带样本权重的学习。
2.n_estimators:integer, optional (default=50)
                整数,默认是50.指定基分类器的数量。
                提升学习过程被终止时基分类器的最大数量。当完美的拟合训练数据了,
                提升算法会提前停止。这时的基本分类器数量小于给定的值.
3.learning_rate:float, optional (default=1.)
                学习率。默认是1.
                通过learning_rate缩减每个分类器的贡献。在learning_rate和n_estimators之间需要权衡。
                通常学习率越小,需要的基本分类器就越多,因此在learning_rate和n_estimators之间要有所折中。
                学习率就是下面公式中的v:
                                    F_m(x)=F_m-1(x)+v*alpha_m*G_m(x)
                其中G_m(x)就是第m个基本分类器。aplha_m是第m个基本分类器的系数。
4.loss:{'linear', 'square', 'exponential'}, optional (default='linear')
        指定损失函数。
        (1).loss='linear',线性损失函数。
        (2).loss='square',平方损失函数。
        (3).loss='exponential',指数损失函数。
        (4).在每一轮提升迭代之后,都需要通过损失函数更新权重。
5.random_state:int, RandomState instance or None, optional (default=None)
        (1).如果为整数,则它指定了随机数生成器的种子。
        (2).如果为RandomState实例,则指定了随机数生成器。
        (3).如果为None,则使用默认的随机数生成器。

属性:
1.estimators_:list of classifiers.分类器列表。存放所有训练过的基本回归器。
2.estimator_weights_ : arra
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值