Divide

Divide  //  Elementwise divide operation

Description

Produces tensor of the same element type and shape as the two inputs, where the value at each coordinate of output is the quotient of the values at the corresponding input coordinates.

Inputs

Name

Element Type

Shape

arg0

any

any

arg1

same as arg0

same as arg0

Outputs

Name

Element Type

Shape

output

same as arg0

same as arg0

Mathematical Definition

\[\mathtt{output}_{i_0, \ldots, i_{n-1}} = \frac{\mathtt{arg0}_{i_0, \ldots, i_{n-1}}}{\mathtt{arg1}_{i_0, \ldots, i_{n-1}}}\]

Backprop

\[\begin{split}\overline{\mathtt{arg0}} &\leftarrow \frac{\Delta}{\mathtt{arg1}}\\ \overline{\mathtt{arg1}} &\leftarrow -\Delta \frac{\mathtt{Output}}{\mathtt{arg1}}\end{split}\]

C++ Interface

class Divide : public ngraph::op::util::BinaryElementwiseArithmetic

Elementwise division operation.

Public Functions

const NodeTypeInfo &get_type_info() const

Returns the NodeTypeInfo for the node’s class. During transition to type_info, returns a dummy type_info for Node if the class has not been updated yet.

Divide()

Constructs a division operation.

Divide(const Output<Node> &arg0, const Output<Node> &arg1, bool pythondiv, const AutoBroadcastSpec &auto_broadcast = AutoBroadcastSpec(AutoBroadcastType::NUMPY))

Constructs a division operation.

Parameters
  • arg0: Node that produces the first input tensor.

  • arg1: Node that produces the second input tensor.

  • pythondiv: Use Python style rounding for integral type

  • auto_broadcast: Auto broadcast specification

Divide(const Output<Node> &arg0, const Output<Node> &arg1, const AutoBroadcastSpec &auto_broadcast = AutoBroadcastSpec(AutoBroadcastType::NUMPY))

Constructs a division operation.

Parameters
  • arg0: Node that produces the first input tensor.

  • arg1: Node that produces the second input tensor.

  • auto_broadcast: Auto broadcast specification

size_t get_version() const

Return

Version of this node