我正在使用流水线和网格搜索CV处理工作流。
随机森林的MWE,如下所示,
#################################################################
# Libraries
#################################################################
import time
import pandas as pd
import numpy as np
from sklearn.pipeline import Pipeline
from sklearn.model_selection import GridSearchCV
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
#################################################################
# Data loading and Symlinks
#################################################################
train = pd.read_csv("data_train.csv")
test = pd.read_csv("data_test.csv")
#################################################################
# Train Test Split
#################################################################
# Selected features - Training data
X = train.drop(columns='fault_severity')
# Training data
y = train.fault_severity
# Test data
x = test
# Break off validation set from training data
X_train, X_valid, y_train, y_valid = train_test_split(X, y, train_size=0.8, test_size=0.2, random_state=0)
#################################################################
# Pipeline
#################################################################
pipe_rf = Pipeline([
('clf', RandomForestClassifier(random_state=0))
])
parameters_rf = {
'clf__n_estimators':[30,40],
'clf__criterion':['entropy'],
'clf__min_samples_split':[15,20],
'clf__min_samples_leaf':[3,4]
}
grid_rf = GridSearchCV(pipe_rf,
param_grid=parameters_rf,
scoring='neg_mean_absolute_error',
cv=5,
refit=True)
问题:
如何在随机森林的MWE中使用管道和网格搜索CV技术转换XGBoost的MWE?必须使用 XGB 回归器 () 不支持的“num_class”。
如何将随机森林的多类预测输出作为XGBoost(即predict_0,predict_1 predict_2)?示例输出在上述 MWE 中给出。我发现num_class是随机森林分类器不支持的。
我花了几天时间研究这个问题,但仍然被阻止了。感谢一些前进的指针。
数据:
data_train: https://www.dropbox.com/s/bnomyoidkcgyb2y/data_train.csv
data_test: https://www.dropbox.com/s/kn1bgde3hsf6ngy/data_test.csv
慕田峪4524236
相关分类