mindspore.ops.Dense
- class mindspore.ops.Dense[source]
The dense connected fusion operator.
Applies dense connected operator for the input. The implement of the operation is as:
\[output = x @ w ^ T + b,\]where \(x\) is the input tensor, \(w\) is a weight matrix with the same data type as the \(x\) , and \(b\) is a bias vector with the same data type as the \(x\) (only if b is not
None
).- Inputs:
x (Tensor) - The shape must meet the following requirement: \(len(x.shape)>0\).
w (Tensor) - The shape must meet the following requirements: If \(len(x.shape)>1\), \(len(w.shape)=2\). If \(len(x.shape)=1\), \(len(w.shape)=1\). \(w.shape[-1]=x.shape[-1]\).
b (Union[Tensor, None]) - If b is not
None
, the shape must meet the following requirements: If \(len(x.shape)>1\), \(len(b.shape)=0\) or \(len(b.shape)=1\) . If \(len(b.shape)=1\), \(b.shape[0]=w.shape[0]\). If \(len(x.shape)=1\), \(len(b.shape)=0\).
- Outputs:
If \(len(x.shape)>1\), Tensor of shape \((*x.shape[:-1], w.shape[0])\). If \(len(x.shape)=1\), Tensor of shape \(()\).
- Supported Platforms:
Ascend
GPU
CPU
Examples
>>> import numpy as np >>> from mindspore import Tensor, ops >>> x = Tensor(np.random.random((4, 5, 6, 7)).astype(np.float32)) >>> weight = Tensor(np.random.random((6, 7)).astype(np.float32)) >>> bias = Tensor(np.random.random((6,)).astype(np.float32)) >>> dense = ops.Dense() >>> output = dense(x, weight, bias) >>> print(output.shape) (4, 5, 6, 6)