Vaš brskalnik ne omogoča JavaScript!
JavaScript je nujen za pravilno delovanje teh spletnih strani. Omogočite JavaScript ali pa uporabite sodobnejši brskalnik.
Repozitorij Univerze v Ljubljani
Nacionalni portal odprte znanosti
Odprta znanost
DiKUL
slv
|
eng
Iskanje
Brskanje
Novo v RUL
Kaj je RUL
V številkah
Pomoč
Prijava
Podrobno
Parallel computation in the Stan probabilistic programming language
ID
ČEŠNOVAR, ROK
(
Avtor
),
ID
Bulić, Patricio
(
Mentor
)
Več o mentorju...
,
ID
Štrumbelj, Erik
(
Komentor
)
PDF - Predstavitvena datoteka,
prenos
(3,21 MB)
MD5: BF6ECA4DC2B116FEAA6E94ED74AAC782
Galerija slik
Izvleček
The field of Bayesian statistics has experienced a major boom in recent years with tools based on Hamiltonian Monte Carlo. These tools are computationally demanding, as they have to calculate a large number of gradients, most often with a large amount of data and a large number of parameters. Among the more popular tools for Bayesian inference, Stan is considered the most tailored to statisticians, as it has a very expressive and flexible language. Prior to the 2.19 release, Stan did not have support for parallel computing on graphics processing units (GPU). In this work, we present how we developed GPU support for Stan. We have achieved this by upgrading the Stan Math library so that it allows gradients to be calculated on the GPU using OpenCL. The implementation we made is extendable and easy to maintain, which is crucial when implementing support for a mature tool like Stan. In addition to the Math library, we modified the Stan-to-C++ transpiler to efficiently use the new support in the Stan Math library, and added a scheduling algorithm that ensures the fastest device is selected. With the upgrades in the CmdStan and by creating CmdStanR, we brought the presented work closer to a wider range of users. The work shows that both Stan Math functions as well as Stan models run significantly faster using a GPU, with speedups up to 60. With these new features Stan is now on par with the other currently widely used tools for Bayesian inference, where users have to focus more on the computational aspects of their implementation.
Jezik:
Angleški jezik
Ključne besede:
graphics processing units
,
OpenCL
,
automatic differentiation
,
Bayesian inference
Vrsta gradiva:
Doktorsko delo/naloga
Tipologija:
2.08 - Doktorska disertacija
Organizacija:
FRI - Fakulteta za računalništvo in informatiko
Leto izida:
2022
PID:
20.500.12556/RUL-136539
COBISS.SI-ID:
108349187
Datum objave v RUL:
10.05.2022
Število ogledov:
1782
Število prenosov:
140
Metapodatki:
Citiraj gradivo
Navadno besedilo
BibTeX
EndNote XML
EndNote/Refer
RIS
ABNT
ACM Ref
AMA
APA
Chicago 17th Author-Date
Harvard
IEEE
ISO 690
MLA
Vancouver
:
ČEŠNOVAR, ROK, 2022,
Parallel computation in the Stan probabilistic programming language
[na spletu]. Doktorska disertacija. [Dostopano 26 april 2025]. Pridobljeno s: https://repozitorij.uni-lj.si/IzpisGradiva.php?lang=slv&id=136539
Kopiraj citat
Objavi na:
Sekundarni jezik
Jezik:
Slovenski jezik
Naslov:
Vzporedno računanje v verjetnostnem programskem jeziku Stan
Izvleček:
Področje Bayesove statistike je v zadnjih letih doživelo velik razcvet z orodji, ki temeljijo na algoritmu Hamiltonskega Monte Carla. Ta orodja so računsko zahtevna, saj morajo med delovanjem izračunati veliko število gradientov, največkrat pri veliko podatkih in velikem številu parametrov. Med bolj popularnimi orodji za Bayesovo sklepanje je Stan, ki velja za statistikom najbolj prijazno, saj ima zelo ekspresiven in fleksibilen jezik. Stan pred različico 2.19 ni imel podpore za vzporedno računanje na grafičnih procesnih enotah (GPE). V tem delu predstavimo razvoj le-te. Uspšeno implementacijo podpore za GPE smo dosegli z nadgradnjo matematične knjižnice Stan Math tako, da omogoča računanje gradientov na GPE s pomočjo ogrodja OpenCL-a. Implementirana rešitev je razširljiva ter omogoča enostavno vzdrževanje, kar je ključnega pomena pri implementaciji podpore za zrelo orodje, kot je Stan. Poleg knjižnice smo razvili novo funkcionalnost za translator iz jezika Stan v C++, da je zmožen smiselno uporabiti novo podporo v knjižnici Stan Math, algoritem za avtomatsko izbiro pa poskrbi, da izbere najhitrejšo napravo brez posredovanja uporabnika. Z nadgradnjami v vmesniku CmdStan in razvojem novega vmesnika CmdStanR pa smo podporo za GPE približali široki množici uporabnikov. Rezultati kažejo, da se tako novo razvite funkcije kot tudi modeli, ki jih uporabljajo, na GPE izvajajo občutno hitreje, tudi do 60-krat. S tem delom je Stan po zmogljivosti dohitel ostala trenutno široko uporabljena orodja za Bayesovo statistiko, kjer morajo uporabniki sami poskrbeti za učinkovito izvajanje.
Ključne besede:
grafične procesne enote
,
OpenCL
,
avtomatsko odvajanje
,
Bayesovo sklepanje
Podobna dela
Podobna dela v RUL:
Iščem podobna dela...
Podobna dela v drugih slovenskih zbirkah:
Nazaj