<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>EM over Binary Decision Diagrams for Probabilistic Logic Programs</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Elena Bellodi</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fabrizio Riguzzi</string-name>
          <email>fabrizio.riguzzig@unife.it</email>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>44122 Ferrara</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Recently much work in Machine Learning has concentrated on representation languages able to combine aspects of logic and probability, leading to the birth of a whole eld called Statistical Relational Learning. In this paper we present a technique for parameter learning targeted to a family of formalisms where uncertainty is represented using Logic Programming techniques - the so-called Probabilistic Logic Programs such as ICL, PRISM, ProbLog and LPAD. Since their equivalent Bayesian networks contain hidden variables, an EM algorithm is adopted. In order to speed the computation, expectations are computed directly on the Binary Decision Diagrams that are built for inference. The resulting system, called EMBLEM for \EM over Bdds for probabilistic Logic programs E cient Mining", has been applied to a number of datasets and showed good performances both in terms of speed and memory usage.</p>
      </abstract>
      <kwd-group>
        <kwd>Statistical Relational Learning</kwd>
        <kwd>Probabilistic Logic Programming</kwd>
        <kwd>Distribution Semantics</kwd>
        <kwd>Logic Programs with Annotated Disjunctions</kwd>
        <kwd>Expectation Maximization</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Machine Learning has seen the development of the eld of Statistical Relational
Learning (SRL) where logical-statistical languages are used in order to e
ectively learn in complex domains involving relations and uncertainty. They have
been successfully applied in social networks analysis, entity recognition,
collective classi cation and information extraction, to name a few.</p>
      <p>
        Similarly, a large number of works in Logic Programming have attempted
