Python 标准定标器在投票分类器中的应用

Python 标准定标器在投票分类器中的应用,python,machine-learning,scikit-learn,classification,Python,Machine Learning,Scikit Learn,Classification,我创建了各种模型的集合,如svc、logisticsregression、lineardiminantanalysis等等 但是当我缩放数据时,mlp分类器工作得更好,但是其他模型,如LogisticRegression在缩放数据时实现的准确性更低。所以我只想缩放一个模型的数据 从sklearn导入预处理 scaler=预处理。StandardScaler() 定标器安装(X_系列) X_列=缩放器变换(X_列) X_val=缩放器.变换(X_val) mlp=mlp分类器(解算器='lbfgs

我创建了各种模型的集合,如
svc
logisticsregression
lineardiminantanalysis
等等

但是当我缩放数据时,
mlp
分类器工作得更好,但是其他模型,如
LogisticRegression
在缩放数据时实现的准确性更低。所以我只想缩放一个模型的数据

从sklearn导入预处理
scaler=预处理。StandardScaler()
定标器安装(X_系列)
X_列=缩放器变换(X_列)
X_val=缩放器.变换(X_val)
mlp=mlp分类器(解算器='lbfgs',α=1e-5,
隐藏层大小=(5,2),随机状态=1)
mlp.配合(X_系列,y_系列)
y_pred=mlp.predict(X_val_ux)
现在,当我创建投票分类器时,我不知道如何单独使用一个模型的缩放数据

votingC=VotingClassifier(估计器=[('logistic_回归',lr),('SVC',SVC),
('Catboost',cat),('ExtraTrees',et),('LinearDiscriminantAnalysis',lda),
('perceptron',p),('randomforest',r),('nusvc',nusvc),('knn',knn),
('sgdclassizer',pac),('bag',bag),('bnb',nc)],
投票“努力”,n_jobs=6,
权重=[1.5,1.5,1,1,1,1,1,1,1,1,1])
votingC=votingC.fit(X\U系列,y\U系列)

提前多谢

对于需要缩放的模型,您可以,然后进入投票分类器。缩放和非缩放支持向量分类器示例:

from sklearn.ensemble import VotingClassifier
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC

from sklearn.datasets import make_classification
from sklearn.pipeline import make_pipeline

X,y = make_classification(random_state=123)

scaled_svc = make_pipeline(StandardScaler(), SVC())

voting = VotingClassifier(estimators=[
    ('scaled_svc', scaled_svc),
    ('unscaled_svc', SVC())
])

v = voting.fit(X,y)
v.predict(X)

array([0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1,
       0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
       0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0,
       1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1,
       1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0])

您缩放了一个模型,而另一个模型没有缩放。因此,当您在测试集上进行预测时,它应该预测具有缩放测试集的缩放模型和具有非缩放测试集的非缩放模型。投票或堆叠分类器是如何处理的?这是一个分类任务,因此两个分类器的输出是可比较的,可以用于投票。这两种情况下的输入都是未缩放的输入,缩放的svc管道随后会自动缩放。在我的示例中,您将在训练集上拟合scaler,然后使用它来缩放测试集。