Monday April 28, 2014, at 16h30 in Celestijnenlaan 200A (auditorium 00.225)
Compaction of Probabilistic Logic Programs for Performant Inference
by Dimitar Shterionov (PhD student DTAI)
The probabilistic inference of current Probabilistic Logic Programming (PLP) systems uses (variations of) Weighted Model Counting (WMC). For this purpose a set of transformation steps which convert the input program into a suitable form is employed. The computational cost of each step depends mostly on the size and the complexity of the previous one. To be able to handle large-data probabilistic logic programs, typical for real-world problems, these steps need to be optimized. Usually, the first of these steps is to collect the proofs of a query (or a set of queries). The collected proofs represent a Boolean formula and often may share parts -- AND or OR clusters. Detecting and adequately removing these parts may decrease the size and the complexity of the collected proofs in such a way that the next step(s) can become much more performant. The common parts appear as patterns which represent the AND and OR clusters. Our work investigates a pattern detection and compaction approach which applies on the collected proofs. To facilitate the pattern detection and compaction we use an AND/OR graph representation of the Boolean formula of the collected proofs. Exploiting graph symmetry in addition to pattern detection further improves our method. Our approach is independent of the PLP system which employs it. We use ProbLog2 and MetaProbLog to show the applicability of our pattern compaction and detection approach. Our experimental results show that in most of the cases it is beneficial to use a compacted representation of the collected proofs.