Я хочу реалізувати алгоритм у статті, яка використовує ядро SVD для розкладання матриці даних. Тому я читав матеріали про методи ядра та PCA ядра тощо. Але це все ще дуже незрозуміло для мене, особливо якщо мова йде про математичні деталі, і у мене є кілька питань.
Чому методи ядра? Або які переваги методів ядра? Яка інтуїтивна мета?
Чи припускає, що набагато більший розмірний простір реалістичніший у проблемах реального світу та чи здатний розкрити нелінійні співвідношення в даних порівняно з методами, які не містять ядра? Згідно з матеріалами, ядра методів проектують дані у просторовий простір великих розмірів, але їм не потрібно чітко обчислювати новий простір функцій. Натомість досить обчислити лише внутрішні добутки між зображеннями всіх пар точок даних у просторі зображень. То чому б проектувати на простір більш високого розміру?
Навпаки, SVD зменшує простір функцій. Чому вони роблять це в різних напрямках? Методи ядра шукають більш високий вимір, в той час як SVD шукає нижчий вимір. Мені здається дивно їх поєднувати. Відповідно до статті, яку я читаю ( Symeonidis et al. 2010 ), введення Kernel SVD замість SVD може вирішити проблему з обмеженим рівнем даних, покращуючи результати.
З порівняння на малюнку ми бачимо, що KPCA отримує власний вектор з більшою дисперсією (власне значення), ніж PCA, я думаю? Оскільки для найбільшої різниці проекцій точок на власний вектор (нові координати), KPCA - це коло, а PCA - пряма, тому KPCA отримує більшу дисперсію, ніж PCA. Так це означає, що KPCA отримує вищі основні компоненти, ніж PCA?