spconv¶
Module contents¶
Convolution using sparse matrix.
-
class
poornn.spconv.
SPConv
(input_shape, itype, weight, bias, strides=None, boundary='P', w_contiguous=True, var_mask=(1, 1), is_unitary=False, **kwargs)¶ Bases:
poornn.linears.LinearBase
Convolution layer.
Parameters: - weight (ndarray) – dimensions are aranged as (feature_out, feature_in, kernel_x, ...), in ‘F’ order.
- bias (1darray) – length of num_feature_out.
- strides (tuple, default=(1,1,..)) – displace for convolutions.
- boudnary ('P'|'O', default='P') – boundary type, * ‘P’, periodic boundary condiction. * ‘O’, open boundary condition.
- is_unitary (bool, default=False) – keep unitary if True, here, unitary is defined in the map U: img_in -> feature_out.
- var_mask (tuple<bool>, len=2, default=(True,True)) – variable mask for weight and bias.
-
weight
¶ ndarray – dimensions are aranged as (feature_out, feature_in, kernel_x, ...), in ‘F’ order.
-
bias
¶ 1darray – length of num_feature_out.
-
strides
¶ tuple – displace for convolutions.
-
boudnary
¶ ‘P’|’O’ – boundary type, * ‘P’, periodic boundary condiction. * ‘O’, open boundary condition.
-
is_unitary
¶ bool – keep unitary if True, here, unitary is defined in the map U: img_in -> feature_out.
-
var_mask
¶ tuple<bool>, len=2 – variable mask for weight and bias.
-
(Derived)
-
csc_indptr
¶ 1darray – column pointers for convolution matrix.
-
csc_indices
¶ 1darray – row indicator for input array.
-
weight_indices
¶ 1darray – row indicator for filter array (if not contiguous).
-
backward
(xy, dy, **kwargs)¶ Parameters: - xy ((ndarray, ndarray)) –
- x -> (num_batch, nfi, img_in_dims), input in ‘F’ order.
- y -> (num_batch, nfo, img_out_dims), output in ‘F’ order.
- dy (ndarray) – (num_batch, nfo, img_out_dims), gradient of output in ‘F’ order.
- mask (booleans) – (do_xgrad, do_wgrad, do_bgrad).
Returns: dw, dx
Return type: tuple(1darray, ndarray)
- xy ((ndarray, ndarray)) –
-
forward
(x, **kwargs)¶ Parameters: x (ndarray) – (num_batch, nfi, img_in_dims), input in ‘F’ order. Returns: ndarray, (num_batch, nfo, img_out_dims), output in ‘F’ order.
-
img_nd
¶ Dimension of input image.
-
num_feature_in
¶ Dimension of input feature.
-
num_feature_out
¶ Dimension of input feature.
-
set_runtime_vars
(var_dict={})¶ Set runtime variables for layers.
Parameters: var_dict (dict) – the runtime variables dict.