Endre søk
RefereraExporteraLink to record
Permanent link

Direct link
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annet format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annet språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
Statically and Dynamically Delayed Sampling for Typed Probabilistic Programming Languages
KTH, Skolan för elektroteknik och datavetenskap (EECS), Datavetenskap, Programvaruteknik och datorsystem, SCS.ORCID-id: 0000-0001-9703-6912
Oracle, Stockholm, Sweden.ORCID-id: 0000-0003-3127-5640
Institut de Biologie de l'École Normale Supérieure, Paris, France.ORCID-id: 0000-0003-3340-5963
KTH, Skolan för elektroteknik och datavetenskap (EECS), Datavetenskap, Programvaruteknik och datorsystem, SCS.ORCID-id: 0000-0001-8457-4105
(engelsk)Manuskript (preprint) (Annet vitenskapelig)
Abstract [en]

Probabilistic programming languages (PPLs) make it possible to separate the concerns between probabilistic models and Bayesian inference algorithms. However, to make such inference efficient is technically very challenging, both in terms of execution time performance and inference accuracy. One successful optimization approach is the previously published work on dynamically delayed sampling. This runtime method makes use of analytical relations between random variables to reduce inference variance; however, tracking these relations introduces runtime overhead. Furthermore, implementing the dynamic approach in a statically typed language introduces type problems because delaying the sampling of random variables changes their types. Our work advances the state-of-the-art in two aspects. Firstly, to reduce the runtime overhead, we develop a compile-time version of delayed sampling. By incorporating optimization procedures during compilation, we eliminate the need for runtime relation tracking and consequent overhead. However, the compile-time version may not always be effective due to the program's possible dynamic behavior, such as stochastic branches, or the complexity of handling recursion. Secondly, we introduce constructs to implement dynamically delayed sampling in a statically typed universal PPL. Dynamically delayed sampling in statically typed languages is a viable optimization for complex Bayesian models, whereas simple models ought to be statically optimized. We evaluate both statically and dynamically delayed sampling on real-world examples, such as latent Dirichlet allocation and phylogenetic models, and implement the methods in a statically typed PPL, Miking CorePPL.

HSV kategori
Forskningsprogram
Datalogi
Identifikatorer
URN: urn:nbn:se:kth:diva-353280OAI: oai:DiVA.org:kth-353280DiVA, id: diva2:1897766
Forskningsfinansiär
Wallenberg AI, Autonomous Systems and Software Program (WASP)
Merknad

Accepted to the ACM SIGPLAN International Conference on Software Language Engineering 2024

QC 20240918

Tilgjengelig fra: 2024-09-15 Laget: 2024-09-15 Sist oppdatert: 2024-09-18bibliografisk kontrollert
Inngår i avhandling
1. Automated Optimizations for Inference in Probabilistic Programming Languages
Åpne denne publikasjonen i ny fane eller vindu >>Automated Optimizations for Inference in Probabilistic Programming Languages
2024 (engelsk)Licentiatavhandling, med artikler (Annet vitenskapelig)
Abstract [en]

Probabilistic programming languages (PPLs) provide users with an interface to write probabilistic models and leave the statistical inference to the compiler and runtime systems. Ideally, the purpose of PPLs is to provide a seamless inference interface that makes the model and the inference parts modular. Yet, the structure of the user-defined model affects inference accuracy and execution time. Users can utilize certain structures, such as conjugate prior relations or tree structures within a given model, to improve inference efficiency; however, manually utilizing these structures in a model is time-consuming and error-prone. Especially as the PPL's expressiveness increases, the models may become too complex to rewrite. This thesis tackles the problems related to the automation of optimizations, improving the execution time and the accuracy of the inference based on the structure of the model. Further, it aims to make these optimizations expressive enough to handle complex models written in universal PPLs. 

The scope of this thesis is to optimize Bayesian inference in universal PPLs. The three contributions presented propose automated optimization approaches to improving the inference accuracy and execution time while preserving the expressiveness of the optimized program. The first contribution considers dynamic delayed sampling, a runtime algorithm to reduce inference variance through analytical relationships between random variables. We develop a compile-time version of the delayed sampling algorithm to reduce execution overhead. The second contribution regards the design and implementation of dynamic delayed sampling in a statically typed universal PPL, Miking CorePPL. Integrating delayed sampling into a statically typed PPL requires introducing additional constructs to the language. The third contribution is related to the forward pass of belief propagation algorithm, an efficient inference algorithm on tree graphs. We propose an approach automating this forward pass of belief propagation in statically typed universal PPLs to optimize likelihood calculations by utilizing the tree structures in a model. We evaluate the proposed approaches on real-world problems, such as topic modeling and phylogenetic problems.

