Обычно я получаю 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_
из конвейеров.)
named_steps
) в здесь. Понятно, что. 04.03.2015regr = TransformedTargetRegressor
над вашим конвейером, то синтаксис не тот, вместо этого вам нужно получить доступ к регрессору, используяregressor_
, прежде чем вы получите доступ к указанным шагам, то естьregr.regressor_.named_steps['pca'].components_
. 11.11.2019user guide
, присутствующем в этих документах. 11.01.2021