Відбір проб з багатоваріантної гауссової з графічною лаплаціанською (зворотною) коваріацією


12

Наприклад, з Кутіса-Міллера-Пенга (на основі роботи Спілмана та Тенга) ми знаємо, що ми можемо дуже швидко розв’язати лінійні системи Ax=b для матриць A що є графіком Лаплаціанської матриці для деякого розрідженого графіка з невід’ємними вагами .

Тепер (перше запитання) розглянемо використання однієї з цих графічних матриць Лаплаціана A як коваріації або (другого питання) зворотної матриці коваріації нульового середнього багатоваріантного нормального розподілу N(0,A) або N(0,A1) . У кожному з цих випадків у мене є два питання:

А. Наскільки ефективно ми можемо взяти зразок із цього розподілу? (Як правило, щоб скласти вибірку, ми обчислюємо розклад Холеського A=LLT , проведемо стандартний нормальний yN(0,I) , потім обчислимо вибірку як x=L1y ).

B. Наскільки ефективно ми можемо обчислити визначник A ?

Зауважте, що обидва з них можна було б легко розв'язати за допомогою декомпозиції Холеського, але я не одразу бачу, як витягти L ефективніше, ніж просто, використовуючи стандартний алгоритм Холеського, який не використовує методи, представлені у вищенаведеному посиланні працює, і які мали б кубічну складність для графіків із обмеженою, але високою шириною ширини.


Я думаю, що це може допомогти бути трохи більш конкретним щодо того, що ви вважаєте "ефективним" в обох випадках. Чи "ефективний" такий самий, як "не залежний від розкладання Чолеського"?
Суреш Венкат

Дякую за пропозицію. Можливо, що відповідь на всі запитання полягає в тому, що "потрібно обчислити розклад Холеського, і немає структури, яка могла б бути використана за межами матриці". Мені було б цікаво дізнатися, чи це правда (але сподіваюся, що це не так). Що стосується "ефективності" в останньому абзаці, так, я здебільшого маю на увазі ефективніше порівняно зі стандартними розрідженими алгоритмами Холеського. Хоча якби існував спосіб використовувати методики вищезазначеної роботи для обчислення Чолеського настільки ж швидко, як це можна зробити за допомогою інших засобів, це також було б цікаво.
dan_x

N(0,A)A=BTBBREEB

Відповіді:


3

Тут є два окремих питання.

  1. Ax=bA1/2b
  2. Як обчислити визначник.

Короткі відповіді: 1) використовуйте раціональні наближення функції матриці; 2) ви цього не робите, але вам це все одно не потрібно. Я вирішую обидва ці питання нижче.

Наближення матричного квадратного кореня

Ідея тут полягає в перетворенні раціонального наближення функції для скалярних функцій в раціональне наближення функції для матричних функцій.

xr(x):=a1x+b1+a2x+b2++aNx+bN,
bi[m,M]O(logMm)aibi

r(A)=a1(A+b1I)1+a2(A+b2I)1++aN(A+bNI)1.

A

||A1/2r(A)||2=||U(Σ1/2r(Σ))U||2,=maxi|σir(σi)|
A=UΣUA

Позначивши номер умови за допомогою , ми можемо застосувати до будь-якого потрібного допуску, виконавши позитивно зміщений графік лаплаціанських розв’язків форми, AκA1/2bO(logκ)

(A+bI)x=b.

Ці рішення можна виконати за допомогою улюбленого вирішувача графіка Laplacian - я віддаю перевагу методам багатожиточного типу, але той, який ви цитуєте в роботі, теж повинен бути добре. Додатковий лише сприяє конвергенції розв'язувача.bI

Для чудової статті, що обговорює це, а також більш загальні методи складного аналізу, що застосовуються до несиметричних матриць, див. Обчислення , та пов'язані з ними функції матриць за допомогою контурних інтегралівAαlog(A) , Хейл, Хігхем і Трефетен (2008) ).

Визначальний "обчислення"

Детермінант важче обчислити. Наскільки я знаю, кращий спосіб обчислити розкладання Шура з допомогою QR - алгоритму, а потім зчитувати власні від діагоналі верхньої трикутної матриці . Це займає час , де - кількість вузлів у графі.A=QUQUO(n3)n

Однак обчислення визначників є суттєво не обумовленою проблемою, тому якщо ви коли-небудь читаєте статтю, яка спирається на обчислення визначників великої матриці, ви повинні бути дуже скептично налаштовані до методу.

На щастя, вам, мабуть, фактично не потрібен детермінант. Наприклад,

  • Для отримання зразків з одного гауссового розподілу константа нормалізації однакова у всіх точках, тому ніколи не потрібно її обчислювати.N(0,A1)
  • Якщо ваша матриця являє собою зворотну коваріацію локального наближення Гаусса в точці до не-гауссового розподілу, то детермінант дійсно змінюється від точки до точки. Однак у кожній ефективній схемі вибірки я знаю (включаючи ланцюг Маркова Монте-Карло, вибірку важливості тощо), що вам дійсно потрібно, це коефіцієнт детермінант , де - поточна точка, а - запропонований наступний зразок.A=Axx
    det(Ax01Axp),
    x0xp

Ми можемо розглядати як оновлення низького рангу до тотожності, де дієва ранг, , оновлення низького рангу - це локальний показник того, наскільки не гауссова справжня дистрибуція; зазвичай це набагато нижче, ніж повний ранг матриці. Дійсно, якщо великий, то справжній розподіл локально настільки неавсійський, що варто поставити під сумнів всю стратегію спроби вибірки цього розподілу за допомогою локальних наближень Гаусса.Ax01Axp

Ax01Axp=I+QDQ,
rr

Фактори низького рангу і можна знайти за допомогою рандомізованих SVD або Lanczos, застосувавши матрицю до різних векторів, для кожного застосування яких потрібен один графік Розчин Лаплаціа. Таким чином, загальна робота щодо отримання цих низькопорядкованих факторів становить .QD

Ax01AxpI
O(r)O(rmax(n,E))

Знаючи , визначальне співвідношення тоді D=diag(d1,d2,,dr)

det(Ax01Axp)=det(I+QDQ)=exp(i=1rlogdi).

Ці методи визначення обчислювального коефіцієнта низького рангу можна знайти в методі Stohastic Newton MCMC для великих масштабних статистичних обернених проблем із застосуванням до сейсмічної інверсії , Martin, et al. (2012 р.). У цій роботі він застосовується до задач континууму, тому "граф" - це сітка в тривимірному просторі, а графік Лаплаціан - фактична матриця Лаплачія. Однак всі методи застосовуються до загальних графіків лаплачан. Напевно, є й інші документи, що застосовують цю техніку до загальних графіків (розширення тривіальне і в основному те, що я щойно написав).

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