1. A method comprising: defining in processor-readable memory a factor graph including a factor graph model replicated for each variable node of a set of variable nodes, each variable node being informed by one or more factor types in the factor graph model, each factor type being implemented as a single decision tree; training structure and parameterization of each decision tree using training data having a plurality of datasets, each dataset having elements of at least one labeled property, the training executing an objective function that determines the parameters of each decision tree; and storing a trained factor graph.