Склеарн PCA fit_transform () центрирует входные переменные? - PullRequest
0 голосов
/ 17 февраля 2020

Вопрос в названии. После вызова pca.fit(X) предположим, что я позвонил pca.fit_transform(new_X). new_X автоматически центрируется PCA? Документация по этому вопросу неясна.

1 Ответ

0 голосов
/ 17 февраля 2020

Из документов:

Линейное уменьшение размерности с использованием сингулярного значения Декомпозиция данных для проецирования их в пространство более низких измерений. Перед применением SVD входные данные центрируются, но не масштабируются для каждой функции.

https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html

fit_transform - это просто эквивалент работы fit и transform последовательно на одной входной матрице. Функция fit рассчитывает средние значения для центрирования данных, а функция transform применяет средние значения, используя средние значения, вычисленные в течение fit.

Поэтому, чтобы поместиться в одну матрицу и применить параметры центрирования, извлеченные из этой матрицы, к другой (как, например, при применении модели, изученной в обучающем наборе, к набору тестов / проверок), вам потребуется использовать fit и transform отдельно.

...