Adaboost-分类

##Adaboost-分类

from sklearn.ensemble import AdaBoostClassifier
from sklearn.datasets import make_classification

#1.导入数据
#data = pd.read_csv(’’)

#2.数据预处理
#略,最终生成x_train,y_train,x_test
#导入sklearn的数据集
x_train, y_train = make_classification(n_samples=1000, n_features=4, n_informative=2, n_redundant=0, random_state=0, shuffle=False)

#3.模型训练
clf = AdaBoostClassifier(n_estimators=100, random_state=0)
clf.fit(x_train, y_train)

#4.模型预测

#特征重要性
print(‘feature_importances:’, clf.feature_importances_)
#构造数据
x_test = [[0, 0, 0, 0], [2, 6, 4, 4]]
y_predict = clf.predict(x_test)

print(y_predict)

#参数列表与调参方法
AdaBoostClassifier(base_estimator=None, n_estimators=50, learning_rate=1.0, algorithm=’SAMME.R’, random_state=None)

#base_estimator : object, optional (default=None)
个体学习器。需要支持样本加权,以及合适的 classes_和n_classes_属性。如果为None,则为DecisionTreeClassifier(max_depth=1)

#n_estimators : integer, optional (default=50)
提升终止的最大估计数。在完美契合的情况下,学习过程提前停止。

#learning_rate : float, optional (default=1.)
学习率会缩小每个回归量的贡献,在learning_rate和n_estimators 之间需要权衡

#algorithm : {‘SAMME’, ‘SAMME.R’}, optional (default=’SAMME.R’)
如果’SAMME.R’则使用SAMME.R真正的增强算法。 base_estimator必须支持类概率的计算。
如果’SAMME’则使用SAMME离散增强算法。
SAMME.R算法通常比SAMME快收敛,通过较少的增强迭代实现较低的测试误差。

#random_state : int, RandomState instance or None, optional (default=None)
如果是int,则random_state是随机数生成器使用的种子; 如果是RandomState实例,则random_state是随机数生成器;
如果为None,则随机数生成器是由np.random使用的RandomState实例。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值