adaboost分类算法python实现
时间: 2023-11-09 16:05:04 浏览: 31
以下是adaboost分类算法的Python实现,使用sklearn库:
```python
from sklearn.ensemble import AdaBoostClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 生成训练和测试数据
X, y = make_classification(n_samples=1000, n_features=10, n_informative=5, n_classes=2, random_state=42)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 定义决策树模型
tree = DecisionTreeClassifier(max_depth=1)
# 定义adaboost模型
adaboost = AdaBoostClassifier(base_estimator=tree, n_estimators=50, learning_rate=1)
# 训练模型
adaboost.fit(X_train, y_train)
# 预测测试数据
y_pred = adaboost.predict(X_test)
# 输出准确率
print("Accuracy:", accuracy_score(y_test, y_pred))
```
在这个实现中,我们使用了make_classification方法生成了1000个样本和10个特征的数据集,其中有5个特征是相关的,共有2个类别。我们将数据集分成了训练集和测试集,并定义了一个深度为1的决策树模型作为基础模型,然后使用该模型定义了一个adaboost模型,并训练了50个弱分类器。最后,我们使用测试数据集进行预测,并输出了准确率。