AIDCMLApr 27, 2016

Probabilistic Graphical Models on Multi-Core CPUs using Java 8

arXiv:1604.07990v116 citationsHas Code
Originality Synthesis-oriented
AI Analysis

This work addresses software design challenges for researchers and practitioners implementing parallel PGM algorithms, but it is incremental as it focuses on applying existing Java 8 features to known methods.

The paper tackles the problem of developing parallel computational intelligence algorithms for probabilistic graphical models on multi-core CPUs using Java 8, resulting in efficient data structures and parallel processing techniques that show merits in experimental analysis with an open-source toolbox.

In this paper, we discuss software design issues related to the development of parallel computational intelligence algorithms on multi-core CPUs, using the new Java 8 functional programming features. In particular, we focus on probabilistic graphical models (PGMs) and present the parallelisation of a collection of algorithms that deal with inference and learning of PGMs from data. Namely, maximum likelihood estimation, importance sampling, and greedy search for solving combinatorial optimisation problems. Through these concrete examples, we tackle the problem of defining efficient data structures for PGMs and parallel processing of same-size batches of data sets using Java 8 features. We also provide straightforward techniques to code parallel algorithms that seamlessly exploit multi-core processors. The experimental analysis, carried out using our open source AMIDST (Analysis of MassIve Data STreams) Java toolbox, shows the merits of the proposed solutions.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes