import numpy as np
from sklearn.ensemble import AdaBoostClassifier,AdaBoostRegressor
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn import tree
X,y = datasets.load_iris(True)
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size = 0.2,random_state = 1024)
ada = AdaBoostClassifier(n_estimators=3,algorithm='SAMME',learning_rate=1.0)
ada.fit(X_train,y_train)
y_ = ada.predict(X_test)
proba_ = ada.predict_proba(X_test)
accuracy = ada.score(X_test,y_test)
print('--------------------算法准确率:',accuracy)
计算第一棵树弱学习器权重,更新样本权重
learning_rate = 1.0
np.unique(y)
num = 3
w0 = np.full(shape = 120,fill_value=1/120)
y1 = ada[0].predict(X_train)
e1 = ((y1 != y_train)*w0).sum()