pub struct ISoftMaxLayer { /* private fields */ }Expand description
ISoftMaxLayer
A Softmax layer in a network definition.
This layer applies a per-channel softmax to its input.
The output size is the same as the input size.
The following constraints must be satisfied to execute this layer on DLA:
- Axis must be one of the channel or spatial dimensions.
- There are two classes of supported input sizes:
- Non-axis, non-batch dimensions are all 1 and the axis dimension is at most 8192. This is the recommended case for using softmax since it is the most accurate.
- At least one non-axis, non-batch dimension greater than 1 and the axis dimension is at most 1024. Note that in this case, there may be some approximation error as the axis dimension size approaches the upper bound. See the TensorRT Developer Guide for more details on the approximation error.
Do not inherit from this class, as doing so will break forward-compatibility of the API and ABI.
Implementations§
Source§impl ISoftMaxLayer
impl ISoftMaxLayer
Sourcepub fn setAxes(self: Pin<&mut ISoftMaxLayer>, axes: u32)
pub fn setAxes(self: Pin<&mut ISoftMaxLayer>, axes: u32)
Set the axis along which softmax is computed. Currently, only one axis can be set.
The axis is specified by setting the bit corresponding to the axis to 1. For example, consider an NCHW tensor as input.
Bit 0 corresponds to the N dimension boolean. Bit 1 corresponds to the C dimension boolean. Bit 2 corresponds to the H dimension boolean. Bit 3 corresponds to the W dimension boolean. By default, softmax is performed on the axis which is the number of axes minus three. It is 0 if there are fewer than 3 axes. For example, if the input is NCHW, the default axis is C. If the input is NHW, then the default axis is N.
For example, to perform softmax on axis R of a NPQRCHW input, set bit 3.
axesThe axis along which softmax is computed. Here axes is a bitmap. For example, when doing softmax along axis 0, bit 0 is set to 1, axes = 1 << axis = 1.
Sourcepub fn getAxes(self: &ISoftMaxLayer) -> u32
pub fn getAxes(self: &ISoftMaxLayer) -> u32
Get the axis along which softmax occurs.
See [setAxes()]