Grafik Laplacian (ters) Kovaryanslı Çok Değişkenli Gaussiandan Örnekleme


12

Biz tanıdığımız örneğin Koutis-Miller-Peng (Spielman ve Teng çalışmalarına dayanan), çok hızlı bir şekilde lineer sistemleri çözebilir Ax=b matrisler için A negatif olmayan kenar ağırlıkları ile bir seyrek grafik için grafik Laplace matristir .

Şimdi (ilk soru), bu grafik Laplacian matrisleri birini Asıfır-ortalama çok değişkenli normal dağılım N(0,A) veya kovaryans veya (ikinci soru) ters kovaryans matrisi olarak kullanmayı düşünün N(0,A1). Bu vakaların her biri için iki sorum var:

C. Bu dağıtımdan ne kadar verimli bir örnek alabiliriz? (Tipik olarak bir örnek çizmek için, Cholesky ayrışmasını hesaplar, A=LLTstandart bir normal çizer yN(0,I), sonra bir örneği olarak hesaplarız x=L1y).

B. belirleyicisini ne kadar verimli hesaplayabiliriz A?

Her ikisinin de bir Cholesky ayrışması verildiğinde kolayca çözülebileceğini unutmayın, ancak L sadece yukarıda belirtilen tekniklerde kullanılmayan standart bir seyrek Cholesky algoritması kullanmaktan daha etkili bir şekilde nasıl çıkaracağımı göremiyorum. çalışır ve seyrek fakat yüksek treewidth grafikler için kübik karmaşıklığa sahiptir.


Her iki durumda da "verimli" olarak değerlendirdiğiniz şey konusunda biraz daha spesifik olmanıza yardımcı olacağını düşünüyorum. "Etkili", "Cholesky ayrışmasına bağlı değil" ile aynı mıdır?
Suresh Venkat

Önerin için teşekkürler. Tüm soruların cevabı “bir Cholesky ayrışması hesaplamanız gerekiyor ve matrisin seyrekliğinin ötesinde kaldırabilecek bir yapı yok” olabilir. Bunun doğru olup olmadığını bilmek isterdim (ama umarım bu değildir). Son paragrafta "verimli" ile ilgili olarak, evet, çoğunlukla standart seyrek Cholesky algoritmalarından daha verimli demek istiyorum. Her ne kadar bir Cholesky'yi başka yollarla yapılabildiği kadar hızlı hesaplamak için yukarıda belirtilen çalışmanın tekniklerini kullanmanın bir yolu olsaydı, bu da ilginç olurdu.
dan_x

N(0,A)A=BTBBREEB

Yanıtlar:


3

Burada iki ayrı sorun var.

  1. Ax=bA1/2b
  2. Determinant nasıl hesaplanır.

Kısa cevaplar şunlardır: 1) rasyonel matris işlev yaklaşımları kullanın ve 2) bilmiyorsunuz, ancak yine de gerek yok. Bu sorunların her ikisini de aşağıda ele alıyorum.

Matris karekök yaklaşımları

Buradaki fikir, skaler fonksiyonlar için rasyonel fonksiyon yaklaşımını matris fonksiyonlar için rasyonel fonksiyon yaklaşımına dönüştürmektir.

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

Durumu sayısını gösteren tarafından biz uygulayabilir gerçekleştirerek arzu edilen herhangi bir tolerans formunda pozitif kaydırılmış grafik Laplace çözümler AκA1/2bO(logκ)

(A+bI)x=b.

Bu çözümler en sevdiğiniz grafik Laplacian çözücüsü ile yapılabilir - Çoklu ızgara tipi teknikleri tercih ederim, ancak alıntı yaptığınız kağıtta da iyi olmalı. Ekstra sadece yakınsamasına yardımcı olur.bI

Simetrik olmayan matrisler için geçerli bir bu tartışma mükemmel kağıt, hem de daha genel kompleks analiz teknikleri için bkz: İşlem , kontur integralleri ile, ve ilgili matris fonksiyonlarıAαlog(A) Hale, Higham ve Trefethen tarafından, (2008 ).

Determinant "hesaplama"

Determinantın hesaplanması daha zordur. Bildiğim kadarıyla , QR algoritmasını kullanarak Schur ayrıştırma hesaplamak , sonra üst üçgen matrisinin köşegeninden özdeğerleri okumaktır . Bu süresini alır, burada grafikteki düğümlerin sayısıdır.A=QUQUO(n3)n

Bununla birlikte, determinantların hesaplanması doğal olarak koşulsuz bir sorundur, bu nedenle büyük bir matrisin hesaplama belirleyicilerine dayanan bir kağıt okuduysanız, yönteme çok şüphelisiniz.

Neyse ki, muhtemelen determinant'a ihtiyacınız yoktur. Örneğin,

  • Tek bir Gauss dağılımından örnek çizmek için normalleştirme sabiti tüm noktalarda aynıdır, bu yüzden asla hesaplamanıza gerek yoktur.N(0,A1)
  • Laplacian matrisiniz , noktasında yerel Gauss yaklaşımının Gauss olmayan bir dağılıma ters kovaryansını temsil , determinant gerçekten noktadan noktaya değişir. Ancak, bildiğim her etkili örnekleme şemasında (Markov zinciri Monte Carlo, önem örneklemesi vb. Dahil) gerçekten ihtiyacınız olan belirleyici oran , burada geçerli noktadır ve önerilen bir sonraki örnektir.A=Axx
    det(Ax01Axp),
    x0xp

Biz görüntüleyebilir kimliğine düşük seviye güncelleme olarak burada etkin sayısal düşük seviyeli güncellemenin rütbe, , Gauss olmayan gerçek dağılımın yerel bir ölçüsüdür; tipik olarak bu, matrisin tam seviyesinden çok daha düşüktür. Gerçekten de, büyükse, gerçek dağılım yerel olarak Gauss olmayan bir şeydir ve yerel Gauss yaklaşımlarını kullanarak bu dağıtımı örneklemeye çalışma stratejisinin tamamını sorgulamak gerekir.Ax01Axp

Ax01Axp=I+QDQ,
rr

Düşük seviye faktörleri ve ile bulunabilir randomize SVD matris uygulanarak veya Lanczos için farklı vektörler, her bir uygulama olan bir grafik gerektirir Laplacian çözümü. Bu nedenle, bu düşük dereceli faktörleri elde etmek için yapılan genel çalışma .QD

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

Bilmek , belirleyici oranı daha sonra D=diag(d1,d2,,dr)

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

Bu düşük dereceli determinant rasyon hesaplama teknikleri, Sismik İnversiyon Uygulamasında Büyük Ölçekli İstatistiksel Ters Problemler için Stokastik Newton MCMC Metodunda bulunabilir , Martin ve ark. (2012). Bu makalede süreklilik problemlerine uygulanmaktadır, bu yüzden "grafik" 3D uzayda bir ızgaradır ve Laplacian grafiği gerçek Laplacian matrisidir. Ancak, tüm teknikler genel grafik Laplacians için geçerlidir. Muhtemelen bu tekniği şimdiye kadar genel grafiklere uygulayan başka makaleler var (uzantı önemsiz ve temelde yazdıklarım).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.