next up previous
Next: Inference Up: Quick Start Previous: Weight Learning

Structure Learning

To learn the structure (clauses and weights) of an MLN generatively, you use the learnstruct executable, e.g., ALCHDIR/bin/learnstruct -i univ-empty.mln -o univ-empty-out.mln -t univ-train.db -penalty 0.5. learnstruct uses beam search to find new clauses to add to an MLN. It can start from both empty and non-empty MLNs. When it starts from a non-empty MLN, it does not modify clauses that are derived from existentially quantified formulas or those containing variables with mutually exclusive and exhaustive values. Its options are similar to those of learnwts. In addition, it has options for controlling techniques that speed up the search. You can also restrict the types of clauses created during structure learning (see the developer's manual). Type ALCHDIR/bin/learnstruct without any parameters to view all options.



Marc Sumner 2008-12-01