Use L to create a predicate to do one step of learning, and then iterate
this until convergence, starting from P1 and ending with P2. History of
objective function values is returned in LL. Convergence C is of type:
convergence ---> abs(float); rel(float).
Get update predicate for several EM-based parameter learning methods. learn/4 invokes
learn/5 with ITemp=1.0.
learn_method ---> ml; map(sw_params); vb(sw_params).
stats_method ---> io(scaling); vit.
scaling ---> lin; log.
learner == pred(-float, +sw_params, -sw_params).