Developer Guide and Reference

  • 2022.1
  • 04/11/2022
  • Public Content
Contents

struct dnnl::vanilla_rnn_backward::desc

Overview

Descriptor for a vanilla RNN backward propagation primitive. More…
#include <dnnl.hpp> struct desc { // fields dnnl_rnn_desc_t data; // construction desc( prop_kind aprop_kind, algorithm activation, rnn_direction direction, const memory::desc& src_layer_desc, const memory::desc& src_iter_desc, const memory::desc& weights_layer_desc, const memory::desc& weights_iter_desc, const memory::desc& bias_desc, const memory::desc& dst_layer_desc, const memory::desc& dst_iter_desc, const memory::desc& diff_src_layer_desc, const memory::desc& diff_src_iter_desc, const memory::desc& diff_weights_layer_desc, const memory::desc& diff_weights_iter_desc, const memory::desc& diff_bias_desc, const memory::desc& diff_dst_layer_desc, const memory::desc& diff_dst_iter_desc, rnn_flags flags = rnn_flags::undef, float alpha = 0.0f, float beta = 0.0f ); };

Detailed Documentation

Descriptor for a vanilla RNN backward propagation primitive.
Construction
desc( prop_kind aprop_kind, algorithm activation, rnn_direction direction, const memory::desc& src_layer_desc, const memory::desc& src_iter_desc, const memory::desc& weights_layer_desc, const memory::desc& weights_iter_desc, const memory::desc& bias_desc, const memory::desc& dst_layer_desc, const memory::desc& dst_iter_desc, const memory::desc& diff_src_layer_desc, const memory::desc& diff_src_iter_desc, const memory::desc& diff_weights_layer_desc, const memory::desc& diff_weights_iter_desc, const memory::desc& diff_bias_desc, const memory::desc& diff_dst_layer_desc, const memory::desc& diff_dst_iter_desc, rnn_flags flags = rnn_flags::undef, float alpha = 0.0f, float beta = 0.0f )
Constructs a descriptor for a vanilla RNN backward propagation primitive.
The following arguments may point to a zero memory descriptor:
  • src_iter_desc
    together with
    diff_src_iter_desc
    ,
  • bias_desc
    together with
    diff_bias_desc
    ,
  • dst_iter_desc
    together with
    diff_dst_iter_desc
    .
This would then indicate that the RNN backward propagation primitive should not use the respective data and should use zero values instead.
All the memory descriptors may be initialized with the dnnl::memory::format_tag::any value of
format_tag
.
Parameters:
aprop_kind
Propagation kind. Must be dnnl::prop_kind::backward.
activation
direction
RNN direction. See dnnl::rnn_direction for more info.
src_layer_desc
Memory descriptor for the input vector.
src_iter_desc
Memory descriptor for the input recurrent hidden state vector.
weights_layer_desc
Memory descriptor for the weights applied to the layer input.
weights_iter_desc
Memory descriptor for the weights applied to the recurrent input.
bias_desc
Bias memory descriptor.
dst_layer_desc
Memory descriptor for the output vector.
dst_iter_desc
Memory descriptor for the output recurrent hidden state vector.
diff_src_layer_desc
Memory descriptor for the diff of input vector.
diff_src_iter_desc
Memory descriptor for the diff of input recurrent hidden state vector.
diff_weights_layer_desc
Memory descriptor for the diff of weights applied to the layer input.
diff_weights_iter_desc
Memory descriptor for the diff of weights applied to the recurrent input.
diff_bias_desc
Diff bias memory descriptor.
diff_dst_layer_desc
Memory descriptor for the diff of output vector.
diff_dst_iter_desc
Memory descriptor for the diff of output recurrent hidden state vector.
flags
Unused.
alpha
Negative slope if activation is dnnl::algorithm::eltwise_relu.
beta
Unused.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.