to combine logic and probability, among which the distribution semantics [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]
is a prominent approach. This semantics underlies for example PRISM [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ],
the Independent Choice Logic [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], Logic Programs with Annotated
Disjunctions (LPADs) [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ], ProbLog [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and CP-logic [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. The approach is particularly
appealing because e cient inference algorithms appeared [
        <xref ref-type="bibr" rid="ref17 ref4">4,17</xref>
        ], which adopt
Binary Decision Diagrams (BDDs).
      </p>
      <p>
        In this paper we present the EMBLEM system for \EM over Bdds for
probabilistic Logic programs E cient Mining" [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] that learns parameters of
probabilistic logic programs under the distribution semantics by using an Expectation
Maximization (EM) algorithm. Such an algorithm is a popular tool in
statistical estimation problems involving incomplete data: it is an iterative method to
estimate some unknown parameters of a model, given a dataset where some
of the data is missing. The aim is to nd maximum likelihood or maximum a
posteriori (MAP) estimates of [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. EM alternates between performing an
expectation (E) step, where the missing data are estimated given the observed data
and current estimate of the model parameters, and a maximization (M) step,
which computes the parameters maximizing the likelihood of the data given the
su cient statistics on the data computed in the E step. The translation of the
probabilistic programs into graphical models requires the use of hidden variables
(see Section 3) and therefore of EM: the main characteristic of our system is the
computation of the values of expectations using BDDs.
      </p>
      <p>
        Since there are transformations with linear complexity that can convert a
program in a language under the distribution semantics into the others [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ],
we will use LPADs for their general syntax. EMBLEM has been tested on the
IMDB, Cora and UW-CSE datasets and compared with RIB [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], LeProbLog [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ],
Alchemy [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and CEM, an implementation of EM based on [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ].
      </p>
      <p>The paper is organized as follows. Section 2 presents LPADs and Section
3 describes EMBLEM. Section 4 discusses related works. Section 5 shows the
results of the experiments performed and Section 6 concludes the paper.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Logic Programs with Annotated Disjunctions</title>
      <p>
        Formally a Logic Program with Annotated Disjunctions [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] consists of a nite
set of annotated disjunctive clauses. An annotated disjunctive clause Ci is of the
form hi1 : i1; : : : ; hini : ini : bi1; : : : ; bimi . In such a clause hi1; : : : hini are
logical atoms and bi1; : : : ; bimi are logical literals, i1; : : : ; ini are real numbers
in the interval [0; 1] such that Pkn=i1 ik 1. bi1; : : : ; bimi is called the body and
is indicated with body(Ci). Note that if ni = 1 and i1 = 1 the clause
corresponds to a non-disjunctive clause. If Pkn=i1 ik &lt; 1, the head of the annotated
disjunctive clause implicitly contains an extra atom null that does not appear
in the body of any clause and whose annotation is 1 Pkn=i1 ik. We denote by
ground(T ) the grounding of an LPAD T .
      </p>
      <p>An atomic choice is a triple (Ci; j ; k) where Ci 2 T , j is a substitution
that grounds Ci and k 2 f1; : : : ; nig. (Ci; j ; k) means that, for the ground
clause Ci j , the head hik was chosen. In practice Ci j corresponds to a random
variable Xij and an atomic choice (Ci; j ; k) to an assignment Xij = k. A set of
atomic choices is consistent if (C; ; i) 2 ; (C; ; j) 2 ) i = j, i.e., only one
head is selected for a ground clause. A composite choice is a consistent set of
atomic choices. The probability P ( ) of a composite choice is the product of
the probabilities of the individual atomic choices, i.e. P ( ) = Q(Ci; j;k)2 ik.</p>
      <p>A selection is a composite choice that, for each clause Ci j in ground(T ),
contains an atomic choice (Ci; j ; k). We denote the set of all selections of a
program T by ST . A selection identi es a normal logic program w de ned
as w = f(hik body(Ci)) j j(Ci; j ; k) 2 g. w is called a world of T . Since
selections are composite choices we can assign a probability to possible worlds:
P (w ) = P ( ) = Q(Ci; j;k)2 ik.</p>
      <p>We consider only sound LPADs, in which every possible world has a total
well-founded model. In the following we write w j= Q to mean that the query
Q is true in the well-founded model of the program w .</p>
      <p>The probability of a query Q according to an LPAD T is given by
P (Q) =</p>
      <p>X
2E(Q)</p>
      <p>P ( )
(1)
where we de ne E(Q) as f 2 ST ; w j= Qg, the set of selections corresponding
to worlds where the query is true.</p>
      <p>To reduce the computational cost of answering queries in our experiments,
random variables can be directly associated to clauses rather than to their ground
instantiations: atomic choices then take the form (Ci; k), meaning that head hik
is selected from program clause Ci, i.e., that Xi = k.</p>
      <p>Example 1. The following LPAD T encodes a very simple model of the
development of an epidemic or pandemic:</p>
      <p>C1 = epidemic : 0:6; pandemic : 0:3 : f lu(X); cold:
C2 = cold : 0:7:
C3 = f lu(david):</p>
      <p>C4 = f lu(robert):
Clause C1 has two groundings, C1 1 with 1 = fX=davidg and C1 2 with 2 =
fX=robertg, so there are two random variables X11 and X12; C2 has only one
grounding that is associated to the variable X21. X11 and X12 have three values
since C1 has three head atoms (epidemic, pandemic, null); similarly X21 has
two values since C2 has two head atoms (cold, null).</p>
      <p>
        The worlds in which a query is true can be represented using a Multivalued
Decision Diagram (MDD) [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ]. An MDD represents a function f (X) taking Boolean
values on a set of multivalued variables X by means of a rooted graph that
has one level for each variable. Each node is associated to the variable of its
level and has one child for each possible value of the variable. The leaves store
either 0 or 1. Given values for all the variables X, we can compute the value
of f (X) by traversing the graph starting from the root and returning the value
associated to the leaf that is reached. A MDD can be used to represent the set
E(Q) by considering the multivalued variables Xij s associated to the Ci j s of
ground(T ). Xij has values f1; : : : ; nig and the atomic choice (Ci; j ; k)
corresponds to the propositional equation Xij = k. If we represent with an MDD the
function f (X) = W 2E(Q) V(Ci; j;k)2 Xij = k, then the MDD will have a path
to a 1-leaf for each world where Q is true. While building MDDs, simpli cation
operations can be applied that delete or merge nodes. Merging is performed
when the diagram contains two identical sub-diagrams, while deletion is
performed when all arcs from a node point to the same node. In this way a reduced
MDD is obtained with respect to a Multivalued Decision Tree (MDT), i.e., a
MDD in which every node has a single parent, all the children belong to the
level immediately below and all the variables have at least one node. For
example, the reduced MDD corresponding to the query epidemic from Example
1 is shown in Figure 1(a). The labels on the edges represent the values of the
variable associated to the node.
      </p>
      <p>X11
X12
X21
2</p>
      <p>3
1
1
kkkkkkk1kkkkkk 3
1
1 TTTTTTT2TTTTTT</p>
      <p>2
(a) MDD.</p>
      <p>0</p>
      <p>Y V T R O L
0</p>
      <p>It is often unfeasible to nd all the worlds where the query is true so inference
algorithms nd instead explanations for it, i.e. composite choices such that the
query is true in all the worlds whose selections are a superset of them.
Explanations however, di erently from possible worlds, are not necessarily mutually
exclusive with respect to each other, but exploiting the fact that MDDs split
paths on the basis of the values of a variable and the branches are mutually
disjoint so a dynamic programming algorithm can be applied for computing the
probability.</p>
      <p>Most packages for the manipulation of decision diagrams are however
restricted to work on Binary Decision Diagrams, i.e., decision diagrams where all
the variables are Boolean. A node n in a BDD has two children: the 1-child,
indicated with child1(n), and the 0-child, indicated with child0(n). The 0-branch,
the one going to the 0-child, is drawn with a dashed line.</p>
      <p>
        To work on MDDs with a BDD package we must represent multivalued
variables by means of binary variables. For a multivalued variable Xij ,
corresponding to ground clause Ci j , having ni values, we use ni 1 Boolean variables
Xij1; : : : ; Xijni 1 and we represent the equation Xij = k for k = 1; : : : ni 1
by means of the conjunction Xij1 ^ Xij2 ^ : : : ^ Xijk 1 ^ Xijk, and the
equation Xij = ni by means of the conjunction Xij1 ^ Xij2 ^ : : : ^ Xijni 1. Figure
1(b) shows the reduced BDD corresponding to the MDD in Figure 1(a). BDDs
can be used for computing the probability of queries by associating to each
Boolean variable Xijk a parameter ik that represents P (Xijk = 1). If we
dene g(i) = fjj j is a substitution grounding Cig then P (Xijk = 1) = ik for all
j 2 g(i). The parameters are obtained from those of multivalued variables in
this way:
i1 =
EMBLEM applies the algorithm for performing EM over BDDs, proposed in
[
        <xref ref-type="bibr" rid="ref10 ref26 ref8 ref9">26,9,10,8</xref>
        ], to the problem of learning the parameters of an LPAD. EMBLEM
takes as input a number of goals that represent the examples and for each one
generates the BDD encoding its explanations. The examples are organized in
a set of interpretations (sets of ground facts) each describing a portion of the
domain of interest. The queries correspond to ground atoms in an
interpretation whose predicate has been indicated as \target" by the user. The
predicates can be treated as closed-world or open-world. In the rst case the body
of clauses is resolved only with facts in the interpretation, in the second case
it is resolved both with facts in the interpretation and with clauses in the
theory. If the last option is set and the theory is cyclic, we use a depth bound on
SLD-derivations to avoid going into in nite loops, as proposed by [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Given the
program containing only the clauses C1 and C2 from Example 1 and the
interpretation fepidemic; f lu(david); f lu(robert)g, we obtain the BDD in Figure 1(b)
that represents the query epidemic. A value of 1 for the Boolean variables X111
and X121 means that, for the ground clauses C1 1 and C1 2, the head h11 =
epidemic is chosen, regardless of the other variables for the clause (X112, X122)
that are in fact omitted from the diagram.
      </p>
      <p>Then EMBLEM enters the EM cycle, in which the steps of expectation and
maximization are repeated until the log-likelihood of the examples reaches a local
maximum. The necessity of exploiting EM depends on the fact that, to determine
the parameters ik, the number of times that a head hik has been chosen is
required. The information about which selection was used in the derivation of a
goal is unknown, so the random variables are hidden and we compute expected
counts. For a single example Q:
{ Expectation: computes E[cik0jQ] and E[cik1jQ] for all rules Ci and k =
1; : : : ; ni 1, where cikx is the number of times a variable Xijk takes value x
for x 2 f0; 1g, with j in g(i). E[cikxjQ] is given by Pj2g(i) P (Xijk = xjQ):
{ Maximization: computes ik for all rules Ci and k = 1; : : : ; ni 1.
ik =</p>
      <p>E[cik1jQ]
E[cik0jQ] + E[cik1jQ]
(2)
If we have more than one example the contributions of each example simply sum
up when computing E[cijx].</p>
      <p>P (Xijk = xjQ) is given by P (Xijk = xjQ) = P (Xijk=x;Q) with</p>
      <p>P (Q)
P (Xijk = x; Q) = X P (Q; Xijk = x; )
where P (Xijk = 1j ) = 1 if (Ci; j; k) 2 for k = 1; : : : ; ni 1 and 0 otherwise.</p>
      <p>Since there is a one to one correspondence between the possible worlds where
Q is true and the paths to a 1 leaf in a Binary Decision Tree (a MDT with binary
variables),
where is a path, and if corresponds to , then P (Xijk = xj )=P (Xijk = xj ).
R(Q) is the set of paths in the BDD for query Q that lead to a 1 leaf, d is an
edge of and (d) is the probability associated to the edge: if d is the 1-branch
from a node associated to a variable Xijk, then (d) = ik, if d is the 0-branch
from a node associated to a variable Xijk, then (d) = 1 ik.</p>
      <p>
        Now consider a BDT in which only the merge rule is applied, fusing together
identical sub-diagrams. The resulting diagram, that we call Complete Binary
Decision Diagram (CBDD), is such that every path contains a node for every
level. For a CBDD, P (Xijk = x; Q) can be further expanded as
where (Xijk = x) 2 means that contains an x-edge from a node associated
to Xijk. We can then write
where N (Q) is the set of nodes of the CBDD, v(n) is the variable associated to
node n, Rn(Q) is the set containing the paths from the root to n and Rn(Q; x)
is the set of paths from n to the 1 leaf through its x-child.
where ikx is ik if x=1 and (1 ik) if x=0. F (n) is the forward probability [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ],
the probability mass of the paths from the root to n, while B(n) is the backward
probability [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], the probability mass of paths from n to the 1 leaf. If root is the
root of a tree for a query Q then B(root) = P (Q).
      </p>
      <p>The expression F (n)B(childx(n)) ikx represents the sum of the probabilities
of all the paths passing through the x-edge of node n and is indicated with ex(n).
Thus
For the case of a BDD, i.e., a diagram obtained by applying also the deletion rule,
Formula 3 is no longer valid since also paths where there is no node associated to
Xijk can contribute to P (Xijk = x; Q). These paths might have been obtained
from a BDD having a node m associated to variable Xijk that is a descendant
of node n along the 0-branch and whose outgoing edges both point to child0(n).
The correction of formula (3) to take into account this aspect is applied in the
Expectation step.</p>
      <p>EMBLEM's main procedure consists of a cycle in which the procedures
Expectation and Maximization are repeatedly called. Procedure Expectation
returns the log likelihood of the data that is used in the stopping criterion:
EMBLEM stops when the di erence between the log likelihood of the current
iteration and the one of the previous iteration drops below a threshold or when
this di erence is below a fraction of the current log likelihood.</p>
      <p>Procedure Expectation takes as input a list of BDDs, one for each example,
and computes the expectations for each one, i.e. P (Xijk = x; Q) for all variables
Xijk in the BDD and values x 2 f0; 1g. In the procedure we use x(i; k) to
indicate Pj2g(i) P (Xijk = x; Q). Expectation rst calls GetForward and
GetBackward that compute the forward, the backward probability of nodes
and x(i; k) for non-deleted paths only. Then it updates x(i; k) to take into
account deleted paths. The expectations are updated in this way: for all rules i
and for k = 1 to ni 1, E[cikx] = E[cikx] + x(i; k)=P (Q).</p>
      <p>Procedure Maximization computes the parameters values for the next EM
iteration, as speci ed in (2).</p>
      <p>Procedure GetForward traverses the diagram one level at a time starting
from the root level, where F(root)=1, and for each node n it computes its
contribution to the forward probabilities of its children. Then the forward probabilities
of both children are updated in this way: F (childx(node)) = F (childx(node)) +
F (node) ikx.</p>
      <p>Function GetBackward computes the backward probability of nodes by
traversing recursively the tree from the leaves to the root. When the calls of
GetBackward for both children of a node n return, we have all the information
that is needed to compute the ex values and the value of x(i; k) for non-deleted
paths. An array &amp; is used here to store the contributions of the deleted paths by
starting from the root level and accumulating &amp;(l) for the various levels l.</p>
      <p>
        A fully detailed description of EMBLEM together with an example of its
execution can be found in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>Related Works</title>
      <p>
        Our work has close connection with various other works. [
        <xref ref-type="bibr" rid="ref10 ref9">9,10</xref>
        ] proposed an EM
algorithm for learning the parameters of Boolean random variables given
observations of the values of a Boolean function over them, represented by a BDD.
EMBLEM is an application of that algorithm to probabilistic logic programs.
Independently, also [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] proposed an EM algorithm over BDD to learn parameters
for the CPT-L language.[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] presented the CoPrEM algorithm that performs
EM over BDDs for the ProbLog language.
      </p>
      <p>
        Approaches for learning probabilistic logic programs can be classi ed into
three categories: those that employ constraint techniques (such as [
        <xref ref-type="bibr" rid="ref16 ref18">16,18</xref>
        ]), those
that use EM and those that adopt gradient descent.
      </p>
      <p>
        Among the approaches that use EM, [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] rst proposed to use it to induce
parameters and the Structural EM algorithm to induce ground LPADs structures.
Their EM algorithm however works on the underlying Bayesian network. RIB
[
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] performs parameter learning using the information bottleneck approach,
which is an extension of EM targeted especially towards hidden variables. The
PRISM system [
        <xref ref-type="bibr" rid="ref21 ref22">21,22</xref>
        ] is one of the rst learning algorithms based on EM.
      </p>
      <p>
        Among the works that use a gradient descent technique, LeProbLog [
        <xref ref-type="bibr" rid="ref5 ref6">5,6</xref>
        ]
nds the parameters of a ProbLog program that minimize the Mean Squared
Error of the probability of queries and uses BDD to compute the gradient.
      </p>
      <p>
        Alchemy [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] is a state of the art SRL system that o ers various tools for
inference, weight learning and structure learning of Markov Logic Networks (MLNs).
MLNs di er signi cantly from the languages under the distribution semantics
since they extend rst-order logic by attaching weights to logical formulas,
reecting \how strong" they are, but do not allow to exploit logic programming
techniques.
5
      </p>
    </sec>
    <sec id="sec-4">
      <title>Experiments</title>
      <p>
        EMBLEM has been tested over three real world datasets: IMDB1, UW-CSE2 [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]
and Cora3 [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. We implemented EMBLEM in Yap Prolog4 and we compared it
with RIB [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]; CEM, an implementation of EM based on the cplint inference
library [
        <xref ref-type="bibr" rid="ref17 ref19">17,19</xref>
        ]; LeProblog [
        <xref ref-type="bibr" rid="ref5 ref6">5,6</xref>
        ] and Alchemy [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. All experiments were performed
on Linux machines with an Intel Core 2 Duo E6550 (2333 MHz) processor and
4 GB of RAM.
      </p>
      <p>
        To compare our results with LeProbLog we exploited the translation of
LPADs into ProbLog proposed in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], for Alchemy we exploited the translation
between LPADs and MLNs used in [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
      </p>
      <p>
        For the probabilistic logic programming systems (EMBLEM, RIB, CEM and
LeProbLog) we consider various options. The rst consists in choosing between
1 http://alchemy.cs.washington.edu/data/imdb
2 http://alchemy.cs.washington.edu/data/uw-cse
3 http://alchemy.cs.washington.edu/data/cora
4 http://www.dcc.fc.up.pt/~vsc/Yap
associating a distinct random variable to each grounding of a probabilistic clause
or a single random variable to a non-ground probabilistic clause expressing
whether the clause is used or not. The latter case makes the problem easier. The
second option is concerned with imposing a limit on the depth of derivations
as done in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], thus eliminating explanations associated to derivations
exceeding the depth limit. This is necessary for problems that contain cyclic clauses,
such as transitive closure clauses. The third option involves setting the
number of restarts for EM based algorithms. All experiments for probabilistic logic
programming systems have been performed using open-world predicates.
      </p>
      <p>
        IMDB regards movies, actors, directors and movie genres and it is divided
into ve mega-examples. We performed training on four mega-examples and
testing on the remaining one. Then we drew a Precision-Recall curve and computed
the Area Under the Curve (AUCPR) using the method reported in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. We
dened 4 di erent LPADs, two for predicting the target predicate sameperson=2,
and two for predicting samemovie=2. We had one positive example for each fact
that is true in the data, while we sampled from the complete set of false facts
three times the number of true instances in order to generate negative examples.
      </p>
      <p>
        For predicting sameperson=2 we used the same LPAD of [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]:
sameperson(X,Y):p:- movie(M,X),movie(M,Y).
sameperson(X,Y):p:- actor(X),actor(Y),workedunder(X,Z),
workedunder(Y,Z).
sameperson(X,Y):p:- gender(X,Z),gender(Y,Z).
sameperson(X,Y):p:- director(X),director(Y),genre(X,Z),genre(Y,Z).
where p is a placeholder meaning the parameter must be learned. We ran
EMBLEM on it with the following settings: no depth bound, random variables
associated to instantiations of clauses and a number of restarts chosen to match
the execution time of EMBLEM with that of the fastest other algorithm.
      </p>
      <p>
        The queries that LeProbLog takes as input are obtained by annotating with
1.0 each positive example for sameperson=2 and with 0.0 each negative
example for sameperson=2. We ran LeProbLog for a maximum of 100 iterations or
until the di erence in Mean Squared Error (MSE) between two iterations got
smaller than 10 5; this setting was used in all the following experiments as well.
For Alchemy we always used the preconditioned rescaled conjugate gradient
discriminative algorithm [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. For this experiments we speci ed sameperson=2 as
the only non-evidence predicate.
      </p>
      <p>A second LPAD has been created to evaluate the performance of the
algorithms when some atoms are unseen:
sameperson_pos(X,Y):p:- movie(M,X),movie(M,Y).
sameperson_pos(X,Y):p:- actor(X),actor(Y),</p>
      <p>workedunder(X,Z),workedunder(Y,Z).
sameperson_pos(X,Y):p:- director(X),director(Y),genre(X,Z),
genre(Y,Z).
sameperson_neg(X,Y):p:- movie(M,X),movie(M,Y).
sameperson_neg(X,Y):p:- actor(X),actor(Y),</p>
      <p>workedunder(X,Z),workedunder(Y,Z).
sameperson_neg(X,Y):p:- director(X),director(Y),genre(X,Z),
genre(Y,Z).
sameperson(X,Y):p:- \+ sameperson_pos(X,Y), sameperson_neg(X,Y).
sameperson(X,Y):p:- \+ sameperson_pos(X,Y),\+ sameperson_neg(X,Y).
sameperson(X,Y):p:- sameperson_pos(X,Y), sameperson_neg(X,Y).
sameperson(X,Y):p:- sameperson_pos(X,Y), \+ sameperson_neg(X,Y).
The sameperson_pos/2 and sameperson_neg/2 predicates are unseen in the
data. Settings are the same as the ones for the previous LPAD. In this experiment
Alchemy was run with the withEM option that turns on EM learning.</p>
      <p>Table 1 shows the AUCPR averaged over the ve folds for EMBLEM, RIB,
LeProbLog, CEM and Alchemy. Results for the two LPADs are shown
respectively in the IMDB-SP and IMDBu-SP rows. Table 2 shows the learning times
in hours.</p>
      <p>For predicting samemovie=2 we used the LPAD:
samemovie(X,Y):p:- movie(X,M),movie(Y,M),actor(M).
samemovie(X,Y):p:- movie(X,M),movie(Y,M),director(M).
samemovie(X,Y):p:- movie(X,A),movie(Y,B),actor(A),director(B),
workedunder(A,B).
samemovie(X,Y):p:- movie(X,A),movie(Y,B),director(A),director(B),
genre(A,G),genre(B,G).</p>
      <p>To test the behaviour when unseen predicates are present, we transformed the
program for samemovie=2 as we did for sameperson=2, thus introducing the
unseen predicates samemovie pos=2 and samemovie neg=2. We ran EMBLEM
on them with no depth bound, one variable for each instantiation of the rules
and one random restart. With regard to LeProbLog and Alchemy, we ran them
with the same settings as IMDB-SP and IMDBu-SP, by replacing sameperson
with samemovie.</p>
      <p>Table 1 shows, in the IMDB-SM and IMDBu-SM rows, the average AUCPR
for EMBLEM, LeProblog and Alchemy. For RIB and CEM we obtained a lack of
memory error (indicated with \me"); Table 2 shows the learning times in hours.</p>
      <p>The Cora database contains citations to computer science research papers.
For each citation we know the title, authors, venue and the words that appear in
them. The task is to determine which citations are referring to the same paper,
by predicting the predicate samebib(cit1,cit2).</p>
      <p>
        From the MLN proposed in [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]5 we obtained two LPADs. The rst contains
559 rules and di ers from the direct translation of the MLN because rules
involving words are instantiated with the di erent constants, only positive literals
for the hasword predicates are used and transitive rules are not included:
samebib(B,C):p:- author(B,D),author(C,E),sameauthor(D,E).
samebib(B,C):p:- title(B,D),title(C,E),sametitle(D,E).
samebib(B,C):p:- venue(B,D),venue(C,E),samevenue(D,E).
5 http://alchemy.cs.washington.edu/mlns/er
samevenue(B,C):p:-haswordvenue(B,word_06),haswordvenue(C,word_06).
...
sametitle(B,C):p:-haswordtitle(B,word_10),haswordtitle(C,word_10).
....
sameauthor(B,C):p:- haswordauthor(B,word_a),
      </p>
      <p>haswordauthor(C,word_a).</p>
      <p>The dots stand for the rules for all the possible words. The Cora dataset
comprises ve mega-examples each containing facts for the four predicates
samebib=2, samevenue=2, sametitle=2 and sameauthor=2, which have been
set as target predicates. We used as negative examples those contained in the
Alchemy dataset. We ran EMBLEM on this LPAD with no depth bound, a single
variable for each instantiation of the rules and a number of restarts chosen to
match the execution time of EMBLEM with that of the fastest other algorithm.</p>
      <p>The second LPAD adds to the previous one four transitive rules of the form
samebib(A,B):p :- samebib(A,C),samebib(C,B).
for every target predicate, for a total of 563 rules. In this case we had to run
EMBLEM with a depth bound equal to two and a single variable for each
non-ground rule; the number of restarts was one. As for LeProbLog, we separately
learned the four predicates because learning the whole theory at once would
give a lack of memory error. We annotated with 1.0 each positive example for
samebib=2, sameauthor=2, sametitle=2, samevenue=2 and with 0.0 the
negative examples for the same predicates. As for Alchemy we learned weights with
the four predicates as the non-evidence predicates. Table 1 shows in the Cora
and CoraT (Cora transitive) rows the average AUCPR obtained by training on
four mega-examples and testing on the remaining one. CEM and Alchemy on
CoraT gave a lack of memory error while RIB was not applicable because it was
not possible to split the input examples into smaller independent interpretations
as required by RIB.</p>
      <p>The UW-CSE dataset contains information about the Computer Science
department of the University of Washington through 22 di erent predicates, such
as yearsInProgram/2, advisedBy/2, taughtBy/3 and is split into ve
mega-examples. The goal here is to predict the advisedBy/2 predicate, namely the
fact that a person is advised by another person: this was our target predicate.
The negative examples have been generated by considering all couple of persons
(a,b) where a and b appear in an advisedby/2 fact in the data and by adding
a negative example advisedby(a,b) if it is not in the data.</p>
      <p>
        The theory used was obtained from the MLN of [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]6. It contains 86 rules,
such as for instance:
advisedby(S, P) :p :- courselevel(C,level_500),taughtby(C,P,Q),
ta(C, S, Q).
6 http://alchemy.cs.washington.edu/mlns/uw-cse
We ran EMBLEM on it with a single variable for each instantiation of a rule, a
depth bound of two and one random restart.
      </p>
      <p>The annotated queries that LeProbLog takes as input have been created by
annotating with 1.0 each positive example for advisedby=2 and with 0.0 the
negative examples. As for Alchemy, we learned weights with advisedby/2 as
the only non-evidence predicate. Table 1 shows the AUCPR averaged over the
ve mega-examples for all the algorithms.</p>
      <p>Table 3 shows the p-value of a paired two-tailed t-test at the 5% signi cance
level of the di erence in AUCPR between EMBLEM and RIB/LeProbLog/CEM/
Alchemy (signi cant di erences in bold).</p>
      <p>From the results we can observe that over IMDB EMBLEM has comparable
performances with CEM for IMDB-SP, with similar execution time. On
IMDBuSP it has better performances than all other systems, with a learning time equal
to the fastest other algorithm. On IMDB-SM it reaches the highest area value
in less time (only one restart is needed). On IMDBu-SM it still reaches the
highest area with one restart but with a longer execution time. Over Cora it has
comparable performances with the best other system CEM but in a signi cantly
lower time and over CoraT is one of the few systems to be able to complete
learning, with better performances in terms of area and time. Over UW-CSE it
has signi cant better performances with respect to all the algorithms.</p>
      <p>Memory errors, that we encountered with some systems over certain datasets,
have to be ascribed to the memory needs of the systems; for instance, some of
them are not able to manage the LPAD for CoraT because its transitive rules
generate large BDDs.
6</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions</title>
      <p>We have proposed a technique which applies an EM algorithm for learning the
parameters of Logic Programs with Annotated Disjunctions. It can be applied
to all languages that are based on the distribution semantics and exploits the
BDDs that are built during inference to e ciently compute the expectations for
hidden variables.</p>
      <p>We executed the algorithm over the real datasets IMDB, UW-CSE and Cora,
and evaluated its performances - together with those of four other probabilistic
systems - through the AUCPR and AUCROC. These results show that
EMBLEM uses less memory than RIB, CEM and Alchemy, allowing it to solve
larger problems, as one can see from Table ?? where, for some datasets, not all
the mentioned algorithms are able to terminate. Moreover its speed allows to
perform a high number of restarts making it escape local maxima and achieve
higher AUCPR.</p>
      <p>EMBLEM is available in the cplint package in the source tree of Yap
Prolog and information on its use can be found at http://sites.google.com/a/
unife.it/ml/emblem.</p>
      <p>In the future we plan to extend EMBLEM for learning the structure of LPADs
by combining the standard Expectation Maximization algorithm, which
optimizes parameters, with structure search for model selection.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Bellodi</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riguzzi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>EM over binary decision diagrams for probabilistic logic programs</article-title>
          .
          <source>Tech. Rep. CS-2011-01</source>
          , ENDIF, Universita di Ferrara,
          <source>Italy</source>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Davis</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goadrich</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>The relationship between Precision-Recall and ROC curves</article-title>
          . In: Cohen,
          <string-name>
            <given-names>W.W.</given-names>
            ,
            <surname>Moore</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the 23rd International Conference on Machine Learning. ACM International Conference Proceeding Series</source>
          , vol.
          <volume>148</volume>
          , pp.
          <volume>233</volume>
          {
          <fpage>240</fpage>
          .
          <string-name>
            <surname>ACM</surname>
          </string-name>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>De Raedt</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Demoen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fierens</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gutmann</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Janssens</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kimmig</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Landwehr</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mantadelis</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Meert</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rocha</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Santos</given-names>
            <surname>Costa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            ,
            <surname>Thon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Vennekens</surname>
          </string-name>
          , J.:
          <article-title>Towards digesting the alphabet-soup of statistical relational learning</article-title>
          . In: Roy,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Winn</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>McAllester</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Mansinghka</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            ,
            <surname>Tenenbaum</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the 1st Workshop on Probabilistic Programming: Universal Languages, Systems and Applications</source>
          , in NIPS (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>De Raedt</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kimmig</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Toivonen</surname>
          </string-name>
          , H.:
          <article-title>ProbLog: A probabilistic prolog and its application in link discovery</article-title>
          . In: Veloso, M.M. (ed.)
          <source>Proceedings of the 20th International Joint Conference on Arti cial Intelligence</source>
          . pp.
          <volume>2462</volume>
          {
          <fpage>2467</fpage>
          . AAAI Press (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Gutmann</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kimmig</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kersting</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Raedt</surname>
          </string-name>
          , L.D.:
          <article-title>Parameter learning in probabilistic databases: A least squares approach</article-title>
          . In: Daelemans,
          <string-name>
            <given-names>W.</given-names>
            ,
            <surname>Goethals</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Morik</surname>
          </string-name>
          ,
          <string-name>
            <surname>K</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the European Conference on Machine Learning and Knowledge Discovery in Databases. LNCS</source>
          , vol.
          <volume>5211</volume>
          , pp.
          <volume>473</volume>
          {
          <fpage>488</fpage>
          . Springer (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Gutmann</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kimmig</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kersting</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Raedt</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Parameter estimation in ProbLog from annotated queries</article-title>
          .
          <source>Tech. Rep. CW 583</source>
          , Department of Computer Science, Katholieke Universiteit Leuven,
          <string-name>
            <surname>Belgium</surname>
          </string-name>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Gutmann</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Thon</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Raedt</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Learning the parameters of probabilistic logic programs from interpretations</article-title>
          .
          <source>Tech. Rep. CW 584</source>
          , Department of Computer Science, Katholieke Universiteit Leuven,
          <string-name>
            <surname>Belgium</surname>
          </string-name>
          (
          <year>June 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Inoue</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sato</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ishihata</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kameya</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nabeshima</surname>
          </string-name>
          , H.:
          <article-title>Evaluating abductive hypotheses using an em algorithm on bdds</article-title>
          . In: Boutilier,
          <string-name>
            <surname>C</surname>
          </string-name>
          . (ed.)
          <source>Proceedings of the 21st International Joint Conference on Arti cial Intelligence (IJCAI)</source>
          . pp.
          <volume>810</volume>
          {
          <fpage>815</fpage>
          . Morgan Kaufmann Publishers Inc. (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Ishihata</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kameya</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sato</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Minato</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Propositionalizing the em algorithm by bdds</article-title>
          . In: Zelezn,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Lavra</surname>
          </string-name>
          , N. (eds.)
          <source>Late Breaking Papers of the 18th International Conference on Inductive Logic Programming</source>
          . pp.
          <volume>44</volume>
          {
          <issue>49</issue>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Ishihata</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kameya</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sato</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Minato</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Propositionalizing the em algorithm by bdds</article-title>
          .
          <source>Tech. Rep. TR08-0004</source>
          , Dept. of Computer Science, Tokyo Institute of Technology (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Lowd</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Domingos</surname>
            ,
            <given-names>P.:</given-names>
          </string-name>
          <article-title>E cient weight learning for Markov logic networks</article-title>
          . In: Kok,
          <string-name>
            <given-names>J.N.</given-names>
            ,
            <surname>Koronacki</surname>
          </string-name>
          , J., de Mantaras,
          <string-name>
            <given-names>R.L.</given-names>
            ,
            <surname>Matwin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Mladenic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Skowron</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the 18th European Conference on Machine Learning. LNCS</source>
          , vol.
          <volume>4702</volume>
          , pp.
          <volume>200</volume>
          {
          <fpage>211</fpage>
          . Springer (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Meert</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Struyf</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blockeel</surname>
          </string-name>
          , H.:
          <article-title>Learning ground CP-Logic theories by leveraging Bayesian network learning techniques</article-title>
          .
          <source>Fundamenta Informaticae</source>
          <volume>89</volume>
          (
          <issue>1</issue>
          ),
          <volume>131</volume>
          {
          <fpage>160</fpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Neapolitan</surname>
          </string-name>
          , R.:
          <article-title>Learning Bayesian Networks</article-title>
          . Prentice Hall, Upper Saddle River, NJ (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Poole</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>The Independent Choice Logic for modelling multiple agents under uncertainty</article-title>
          .
          <source>Arti cial Intelligence</source>
          <volume>94</volume>
          (
          <issue>1-2</issue>
          ),
          <volume>7</volume>
          {
          <fpage>56</fpage>
          (
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Richardson</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Domingos</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Markov logic networks</article-title>
          .
          <source>Machine Learning</source>
          <volume>62</volume>
          (
          <issue>1-2</issue>
          ),
          <volume>107</volume>
          {
          <fpage>136</fpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Riguzzi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>ALLPAD: Approximate learning of logic programs with annotated disjunctions</article-title>
          . In: Muggleton,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Otero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.P.</given-names>
            ,
            <surname>Tamaddoni-Nezhad</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the 16th International Conference on Inductive Logic Programming. LNCS</source>
          , vol.
          <volume>4455</volume>
          , pp.
          <volume>43</volume>
          {
          <fpage>45</fpage>
          . Springer (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Riguzzi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>A top-down interpreter for LPAD and CP-Logic</article-title>
          . In: Basili,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Pazienza</surname>
          </string-name>
          , M.T. (eds.)
          <article-title>Proceedings of the 10th Congress of the Italian Association for Arti cial Intelligence</article-title>
          .
          <source>LNCS</source>
          , vol.
          <volume>4733</volume>
          , pp.
          <volume>109</volume>
          {
          <fpage>120</fpage>
          . Springer (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Riguzzi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>ALLPAD: approximate learning of logic programs with annotated disjunctions</article-title>
          .
          <source>Machine Learning</source>
          <volume>70</volume>
          (
          <issue>2-3</issue>
          ),
          <volume>207</volume>
          {
          <fpage>223</fpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Riguzzi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Extended semantics and inference for the Independent Choice Logic</article-title>
          .
          <source>Logic Journal of the IGPL</source>
          <volume>17</volume>
          (
          <issue>6</issue>
          ),
          <volume>589</volume>
          {
          <fpage>629</fpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Riguzzi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mauro</surname>
            ,
            <given-names>N.D.</given-names>
          </string-name>
          :
          <article-title>Applying the information bottleneck to statistical relational learning</article-title>
          .
          <source>Machine Learning</source>
          (
          <year>2011</year>
          ), to appear
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Sato</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>A statistical learning method for logic programs with distribution semantics</article-title>
          . In: Sterling,
          <string-name>
            <surname>L</surname>
          </string-name>
          . (ed.)
          <source>Proceedings of the 12th International Conference on Logic Programming</source>
          . pp.
          <volume>715</volume>
          {
          <fpage>729</fpage>
          . MIT Press (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Sato</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kameya</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Parameter learning of logic programs for symbolic-statistical modeling</article-title>
          .
          <source>Journal of Arti cial Intelligence Research</source>
          <volume>15</volume>
          ,
          <volume>391</volume>
          {
          <fpage>454</fpage>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Singla</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Domingos</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Discriminative training of Markov logic networks</article-title>
          . In: Veloso,
          <string-name>
            <given-names>M.M.</given-names>
            ,
            <surname>Kambhampati</surname>
          </string-name>
          , S. (eds.)
          <source>Proceedings of the 20th National Conference on Arti cial Intelligence and the 17th Innovative Applications of Arti cial Intelligence Conference</source>
          . pp.
          <volume>868</volume>
          {
          <fpage>873</fpage>
          . AAAI Press/The MIT Press (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Singla</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Domingos</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Entity resolution with Markov logic</article-title>
          .
          <source>In: Proceedings of the 6th IEEE International Conference on Data Mining</source>
          . pp.
          <volume>572</volume>
          {
          <fpage>582</fpage>
          . IEEE Computer Society (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Thayse</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Davio</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Deschamps</surname>
            ,
            <given-names>J.P.</given-names>
          </string-name>
          :
          <article-title>Optimization of multivalued decision algorithms</article-title>
          .
          <source>In: International Symposium on Multiple-Valued Logic</source>
          . pp.
          <volume>171</volume>
          {
          <fpage>178</fpage>
          . IEEE Computer Society Press (
          <year>1978</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Thon</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Landwehr</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Raedt</surname>
          </string-name>
          , L.D.:
          <article-title>A simple model for sequences of relational state descriptions</article-title>
          . In: Daelemans,
          <string-name>
            <given-names>W.</given-names>
            ,
            <surname>Goethals</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Morik</surname>
          </string-name>
          ,
          <string-name>
            <surname>K</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the European conference on Machine Learning and Knowledge Discovery in Databases (ECML/PKDD</source>
          <year>2008</year>
          )
          <article-title>-</article-title>
          <source>Part II. Lecture Notes in Computer Science</source>
          , vol.
          <volume>5212</volume>
          , pp.
          <volume>506</volume>
          {
          <fpage>521</fpage>
          . Springer-Verlag (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Vennekens</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Denecker</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bruynooghe</surname>
          </string-name>
          , M.:
          <article-title>Cp-logic: A language of causal probabilistic events and its relation to logic programming</article-title>
          .
          <source>Theory and Practice of Logic Programming</source>
          <volume>9</volume>
          (
          <issue>3</issue>
          ),
          <volume>245</volume>
          {
          <fpage>308</fpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Vennekens</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verbaeten</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Logic programs with annotated disjunctions</article-title>
          .
          <source>Tech. Rep. CW386</source>
          , Department of Computer Science, Katholieke Universiteit Leuven,
          <string-name>
            <surname>Belgium</surname>
          </string-name>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Vennekens</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verbaeten</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bruynooghe</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Logic programs with annotated disjunctions</article-title>
          . In: Demoen,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Lifschitz</surname>
          </string-name>
          , V. (eds.)
          <source>Proceedings of the 20th International Conference on Logic Programming. LNCS</source>
          , vol.
          <volume>3131</volume>
          , pp.
          <volume>195</volume>
          {
          <fpage>209</fpage>
          . Springer (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>