sklearn.pipeline中的 Pipeline( 管道机制)

管道机制是按照封装顺序依次执行的一种机制,在机器学习算法中得以应用的根源在于,参数集在新数据集(比如测试集)上的重复使用。

具体代码如下:

from sklearn.pipeline import Pipeline #管道机制
from sklearn.preprocessing import StandardScaler #标准化数据
from sklearn import datasets #数据集
from sklearn.model_selection import train_test_split #分训练和测试集
from sklearn.neighbors import KNeighborsClassifier #knn分类 

iris = datasets.load_iris()
X_train,X_test,y_train,y_test = train_test_split(iris.data,\
                        iris.target,test_size=0.1)

pipe=Pipeline(steps=[('standardScaler',StandardScaler()),\
                     ('knn',KNeighborsClassifier(n_neighbors=5))])
pipe.fit(X_train,y_train) #训练模型
pipe.predict(X_test) #预测结果
print('Test accuracy: %.3f' % pipe.score(X_test, y_test))#输出精度

Pipeline中的steps是一个列表结构,里面是由一个个tuple构成,上述代码中包括两个结构:(1)均一化(2)KNN分类器。不管steps中有几个tuple,最后一个一定要是分类器(回归器),前面的可以是各种处理数据的模块。

在每个模块中,可以写入模块中所用的参数。

参考:https://blog.csdn.net/lanchunhui/article/details/50521648

发布了56 篇原创文章 · 获赞 29 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/foneone/article/details/102057156