3.0 KiB
Mod
@sphinxdirective
.. meta:: :description: Learn about Mod-1 - an element-wise, arithmetic operation, which can be performed on a single tensor in OpenVINO.
Versioned name: Mod-1
Category: Arithmetic binary
Short description: Mod performs an element-wise modulo operation with two given tensors applying broadcasting rule specified in the auto_broadcast attribute.
Detailed description
As a first step input tensors a and b are broadcasted if their shapes differ. Broadcasting is performed according to auto_broadcast attribute specification. As a second step Mod operation is computed element-wise on the input tensors a and b according to the formula below:
.. math::
o_{i} = a_{i} \mod b_{i}
Mod operation computes a reminder of a truncated division. It is the same behavior like in C programming language: truncated(x / y) * y + truncated_mod(x, y) = x. The sign of the result is equal to a sign of a dividend. The result of division by zero is undefined.
Attributes:
-
auto_broadcast
-
Description: specifies rules used for auto-broadcasting of input tensors.
-
Range of values:
- none - no auto-broadcasting is allowed, all input shapes must match
- numpy - numpy broadcasting rules, description is available in :doc:
Broadcast Rules For Elementwise Operations <openvino_docs_ops_broadcast_rules>
-
Type: string
-
Default value: "numpy"
-
Required: no
-
Inputs
- 1: A tensor of type T and arbitrary shape. Required.
- 2: A tensor of type T and arbitrary shape. Required.
Outputs
- 1: The result of element-wise modulo operation. A tensor of type T with shape equal to broadcasted shape of two inputs.
Types
- T: any numeric type.
Examples
Example 1 - no broadcasting
.. code-block:: xml :force:
<layer ... type="Mod"> 256 56 256 56 256 56
Example 2: numpy broadcasting
.. code-block:: xml :force:
<layer ... type="Mod"> 8 1 6 1 7 1 5 8 7 6 5
@endsphinxdirective