Method invert
static member invert: Tensor<'T> -> Tensor<'T>
(Batch) inverts a matrix.
Declaration
static member invert: a:Tensor<'T> -> Tensor<'T>
Parameters
| Type | Name | Description |
|---|---|---|
| Tensor<'T> | a | The input matrix or tensor to this operation. |
Returns
| Type | Description |
|---|---|
| Tensor<'T> | A new matrix or tensor containing the result of this operation. |
Remarks
If a is a square matrix, its inverse is computed. The result is a matrix.
If a is a tensor of shape [b_1; ...; b_n; i; i], the inverse
of all square matrices consisting of the last two dimensions of the tensor are computed.
The result is a tensor of same shape.
If the matrix is not invertible a SingularMatrixException is raised. Use static member pseudoInvert: Tensor<'T> * 'T option -> Tensor<'T> for such matrices instead.
Examples
let a = HostTensor.ofList [[1.0; 2.0]
[3.0; 4.0]]
let c = Tensor.invert a // c = [[-2.0; 1.0]
// [1.5; -0.5]]
Exceptions
| Type | Condition |
|---|---|
| SingularMatrixException | Raised when the matrix is not invertible. |