pystruct.inference.inference_ad3

pystruct.inference.inference_ad3(unary_potentials, pairwise_potentials, edges, relaxed=False, verbose=0, return_energy=False, branch_and_bound=False)

Inference with AD3 dual decomposition subgradient solver.

Parameters :

unary_potentials : nd-array

Unary potentials of energy function.

pairwise_potentials : nd-array

Pairwise potentials of energy function.

edges : nd-array

Edges of energy function.

relaxed : bool (default=False)

Whether to return the relaxed solution (True) or round to the next integer solution (False).

verbose : int (default=0)

Degree of verbosity for solver.

return_energy : bool (default=False)

Additionally return the energy of the returned solution (according to the solver). If relaxed=False, this is the energy of the relaxed, not the rounded solution.

branch_and_bound : bool (default=False)

Whether to attempt to produce an integral solution using branch-and-bound.

Returns :

labels : nd-array

Approximate (usually) MAP variable assignment. If relaxed=False, this is a tuple of unary and edge ‘marginals’.