从scikit-learn管道获取模型属性

发布于 2021-01-29 18:29:22

我通常会这样PCA加载:

pca = PCA(n_components=2)
X_t = pca.fit(X).transform(X)
loadings = pca.components_

如果我PCA使用scikit-learn油管跑…

from sklearn.pipeline import Pipeline
pipeline = Pipeline(steps=[    
('scaling',StandardScaler()),
('pca',PCA(n_components=2))
])
X_t=pipeline.fit_transform(X)

…是否有可能获得装载量?

简单尝试loadings = pipeline.components_失败:

AttributeError: 'Pipeline' object has no attribute 'components_'

谢谢!

(也有兴趣coef_从学习管道中提取属性。)

关注者
0
被浏览
51
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您是否看过以下文档:http :
    //scikit-learn.org/dev/modules/pipeline.html 我觉得这很清楚。

    更新:在0.21中,您可以仅使用方括号:

    pipeline['pca']
    

    或索引

    pipeline[1]
    

    有两种方法可以到达管道中的步骤,或者使用索引,也可以使用您提供的字符串名称:

    pipeline.named_steps['pca']
    pipeline.steps[1][1]
    

    这将为您提供PCA对象,您可以在该对象上获取组件。通过,named_steps您还可以将属性访问与一起使用.,以允许自动补全:

    pipe.names_steps.pca。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看