stacking代码 python
时间: 2023-07-22 22:58:07 浏览: 131
以下是一个用Python编写的Stacking集成的示例代码:
```python
from sklearn.linear_model import LogisticRegression
from sklearn.ensemble import RandomForestClassifier
from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
from sklearn.ensemble import StackingClassifier
# 加载数据
X, y = load_data()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
# 定义基础模型
model1 = RandomForestClassifier(random_state=0)
model2 = KNeighborsClassifier()
# 定义元模型
meta_model = LogisticRegression()
# 创建Stacking集成模型
stacking_model = StackingClassifier(estimators=[('rf', model1), ('knn', model2)], final_estimator=meta_model)
# 在训练集上训练Stacking模型
stacking_model.fit(X_train, y_train)
# 在测试集上进行预测
y_pred = stacking_model.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)
```
在这个示例中,我们使用了RandomForestClassifier和KNeighborsClassifier作为基础模型,并使用LogisticRegression作为元模型。通过调用StackingClassifier构造函数,传入基础模型和元模型,创建了一个Stacking集成模型。然后使用fit函数在训练集上训练模型,并使用predict函数在测试集上进行预测。最后,计算准确率作为性能评估指标。
请注意,这只是一个示例代码,实际使用时需要根据具体的数据和任务进行相应的调整和优化。
阅读全文