Abstract [sv]

Probabilistiska programmeringsspråk (PPS) ger användare ett gränssnitt för att skriva probabilistiska modeller och överlåta den statistiska inferensen till kompilatorn och runtime-systemen. Idealiskt sett är syftet med PPS att erbjuda ett sömlöst inferencesgränssnitt som gör modell- och inferensdelarna modulära. Dock påverkas inferensens noggrannhet och exekveringstid av strukturen hos den användardefinierade modellen. Användare kan utnyttja vissa strukturer, såsom konjugerade prior-relationer eller trädsstrukturer inom en given modell, för att förbättra inferensens effektivitet; men att manuellt använda dessa strukturer i en modell är tidskrävande och felbenäget. Speciellt när PPL uttrycksförmåga ökar, kan modellerna bli för komplexa för att skrivas om på detta sätt. Denna avhandling tar itu med problemen relaterade till automatisering av optimeringar, förbättring av exekveringstid och noggrannheten hos inferens baserat på modellens struktur. Vidare fokuseras hur dessa optimeringar kan göras tillräckligt uttrycksfulla för att hantera komplexa modeller skrivna i universella PPS.

Omfattningen av denna avhandling är att optimera Bayesiansk inferens i universella PPS. De tre bidragen som presenteras föreslår automatiserade optimeringsmetoder för att förbättra inferensens noggrannhet och exekveringstid samtidigt som uttrycksfullheten hos det optimerade programmet bevaras. Det första bidraget behandlar dynamisk fördröjd sampling, en runtime-algoritm för att minska inferensens varians genom att använda analytiska relationer mellan slumpmässiga variabler. Vi utvecklar en kompileringstid-version av den fördröjda samplingalgoritmen för att minska exekveringsomkostnad. Det andra bidraget gäller design och implementering av dynamisk fördröjd sampling i Miking CorePPL, som är ett statiskt typat universellt PPS. Att integrera fördröjd sampling i ett statiskt typat PPS kräver införande av ytterligare konstruktioner i språket. Det tredje bidraget är relaterat till framåtpasset av belief propagation-algoritmen, en effektiv inferensalgoritm på trädgrafer. Vi föreslår en metod för att automatisera detta framåtpass av belief propagation i statiskt typade universella PPS för att optimera sannolikhetsberäkningar genom att utnyttja trädsstrukturer i en modell. Vi utvärderar de föreslagna metoderna på verkliga problem, såsom ämnesmodellering och fylogenetiska problem.

sted, utgiver, år, opplag, sider
Stockholm: KTH Royal Institute of Technology, 2024. s. vii, 29
Serie
TRITA-EECS-AVL ; 2024:73
Emneord
PPL, Bayesian, Inference, Efficiency, PPS, Bayesian, Inferensen, Effektiv
HSV kategori
Forskningsprogram
Datalogi
Identifikatorer
urn:nbn:se:kth:diva-353310 (URN)978-91-8106-061-4 (ISBN)
Presentation
2024-10-14, https://kth-se.zoom.us/j/66846620144, Room Ada, Electrum, Kistagangen 16, Stockholm, 13:00 (engelsk)
Opponent
Veileder
Forskningsfinansiär
Wallenberg AI, Autonomous Systems and Software Program (WASP)
Merknad

QC 20240918

Tilgjengelig fra: 2024-09-18 Laget: 2024-09-16 Sist oppdatert: 2024-09-23bibliografisk kontrollert

Open Access i DiVA

fulltext(4507 kB)108 nedlastinger
Filinformasjon
Fil FULLTEXT01.pdfFilstørrelse 4507 kBChecksum SHA-512
62c4bab70cbbd17f267d591f83c05b592b9794029bb90c94e7ff9e0b442bfc8017e476546eec973ebba0785be4a8b5c28a890cb236acd4ad52178297e7eafd70
Type fulltextMimetype application/pdf

Person

Çaylak, GizemLundén, DanielBroman, David

Søk i DiVA

Av forfatter/redaktør
Çaylak, GizemLundén, DanielSenderov, ViktorBroman, David
Av organisasjonen

Søk utenfor DiVA

GoogleGoogle Scholar
Totalt: 109 nedlastinger
Antall nedlastinger er summen av alle nedlastinger av alle fulltekster. Det kan for eksempel være tidligere versjoner som er ikke lenger tilgjengelige

urn-nbn

Altmetric

urn-nbn
Totalt: 242 treff
RefereraExporteraLink to record
Permanent link

Direct link
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annet format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annet språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf