зважена проблема SVD?


12

Давши дві матриці і , я хотів би знайти вектори і , такі, що У матричній формі я намагаюся мінімізувати норму Фробеніуса A - \ mbox {diag} (x) \ cdot B \ cdot \ mbox {diag} (y) = A - B \ circ (xy ^ \ top) .ABxy

minij(AijxiyjBij)2.
Adiag(x)Bdiag(y)=AB(xy)

Загалом, я хотів би знайти кілька одиничних векторів x і y у формі

minij(Aijk=1nsixi(k)yj(k)Bij)2.
де si - позитивні реальні коефіцієнти.

Це еквівалентно розкладу сингулярного значення (SVD), коли (B)ij=1 .

Хтось знає, як називається ця проблема? Чи існує відомий алгоритм на зразок SVD для вирішення такої проблеми?

(перенесено з math.SE)


Я вважаю, що це узагальнений SVD . Запис у Вікіпедії не дуже детальний, тому, ймовірно, слід перевірити пов'язані джерела. Зокрема, корисна може бути сторінка 466 цього посилання на книги Google .
ely

1
Для мене це не схоже на узагальнений SVD. Тим більше, що B не обов'язково є діагональним або симетричним, тому кожен x або y може відображатися багато разів у сумі.
Віктор Лю

В узагальненому SVD не потрібно бути ні діагональним, ні симетричним. Обидва надані мною посилання вказують, що A і B можуть бути загальними комплексними матрицями розмірності M-by-N і P-by-N відповідно.
ely

Дякуємо за пропозицію @EMS. Буду вдячний, якщо ви можете розробити зв'язок.
Спогад

Відповіді:


8

Це далеко не узагальнений SVD.

Якщо B - позитивна матриця, ви можете використовувати мій пакет BIRSVD http://www.mat.univie.ac.at/~neum/software/birsvd/

У статті http://www.mat.univie.ac.at/~neum/software/birsvd/svd_incomplete_data.pdf, що описує метод, також наведено посилання, які ви можете вважати для пошуку літератури.


Ах, перетворюючи задачу на зважене наближення низького рангу! Дуже дякую!
Спогад

Щоб додати деталі до відповіді @ Арнольда, ця проблема може бути перетворена на зважену проблему наближення низького рангу, де мета полягає в мінімізації зваженої норми замість норми Фробеніуса. де і позначає добуток Шура (ака Продукт Адамара). ||Csixiyi||W2||C||W=||CW||F
Спогад

Так. Це дає приємну назву вашій проблемі. Як її вирішити - це інша справа. Це не стандартна проблема, і було досить складно знайти алгоритм, який є швидким і надійним.
Арнольд Ноймаєр

@ArnoldNeumaier це чудово, дякую. чи можна було б отримати ліцензію та повідомлення про авторські права зі своїм кодом? Як і зараз, це власне програмне забезпечення. Якщо ви випустите його під GPLv3 або сумісним, він може знайти шлях до пакету лінійно-алгебри GNU Octave.
JuanPi
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.