Inner Product¶
Overview¶
A primitive to compute an inner product. More…
// structs struct dnnl_inner_product_desc_t; struct dnnl::inner_product_backward_data; struct dnnl::inner_product_backward_weights; struct dnnl::inner_product_forward; // global functions dnnl_status_t DNNL_API dnnl_inner_product_forward_desc_init( dnnl_inner_product_desc_t* ip_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t* src_desc, const dnnl_memory_desc_t* weights_desc, const dnnl_memory_desc_t* bias_desc, const dnnl_memory_desc_t* dst_desc ); dnnl_status_t DNNL_API dnnl_inner_product_backward_data_desc_init( dnnl_inner_product_desc_t* ip_desc, const dnnl_memory_desc_t* diff_src_desc, const dnnl_memory_desc_t* weights_desc, const dnnl_memory_desc_t* diff_dst_desc ); dnnl_status_t DNNL_API dnnl_inner_product_backward_weights_desc_init( dnnl_inner_product_desc_t* ip_desc, const dnnl_memory_desc_t* src_desc, const dnnl_memory_desc_t* diff_weights_desc, const dnnl_memory_desc_t* diff_bias_desc, const dnnl_memory_desc_t* diff_dst_desc );
Detailed Documentation¶
A primitive to compute an inner product.
See also:
Inner Product in developer guide
Global Functions¶
dnnl_status_t DNNL_API dnnl_inner_product_forward_desc_init( dnnl_inner_product_desc_t* ip_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t* src_desc, const dnnl_memory_desc_t* weights_desc, const dnnl_memory_desc_t* bias_desc, const dnnl_memory_desc_t* dst_desc )
Initializes descriptor for inner product forward propagation.
Note
Memory descriptors can be initialized with dnnl_format_tag_any or with format_kind set to dnnl_format_kind_any.
Parameters:
ip_desc |
Output descriptor for inner product primitive. |
prop_kind |
Propagation kind. Possible values are dnnl_forward_training and dnnl_forward_inference. |
src_desc |
Source memory descriptor. |
weights_desc |
Weights memory descriptor. |
bias_desc |
Bias memory descriptor. Passing NULL, a zero memory descriptor, or a memory descriptor with format_kind set to dnnl_format_kind_undef disables the bias term. |
dst_desc |
Destination memory descriptor. |
Returns:
dnnl_success on success and a status describing the error otherwise.
dnnl_status_t DNNL_API dnnl_inner_product_backward_data_desc_init( dnnl_inner_product_desc_t* ip_desc, const dnnl_memory_desc_t* diff_src_desc, const dnnl_memory_desc_t* weights_desc, const dnnl_memory_desc_t* diff_dst_desc )
Initializes descriptor for inner product backward propagation.
Note
Memory descriptors can be initialized with dnnl_format_tag_any or with format_kind set to dnnl_format_kind_any.
Parameters:
ip_desc |
Output descriptor for inner product primitive. |
diff_src_desc |
Diff source memory descriptor. |
weights_desc |
Weights memory descriptor. |
diff_dst_desc |
Diff destination memory descriptor. |
Returns:
dnnl_success on success and a status describing the error otherwise.
dnnl_status_t DNNL_API dnnl_inner_product_backward_weights_desc_init( dnnl_inner_product_desc_t* ip_desc, const dnnl_memory_desc_t* src_desc, const dnnl_memory_desc_t* diff_weights_desc, const dnnl_memory_desc_t* diff_bias_desc, const dnnl_memory_desc_t* diff_dst_desc )
Initializes descriptor for inner product weights gradient primitive.
Note
Memory descriptors can be initialized with dnnl_format_tag_any or with format_kind set to dnnl_format_kind_any.
Parameters:
ip_desc |
Output descriptor for inner product primitive. |
src_desc |
Source memory descriptor. |
diff_weights_desc |
Diff weights memory descriptor. |
diff_bias_desc |
Diff bias memory descriptor. Passing NULL, a zero memory descriptor, or a memory descriptor with format_kind set to dnnl_format_kind_undef disables the bias term. |
diff_dst_desc |
Diff destination memory descriptor. |
Returns:
dnnl_success on success and a status describing the error otherwise.