SVD интерпретация выходных данных в mahout
Я пытаюсь запустить работу SVD в mahout. У меня есть созданная матрица (скажем, A) (термин "Документ x") размером 372053 x 21338 (21338 уникальных слов не содержат N, 372053 - "M"). Таким образом, моя матрица А имеет размер (M*N). Я запустил SVD, используя mahout, и я получил очищенные собственные векторы (я дал ожидаемый рейтинг как 200, скажем, R). Теперь у меня есть матрица собственных векторов, созданная размером R*N.
Заявление уравнения SVD
A = U * S * V' (V' - транспонирование V)
Мне нужно преобразовать матрицу A в новое пространство, чтобы получить сжатые векторы документов (я пытаюсь реализовать LSI)
Какой вывод я получу от СВД? (Я хотел бы знать в терминах приведенного выше уравнения) Я прочитал список рассылки, что мы можем получить собственные значения из NamedVectors в сгенерированной матрице собственных векторов.
Пожалуйста, объясните мне, как действовать дальше, чтобы сгенерировать матрицу термина документа A в новом пространстве (размером M*R).
Любая помощь высоко ценится:)
1 ответ
Хорошую отправную точку для LSI со Stochastic SVD на Mahout можно найти здесь. Хорошая часть заключается в том, что в статье описывается также процесс складывания, и он явно указан в формате вывода в терминах уравнения SVD.
Работа интегрирована в последнюю версию 0.8 и может быть использована с SSVDCli
работа или через mahout CLI с mahout ssvd <options>