Коли вибрати PCA проти LSA / LSI


9

Питання:

Чи є якісь загальні вказівки щодо характеристик вхідних даних, які можна використовувати для вирішення між застосуванням PCA та LSA / LSI?

Короткий підсумок PCA проти LSA / LSI:

Принциповий компонентний аналіз (PCA) та латентний семантичний аналіз (LSA) або латентна семантична індексація (LSI) подібні в тому сенсі, що всі вони принципово покладаються на застосування сингулярного декомпозиції значення (SVD) до матриці.

Наскільки я можу сказати, LSA та LSI - це одне і те ж. LSA відрізняється від PCA не принципово, але з точки зору того, як матричні записи попередньо обробляються перед застосуванням SVD.

У LSA крок попередньої обробки, як правило, включає нормалізацію матриці підрахунку, де стовпці відповідають "документам", а рядки - якомусь слову. Записи можна розглядати як певний (нормалізований) кількість слов-зустрічей-для-документа.

У PCA етап попередньої обробки включає обчислення матриці коваріації з вихідної матриці. Оригінальна матриця має концептуально більш «загальний» характер, ніж у випадку LSA. Що стосується PCA, стовпчики, як правило, посилаються на загальні вектори вибірки, а рядки посилаються на окремі змінні, що вимірюються. Коваріаційна матриця за визначенням є квадратною та симетричною, і фактично не потрібно застосовувати SVD, оскільки матриця коваріації може бути розкладена за допомогою діагоналізації. Зокрема, матриця PCA майже напевно буде щільнішою, ніж варіант LSA / LSI - нульові записи відбудуться лише там, де коваріація між змінними дорівнює нулю, тобто там, де змінні є незалежними.

Нарешті, ще одним описовим моментом, який досить часто робиться для розмежування двох, є те

LSA шукає найкращого лінійного підпростору в нормі Фробеніуса, тоді як PCA має на меті найкраще афінне лінійне підпростору.

У будь-якому випадку, різниці та схожість цих методів гостро обговорювались на різних форумах у всіх мережах, і очевидно, що існують деякі помітні відмінності, і очевидно, що ці дві методи дадуть різні результати.

Таким чином, я повторюю своє запитання: чи є якісь загальні вказівки щодо характеристик вхідних даних, які можна використовувати для вирішення між застосуванням PCA проти LSA / LSI? Якщо у мене є щось, що нагадує матрицю термінового документа, LSA / LSI завжди буде найкращим вибором? Чи можна очікувати на отримання кращих результатів у деяких випадках, підготувавши термін / doc матрицю для LSA / LSI та застосувавши PCA до результату, замість того, щоб безпосередньо застосовувати SVD?


1
Ваш опис LSA / LSI дуже нагадує мене аналіз кореспонденції (CA), і я підозрюю, що акронім LSA для розробки тексту розшифровується як CA у статистиці. CA та PCA дійсно дуже тісно пов'язані.
— ttnphns

Ей, просто хотілося дізнатися, чи знайшли ви коли-небудь відповідь на це, у мене це саме таке питання.
— Pushpendre

Що ти намагаєшся зробити? Це може дати деяке уявлення про те, що може бути більш застосовним. Вас цікавить пошук текстових шаблонів та смислових кореляцій чи прихованого простору з меншими розмірами як для документів, так і для термінів?
— ui_90jax

Відповіді:


2

Однією з різниць, яку я зазначив, було те, що PCA може надати вам лише схожість терміна або документа або документа (залежно від того, як ви помножили матрицю основної кореспонденції AA∗ або A∗A), але SVD / LSA може доставити обидва, оскільки у вас є власні вектори обох AA∗ і A∗A. Насправді я не бачу причини використовувати PCA ніколи над SVD.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.