Использование параметров ядра pca: kernel и fit_inverse_transform - PullRequest
0 голосов
/ 25 мая 2018

Я пытаюсь применить Kernel PCA для смешанного набора данных (как категориального, так и числового).Я хочу оптимизировать свою модель, но даже если я прочитал документацию, я не понял основного назначения fit_inverse_transform и параметра X_transform_fit_ with dual_coef_.Есть ли кто-нибудь, кто может объяснить их цель и как их интерпретировать?

1 Ответ

0 голосов
/ 25 мая 2018

Как правило, цель любого преобразователя в scikit-learn (включая kernelPCA) - изменить размер ваших функций.Поэтому, если мы предположим, что ваши исходные объекты имеют размерность d , преобразователь может преобразовать их в размерность k , где k <= <strong>d .После подгонки модели вы можете использовать следующие 2 метода:

  1. transform --- При наличии оригинальных функций преобразовать в новые функции ( d -> k )
  2. inverse_transform --- Учитывая новые функции, преобразуйте в оригинальные ( k -> d )

В случаев kernelPCA вам необходимо специально включить второй параметр через параметр fit_inverse_transform, поскольку по умолчанию он установлен на False.Причина этого в том, что метод inverse_transform требует выполнения некоторых дополнительных вычислений (хранится в dual_coef_).

Проверьте исходный код здесь , если все еще сомневаетесь.

...