Blang: Bayesian Modeling of General Data StructuresCorrectness: Bayesian inference software is notoriously difficult to implement. An example from the tip of the iceberg is shown in Geweke (2004), which identifies software bugs and erroneous results in earlier published studies. We address this issue using a marriage of statistical theory and software engineering methodology, such as compositionality and unit testing.Ease of use: Blang uses a familiar BUGS-like syntax and it is designed to be integrated well in modern data science workflows (input in tidy format, Wickham 2014, samples output in tidy format).Generality: As a programming language, Blang is Turing-complete and equipped with an open type system, as well as facilities to quickly develop and test sampling algorithms for new types. By an open type system, we mean that the set of types is not limited to integers and real numbers, and can be arbitrary classes. Blang does not fully automate the process of posterior sampling from user-defined types but instead greatly facilitates the development, composition and sharing of custom sampling algorithms. Computational scalability:The language is designed to ensure that state-of-the-art Monte Carlo methods can be utilized. In particular, we made certain trade-offs to ensure that a well-behaved continuum of distributions can be automatically created. This is complemented with methods that extend existing PPL strategies to the combinatorial space, for example a code scoping analysis to discover sparsity patterns with arbitrary types, as well as built-in support for parallelization to arbitrary numbers of cores. License, source, version and documentation availabilityBlang is free and open source. The language and SDK are available under a permissive BSD 2-Clause license. The relevant GitHub repositories are linked at https://github. com/UBC-Stat-ML/blangDoc. Online documentation is available at https://www.stat.ubc. ca/~bouchard/blang/, including Javadoc pages at https://www.stat.ubc.ca/~bouchard/ blang/Javadoc.html. TutorialThis section aims to introduce readers to Blang by presenting a minimal working example. We begin with instructions for performing inference on a simple model using the commandline interface (CLI). Realistic applications are demonstrated in Sections 6 and 9. Advanced tutorials can be found in Appendix A. Installing Blang's command-line interfaceWe provide instructions here for installing and using Blang via the CLI. Alternative Blang interfaces include an integrated development environment (IDE) as well as a Web interface, both detailed in Section 10.1. Instructions are also available from the documentation website (https://www.stat.ubc.ca/~bouchard/blang/) under the link Tools. Additionally, an R (R Core Team 2022) and Python (van Rossum et al. 2011) interface to Blang are currently under development. 1 8 See https://github.com/UBC-Stat-ML/JSSBlangCode/blob/master/reproduction_material/example/ jss/gmm/MixtureModel.bl. Complete and commented implementations in this section are available in the...
Recently developed spatial proteomics technologies can profile the expression of dozens of proteins in thousands of single cells in-situ. This has created the opportunity to move beyond quantifying the composition of cell types in tissue, and instead begin probing the spatial relationships between cells. A prerequisite to such analysis is to first cluster the data and annotate the populations represented by the clusters. However, current methods for clustering data from these assays only consider the expression values of cells and ignore the spatial context. Furthermore, existing approaches do not account for prior information about the expected cell populations in a sample. To address these shortcomings, we developed SpatialSort, a spatially aware Bayesian clustering approach that allows for the incorporation of prior biological knowledge. A novel feature of our method is the ability to account for the affinities of cells of different types to neighbour in space. In addition, by incorporating prior information about expected cell populations, SpatialSort is able to simultaneously improve clustering accuracy and perform automated annotation of clusters. Using synthetic and real data we show that SpatialSort outperforms state of the art methods in terms of clustering accuracy. We further demonstrate how SpatialSort can perform label transfer between spatial and non-spatial modalities through the analysis of a real world diffuse large B-cell lymphoma dataset.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.