Рассмотрим задачу объединения PCA и регрессии, когда PCA выполняет уменьшение размерности, а регрессия - прогнозирование.
Пример, взятый из документации sklearn:
import numpy as np
import matplotlib.pyplot as plt
from sklearn import linear_model, decomposition, datasets
from sklearn.pipeline import Pipeline
from sklearn.model_selection import GridSearchCV
logistic = linear_model.LogisticRegression()
pca = decomposition.PCA()
pipe = Pipeline(steps=[('pca', pca), ('logistic', logistic)])
digits = datasets.load_digits()
X_digits = digits.data
y_digits = digits.target
n_components = [5, 10]
Cs = np.logspace(-4, 4, 3)
param_grid = dict(pca__n_components=n_components, logistic__C=Cs)
estimator = GridSearchCV(pipe,param_grid)
estimator.fit(X_digits, y_digits)
Как выполнитьуменьшение размерности только для подмножества моего набора функций с использованием FunctionTransformer (например, ограничить PCA последними десятью столбцами X_digits)?