Dynamic and Distributed Algorithms for Sampling from Gibbs Distributions Yitong Yin Nanjing University
Gibbs Distribution G = ( V , E ) • � spin states q ≥ 2 • each � , distribution � v ∈ V b v : [ q ] → [0,1] v b v e A e : [ q ] 2 → [0,1] A e • each � , symmetric � e ∈ E ∀ configuration � σ ∈ [ q ] V : ∏ A e ( σ u , σ v ) ∏ b v ( σ v ) w ( σ ) = e ={ u , v } ∈ E v ∈ V Z = ∑ μ ( σ ) = w ( σ ) Gibbs distribution: � where � w ( σ ) Z σ ∈ [ q ] V
Dynamic Sampling G ′ � = ( V , E ′ � ) G = ( V , E ) v b ′ � v b v update v A ′ � e e A e e dynamic sampling algorithm : X ∼ μ X ′ � ∼ μ ′ � with cost that depends on | 𝚟𝚚𝚎𝚋𝚞𝚏 | ≜ # changed vertices and edges
Dynamic Sampling G ′ � = ( V , E ′ � ) G = ( V , E ) v b ′ � v b v update v A ′ � e e A e e dynamic sampling algorithm : X ∼ μ X ′ � ∼ μ ′ � ˜ O ( | 𝚟𝚚𝚎𝚋𝚞𝚏 | ) with cost | 𝚟𝚚𝚎𝚋𝚞𝚏 | ≜ # changed vertices and edges
� � Dynamic Sampling empty graph � ( V , ∅ ) G = ( V , E ) v b v update e A e dynamic sampling algorithm : � X (0) ∼ ⊕ v b v X ∼ μ ˜ O ( | 𝚟𝚚𝚎𝚋𝚞𝚏 | ) dynamic sampling ⟹ ˜ O ( | E | ) static sampling
A Moser-Tardos style algorithm [Feng, Vishnoi, Y. ’19] ∏ A e ( σ u , σ v ) ∏ b v ( σ v ) μ ( σ ) ∝ Gibbs distribution: � e ={ u , v } ∈ E v ∈ V current sample: � X ∼ μ R ← { v ∈ V ∣ v is updated or incident to updated e } ; while do R ≠ ∅ for every , resample independently; v ∈ R X v ∼ b v every internal accepts ind. w.p. ; e = { u , v } ⊆ R A e ( X u , X v ) every boundary with u ∈ R , v ∉ R accepts ind. w.p. e = { u , v } A e ( X u , X v ) u , ⋅ ) ; u , X v ) min A e ( X 𝗉𝗆𝖾 X 𝗉𝗆𝖾 // : before resampling X u u A e ( X 𝗉𝗆𝖾 ⋃ R ← ; e e rejects
A Moser-Tardos style algorithm [Feng, Vishnoi, Y. ’19] ∏ A e ( σ u , σ v ) ∏ b v ( σ v ) μ ( σ ) ∝ Gibbs distribution: � e ={ u , v } ∈ E v ∈ V current sample: � X ∼ μ R ← { v ∈ V ∣ v is updated or incident to updated e } ; while do R ≠ ∅ for every , resample independently; v ∈ R X v ∼ b v every internal accepts ind. w.p. ; e = { u , v } ⊆ R A e ( X u , X v ) every boundary with u ∈ R , v ∉ R accepts ind. w.p. e = { u , v } ∝ A e ( X u , X v ) X 𝗉𝗆𝖾 // : before resampling u , X v ); X u u A e ( X 𝗉𝗆𝖾 ⋃ R ← ; e e rejects
Rejection Sampling ∏ A e ( σ u , σ v ) ∏ b v ( σ v ) μ ( σ ) ∝ Gibbs distribution: � e ={ u , v } ∈ E v ∈ V ( X ∣ R = ∅ ) ∼ μ Rejection sampling: for every v ∈ R , sample X v ∼ b v independently; every edge accepts independently w.p. ; e = { u , v } ∈ E A e ( X u , X v ) ⋃ R ← e e rejects
A Moser-Tardos style algorithm [Feng, Vishnoi, Y. ’19] ∏ A e ( σ u , σ v ) ∏ b v ( σ v ) μ ( σ ) ∝ Gibbs distribution: � e ={ u , v } ∈ E v ∈ V current sample: � X ∼ μ R ← { v ∈ V ∣ v is updated or incident to updated e } ; while do R ≠ ∅ for every , resample independently; v ∈ R X v ∼ b v every internal e = { u , v } ⊆ R accepts ind. w.p. ; A e ( X u , X v ) every boundary with u ∈ R , v ∉ R accepts ind. w.p. e = { u , v } ∝ A e ( X u , X v ) X 𝗉𝗆𝖾 // : before resampling u , X v ); X u u A e ( X 𝗉𝗆𝖾 ⋃ ; R ← e e rejects Partial Rejection Sampling (PRS): [Guo, Jerrum, Liu ’17]
� A heat-bath based algorithm [Feng, Guo, Y. ’19] ∏ A e ( σ u , σ v ) ∏ b v ( σ v ) μ ( σ ) ∝ Gibbs distribution: � e ={ u , v } ∈ E v ∈ V current sample: � X ∼ μ R ← { v ∈ V ∣ v is updated or incident to updated e } ; while do R ≠ ∅ constant factor pick a random ; u ∈ R depends only on 1 with probability do ∝ X R ∩ N ( u ) μ u ( X u ∣ X N ( u ) ) resample ; X u ∼ μ u ( ⋅ ∣ X N ( u ) ) heat-bath delete from ; a.k.a . Glauber dynamics u R Gibbs sampling else add all neighbors of to ; u R N ( u ) ≜ neighborhood of � u
� M-T dynamic sampler heat-bath dynamic sampler R ← { vertices affected by update } ; R ← { vertices affected by update } ; while do R ≠ ∅ while R ≠ ∅ do for every , resample independently; pick a random ; v ∈ R X v ∼ b v u ∈ R 1 every internal e = { u , v } ⊆ R accepts w.p. ; A e ( X u , X v ) with probability do ∝ every boundary with u ∈ R , v ∉ R accepts w.p. μ u ( X u ∣ X N ( u ) ) e = { u , v } ∝ A e ( X u , X v ) resample X u ∼ μ u ( ⋅ ∣ X N ( u ) ) ; u , X v ) ; A e ( X 𝗉𝗆𝖾 delete from ; u R ⋃ R ← ; else e e rejects add all neighbors of to ; u R chain: � ( X , R ) ⟶ ( X ′ � , R ′ � ) X ∈ [ q ] V configuration � X R X R R ⊆ V set � of “incorrect” vertices Conditional Gibbs property : μ X R R X R X R Given any � and � , the � always follows � . R X ∼ μ R = ∅ (marginal distribution on when � R X R � conditioned on � )
� Equilibrium Condition P chain: � ( x , R ) ⟶ ( y , R ′ � ) Conditional Gibbs property : μ X R R X R X R Given any � and � , the � always follows � . R X R X R σ ∈ [ q ] R , τ ∈ [ q ] R ′ � Fix any � . ∀ y ∈ [ q ] V y R ′ � = τ that � : R ′ � ( y R ′ � ) ∝ ∑ μ τ μ σ R ( x R ) ⋅ P (( x , R ), ( y , R ′ � )) x ∈ [ q ] V xR = σ
� M-T dynamic sampler heat-bath dynamic sampler R ← { vertices affected by update } ; R ← { vertices affected by update } ; while do R ≠ ∅ while R ≠ ∅ do for every , resample independently; pick a random ; v ∈ R X v ∼ b v u ∈ R 1 every internal e = { u , v } ⊆ R accepts w.p. ; A e ( X u , X v ) with probability do ∝ every boundary with u ∈ R , v ∉ R accepts w.p. μ u ( X u ∣ X N ( u ) ) e = { u , v } ∝ A e ( X u , X v ) resample X u ∼ μ u ( ⋅ ∣ X N ( u ) ) ; u , X v ) ; A e ( X 𝗉𝗆𝖾 delete from ; u R ⋃ R ← ; else e e rejects add all neighbors of to ; u R chain: � ( X , R ) ⟶ ( X ′ � , R ′ � ) Conditional Gibbs property : μ X R R X R X R Given any � and � , the � always follows � . R defined in [Feng, Vishnoi, Y. ’19] , also implicitly in [Guo, Jerrum ’18] • • satisfied invariantly by the M-T and heat-bath dynamic samplers ⟹ Las Vegas perfect samplers ( interruptible ) retrospectively, holds for Partial Rejection Sampling [Guo, Jerrum, Liu ’17] • and Randomness Recycler [Fill, Huber ’00]
� heat-bath dynamic sampler chain: � ( X , R ) ⟶ ( X ′ � , R ′ � ) R ← { vertices affected by update } ; while do R ≠ ∅ Conditional Gibbs property : pick a random u ∈ R ; 1 R X R with probability do ∝ Given any � and � , μ u ( X u ∣ X N ( u ) ) μ X R X R always follows � . resample X u ∼ μ u ( ⋅ ∣ X N ( u ) ) ; R delete from ; u R success case: else u add all neighbors of to ; R ′ � = R ∖ { u } u R X R X R ∼ μ X R X R invariant CGP: R depends only on � X R Bayes law μ X R ′ � = μ X R ′ � R ( X R ) 1 u ( X u ) filter ∝ Pr[ filter succeeds ] ∝ μ X N ( u ) μ X N ( u ) μ X R ( X u ) R ( X R ) ( X u ) u u invariant X R ∼ μ X R ′ � ⟹ X R ′ � ∼ μ X R ′ � + X u ∼ μ u ( ⋅ ∣ X N ( u ) ) CGP R ′ � R
� heat-bath dynamic sampler chain: � ( X , R ) ⟶ ( X ′ � , R ′ � ) R ← { vertices affected by update } ; while do R ≠ ∅ Conditional Gibbs property : pick a random u ∈ R ; 1 R X R with probability do ∝ Given any � and � , μ u ( X u ∣ X N ( u ) ) μ X R X R always follows � . resample X u ∼ μ u ( ⋅ ∣ X N ( u ) ) ; R delete from ; u R failure case: else u add all neighbors of to ; R ′ � = R ∪ N ( u ) u R X R X R ∼ μ X R X R invariant CGP: R all vertices whose spins are revealed are includes in � R ′ � invariant CGP: X R ′ � ∼ μ X R ′ � R ′ �
M-T dynamic sampler Efficiency Analysis: R ← { vertices affected by update } ; E [ H ( R ′ � ) ∣ R ] < H ( R ) while do R ≠ ∅ for every , resample independently; v ∈ R X v ∼ b v every internal e = { u , v } ⊆ R accepts w.p. ; A e ( X u , X v ) R set � ( or some potential of it ) every boundary with u ∈ R , v ∉ R accepts w.p. e = { u , v } ∝ A e ( X u , X v ) decays in expectation in u , X v ) ; A e ( X 𝗉𝗆𝖾 every step in the worst case ⋃ R ← ; e e rejects ∏ A e ( σ u , σ v ) ∏ Gibbs distribution: � b v ( σ v ) μ ( σ ) ∝ e ={ u , v } ∈ E v ∈ V min A e > 1 − 1 Δ � , where � is the max-degree • 4 Δ 1 e − 2 | β | > 1 − β Ising model with inverse temp. � : � • 2.221 Δ + 1 1 hardcore model with fugacity � λ < • 2 Δ − 1 X ′ � ∼ μ ′ � O ( Δ | 𝚟𝚚𝚎𝚋𝚞𝚏 | ) • � is returned within � resamples O ( Δ | E | ) • � time Las-Vegas perfect sampler
Recommend
More recommend