kProlog is a simple algebraic extension of Prolog with factsand rules annotated with semiring labels. We propose kProlog as a languagefor learning with kernels. kProlog allows to elegantly specify systemsof algebraic expressions on databases. We propose some code examplesof gradually increasing complexity, we give a declarative specificationof some matrix operations and an algorithm to solve linear systems.Finally we show the encodings of state-of-the-art graph kernels such asWeisfeiler-Lehman graph kernels, propagation kernels and an instance ofGraph Invariant Kernels (GIKs), a recent framework for graph kernelswith continuous attributes. The number of feature extraction schemas,that we can compactly specify in kProlog, illustrates its potential formachine learning applications.
展开▼