pystruct.models.
DirectionalGridCRF
(n_states=None, n_features=None, inference_method=None, neighborhood=4)[source]¶CRF in which each direction of edges has their own set of parameters.
Pairwise potentials are not symmetric and are independend for each kind of edges. This leads to n_classes * n_features parameters for unary potentials and n_edge_features * n_classes ** 2 parameters for edge potentials. The number of edgetypes is two for a 4connected neighborhood (horizontal and vertical) or 4 for a 8 connected neighborhood (additionally two diagonals).
Unary evidence x
is given as array of shape (width, height, n_features),
labels y
are given as array of shape (width, height). Grid sizes do not
need to be constant over the dataset.
Parameters:  n_states : int, default=None
inference_method : string, default=None
neighborhood : int, default=4


Methods
batch_inference (X, w[, relaxed]) 

batch_joint_feature (X, Y[, Y_true]) 

batch_loss (Y, Y_hat) 

batch_loss_augmented_inference (X, Y, w[, ...]) 

continuous_loss (y, y_hat) 

inference (x, w[, relaxed, return_energy]) 

initialize (X, Y) 

joint_feature (x, y) 
Feature vector associated with instance (x, y). 
loss (y, y_hat) 

loss_augmented_inference (x, y, w[, relaxed, ...]) 

max_loss (y) 
joint_feature
(x, y)[source]¶Feature vector associated with instance (x, y).
Feature representation joint_feature, such that the energy of the configuration (x, y) and a weight vector w is given by np.dot(w, joint_feature(x, y)).
Parameters:  x : ndarray, shape (width, height, n_features)
y : ndarray or tuple


Returns:  p : ndarray, shape (size_joint_feature,)
