The adaptation algorithm processes the cases individually. It assumes
that the conditional distributions (one for each parent configuration)
follow the Dirichlet distribution. When a new case arrives, it
computes the updated distribution. However, if the new case is
incomplete, the updated distribution is in general a mixture of
Dirichlet distributions. In order to avoid exponential growth of the
number of terms of the distribution, the updated distribution is
replaced by a single Dirichlet distribution that has the same means
and average variance (of the Dirichlet parameters) as the correct
updated distribution.
The EM algorithm, on the other hand, considers all cases before it
updates the CPTs. This is repeated until the CPTs converges to a
stable maximum (stability is determined by a sufficiently small change
of the log-likelihood between two iterations).
If all cases are complete, there is usually no difference between the
methods -- with one exception: the adaptation algorithm needs to have
a valid starting distribution (this means that experience counts must
be positive), whereas the EM algorithm is happy to start with
experience counts equal to zero.
The adaptation algorithm is primarily intended to continuously update
the CPT parameters when a system is already online (for example, it is
useful if the parameters can change over time).
The EM algorithm will generally give the best results, but it is also
more costly to run (since it processes all cases, and often does that
several times). It is therefore not suitable if you want online
updating of CPT parameters.