Python 使用1)StandardScaler&;分类器vs 2)管道(标量、分类器)?

Python 使用1)StandardScaler&;分类器vs 2)管道(标量、分类器)?,python,machine-learning,random-forest,Python,Machine Learning,Random Forest,运行一个标准的定标器,然后再运行一个分类器,会得到与使用管道相同的结果吗 您好,我遇到了一个分类问题,正在尝试使用scikit learn的StandardScaler()缩放X变量。我认为有两种方法可以做到这一点,理论上它们是否会产生相同的结果?因为当我使用选项(1)时,我在测试数据集上获得了更好的精度分数 (一) (二) 选项2使用的数据集(xytest)与版本号(1)使用的数据集(xtest)不同。此外,交叉验证应该包括培训,而不仅仅是预测 除此之外,它们应该是一样的,而我建议你使用管道

运行一个标准的定标器,然后再运行一个分类器,会得到与使用管道相同的结果吗

您好,我遇到了一个分类问题,正在尝试使用scikit learn的StandardScaler()缩放X变量。我认为有两种方法可以做到这一点,理论上它们是否会产生相同的结果?因为当我使用选项(1)时,我在测试数据集上获得了更好的精度分数

(一)

(二)


选项2使用的数据集(
xytest
)与版本号(1)使用的数据集(
xtest
)不同。此外,交叉验证应该包括培训,而不仅仅是预测

除此之外,它们应该是一样的,而我建议你使用管道

scalar = StandardScaler()
xtrain_ = scalar.fit_transform(xtrain)
RFC = RandomForestClassifier(n_estimators=100)
RFC.fit(xtrain. ytrain)

xtest_ = scalar.transform(xtest)
score = cross_val_score(RFC, xtest_, ytest,cv=10, scoring ='precision')
RFCs = Pipeline([("scale", StandardScaler()), ("rf", RandomForestClassifier(n_estimators=100))])
RFCs.fit(xtrain, ytrain)
scores = cross_val_score(RFCs, xytest, ytest, cv=10, scoring='precision')