导包
from sklearn.ensemble import AdaBoostClassifier
import numpy as np
from sklearn import tree
生成数据
X = np.arange(10).reshape(-1,1)
y = np.array([1,1,1,-1,-1,-1,1,1,1,-1])
声明算法,进行训练
ada = AdaBoostClassifier(algorithm='SAMME',n_estimators=3)
ada.fit(X,y)
第一棵树划分
_ = tree.plot_tree(ada[0])
ada[0].predict(X)
第一棵树划分手动计算
w1 = np.full(shape = 10,fill_value=0.1)
y1 = np.array([1,-1,-1,-1,-1,-1,-1,-1,-1,-1])
e1 = ((y != y1)*d1).sum()
print('方式一',e1)
e1 = (y != y1).mean()
print('方式二',e1)
y2 = np.array([1,1