Title
kProbLog: an algebraic Prolog for machine learning.
Abstract
We introduce kProbLog as a declarative logical language for machine learning. kProbLog is a simple algebraic extension of Prolog with facts and rules annotated by semi-ring labels. It allows to elegantly combine algebraic expressions with logic programs. We introduce the semantics of kProbLog, its inference algorithm, its implementation and provide convergence guarantees. We provide several code examples to illustrate its potential for a wide range of machine learning techniques. In particular, we show the encodings of state-of-the-art graph kernels such as Weisfeiler-Lehman graph kernels, propagation kernels and an instance of graph invariant kernels, a recent framework for graph kernels with continuous attributes. However, kProbLog is not limited to kernel methods and it can concisely express declarative formulations of tensor-based algorithms such as matrix factorization and energy-based models, and it can exploit semirings of dual numbers to perform algorithmic differentiation. Furthermore, experiments show that kProbLog is not only of theoretical interest, but can also be applied to real-world datasets. At the technical level, kProbLog extends aProbLog (an algebraic Prolog) by allowing multiple semirings to coexist in a single program and by introducing meta-functions for manipulating algebraic values.
Year
DOI
Venue
2017
https://doi.org/10.1007/s10994-017-5668-y
Machine Learning
Keywords
Field
DocType
Algebraic Prolog,Kernel programming,Graph kernels,Machine learning
Algebraic number,Graph property,Computer science,Inference,Theoretical computer science,Prolog,Algebraic extension,Artificial intelligence,Algebraic graph theory,Kernel method,Algebraic expression,Machine learning
Journal
Volume
Issue
ISSN
106
12
0885-6125
Citations 
PageRank 
References 
0
0.34
28
Authors
3
Name
Order
Citations
PageRank
Francesco Orsini1165.82
Paolo Frasconi22984368.70
Luc De Raedt35481505.49