Skip to main content

IMatrixMultiplyLayer

Struct IMatrixMultiplyLayer 

Source
pub struct IMatrixMultiplyLayer { /* private fields */ }
Expand description

IMatrixMultiplyLayer

Layer that represents a Matrix Multiplication.

Let A be op(getInput(0)) and B be op(getInput(1)) where op(x) denotes the corresponding MatrixOperation.

When A and B are matrices or vectors, computes the inner product A * B:

matrix * matrix -> matrix matrix * vector -> vector vector * matrix -> vector vector * vector -> scalar

Inputs of higher rank are treated as collections of matrices or vectors. The output will be a corresponding collection of matrices, vectors, or scalars.

For a dimension that is not one of the matrix or vector dimensions: If the dimension is 1 for one of the tensors but not the other tensor, the former tensor is broadcast along that dimension to match the dimension of the latter tensor. The number of these extra dimensions for A and B must match.

Do not inherit from this class, as doing so will break forward-compatibility of the API and ABI.

Implementations§

Source§

impl IMatrixMultiplyLayer

Source

pub fn setOperation( self: Pin<&mut IMatrixMultiplyLayer>, index: i32, op: MatrixOperation, )

Set the operation for an input tensor.

  • index Input tensor number (0 or 1).
  • op New operation.

See [getOperation()]

Source

pub fn getOperation(self: &IMatrixMultiplyLayer, index: i32) -> MatrixOperation

Get the operation for an input tensor.

  • index Input tensor number (0 or 1).

See [setOperation()]

Trait Implementations§

Source§

impl AsLayer for IMatrixMultiplyLayer

Source§

fn as_layer(&self) -> &ILayer

Source§

fn as_layer_pin_mut(&mut self) -> Pin<&mut ILayer>

Source§

impl AsLayerTyped for IMatrixMultiplyLayer

Source§

const TYPE: LayerType = LayerType::kMATRIX_MULTIPLY

Source§

impl AsRef<ILayer> for IMatrixMultiplyLayer

Source§

fn as_ref(self: &IMatrixMultiplyLayer) -> &ILayer

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl ExternType for IMatrixMultiplyLayer

Source§

type Id = (n, v, i, n, f, e, r, _1, (), I, M, a, t, r, i, x, M, u, l, t, i, p, l, y, L, a, y, e, r)

A type-level representation of the type’s C++ namespace and type name. Read more
Source§

type Kind = Opaque

Source§

impl MakeCppStorage for IMatrixMultiplyLayer

Source§

unsafe fn allocate_uninitialized_cpp_storage() -> *mut IMatrixMultiplyLayer

Allocates heap space for this type in C++ and return a pointer to that space, but do not initialize that space (i.e. do not yet call a constructor). Read more
Source§

unsafe fn free_uninitialized_cpp_storage(arg0: *mut IMatrixMultiplyLayer)

Frees a C++ allocation which has not yet had a constructor called. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.