mindspore.ops.primitive

可用于Cell的构造函数的算子。

动态shape的支持情况详见 算子动态shape支持情况 。

bfloat16数据类型的支持情况详见 支持列表 。

算子级并行过程各算子的使用约束详见 算子级并行使用约束 。

模块导入方法如下:

import mindspore.ops as ops

MindSpore中 mindspore.ops.primitive 接口与上一版本相比,新增、删除和支持平台的变化信息请参考 mindspore.ops.primitive API接口变更 。

算子原语

mindspore.ops.Primitive

Primitive是Python中算子原语的基类。

mindspore.ops.PrimitiveWithCheck

PrimitiveWithCheck是Python中原语的基类,定义了检查算子输入参数的函数,但是使用了C++源码中注册的推理方法。

mindspore.ops.PrimitiveWithInfer

PrimitiveWithInfer是Python中的原语基类,在python中定义了跟踪推理的函数。

神经网络层算子

神经网络

接口名

概述

支持平台

警告

mindspore.ops.AvgPool

对输入的多维数据进行二维平均池化运算。

Ascend GPU CPU

无

mindspore.ops.AvgPool3D

对输入的多维数据进行三维的平均池化运算。

Ascend GPU CPU

"kernel_size"在[1, 255]范围中。"strides"在[1, 63]范围中。

mindspore.ops.BatchNorm

对输入数据进行归一化(Batch Normalization)和更新参数。

Ascend GPU CPU

如果该运算用于推理,并且输出"reserve_space_1"和"reserve_space_2"可用,则"reserve_space_1"的值与"mean"相同,"reserve_space_2"的值与"variance"相同。 对于Ascend 310,由于平方根指令,结果精度未能达到1‰。

mindspore.ops.Conv2D

二维卷积层。

Ascend GPU CPU

无

mindspore.ops.Conv2DTranspose

计算二维转置卷积,也称为反卷积,实际不是真正的反卷积。

Ascend GPU CPU

无

mindspore.ops.Conv3D

三维卷积层。

Ascend GPU CPU

无

mindspore.ops.Conv3DTranspose

计算三维转置卷积,也称为反卷积(实际不是真正的反卷积)。

Ascend GPU CPU

无

mindspore.ops.CTCGreedyDecoder

对输入中给定的logits执行贪婪解码。

Ascend GPU CPU

无

mindspore.ops.Dense

更多详情请查看: mindspore.ops.dense() 。

Ascend GPU CPU

无

mindspore.ops.Dropout

Dropout是一种正则化手段,通过在训练中以 \(1 - keep\_prob\) 的概率随机将神经元输出设置为0,起到减少神经元相关性的作用,避免过拟合。

Ascend GPU CPU

无

mindspore.ops.Dropout2D

在训练期间,根据概率 \(1-keep\_prob\) ,随机地将一些通道设置为0,且服从伯努利分布。

Ascend GPU CPU

无

mindspore.ops.Dropout3D

在训练期间,以服从伯努利分布的概率 \(1-keep\_prob\) 随机将输入Tensor的某些通道归零。

Ascend GPU CPU

无

mindspore.ops.DynamicGRUV2

为输入序列应用一个单层GRU(gated recurrent unit)。

Ascend

无

mindspore.ops.DynamicRNN

将循环神经网络应用到输入上。

Ascend

无

mindspore.ops.EmbeddingLookup

根据指定的索引,返回输入Tensor的切片。

Ascend GPU CPU

无

mindspore.ops.Flatten

扁平化(Flatten)输入Tensor,不改变0轴的size。

Ascend GPU CPU

无

mindspore.ops.FractionalMaxPool3DWithFixedKsize

此运算对由多个输入平面组成的输入信号进行3D分数最大池化。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.GridSampler2D

此操作使用基于流场网格的插值对2D input_x 进行采样,该插值通常由 mindspore.ops.affine_grid() 生成。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.GridSampler3D

给定一个输入和一个网格,使用网格中的输入值和像素位置计算输出。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.LayerNorm

在输入Tensor上应用层归一化(Layer Normalization)。

Ascend GPU CPU

无

mindspore.ops.LRN

局部响应归一化操作LRN(Local Response Normalization)。

GPU CPU

LRN在Ascend平台已废弃,存在潜在精度问题。建议使用其他归一化方法,如 mindspore.ops.BatchNorm 代替LRN。

mindspore.ops.LSTM

对输入执行长短期记忆(LSTM)网络。

GPU CPU

无

mindspore.ops.MaxPool

对输入的多维数据进行二维的最大池化运算。

Ascend GPU CPU

无

mindspore.ops.MaxPool3D

对输入的多维数据进行三维的最大池化运算。

Ascend GPU CPU

无

mindspore.ops.MaxPool3DWithArgmax

三维最大值池化,返回最大值结果及其索引值。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MaxUnpool2D

MaxPool2D的逆过程。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MaxUnpool3D

mindspore.ops.MaxPool3D 的逆过程。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MirrorPad

通过指定的填充模式和大小对输入Tensor进行填充。

Ascend GPU CPU

无

mindspore.ops.Pad

根据参数 paddings 对输入进行填充。

Ascend GPU CPU

无

mindspore.ops.Padding

将输入Tensor的最后一个维度从1扩展到 pad_dim_size ,其填充值为0。

Ascend GPU CPU

无

mindspore.ops.ResizeBicubic

使用双三次插值调整图像大小到指定的大小。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.ResizeNearestNeighbor

使用最近邻插值算法调整输入Tensor为指定大小。

Ascend GPU CPU

无

mindspore.ops.UpsampleNearest3D

执行最近邻上采样操作。

Ascend GPU CPU

无

mindspore.ops.UpsampleTrilinear3D

输入为五维度Tensor,跨其中三维执行三线性插值上调采样。

Ascend GPU CPU

无

损失函数

接口名

概述

支持平台

警告

mindspore.ops.BCEWithLogitsLoss

输入经过sigmoid激活函数后作为预测值,BCEWithLogitsLoss 计算预测值和目标值之间的二值交叉熵损失。

Ascend GPU CPU

无

mindspore.ops.BinaryCrossEntropy

计算目标值和预测值之间的二值交叉熵损失值。

Ascend GPU CPU

\(x\) 的值必须在0到1之间。

mindspore.ops.CTCLoss

计算CTC(Connectionist Temporal Classification)损失和梯度。

Ascend GPU CPU

无

mindspore.ops.CTCLossV2

计算CTC(Connectionist Temporal Classification)损失和梯度。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.KLDivLoss

计算输入 logits 和 labels 的KL散度。

Ascend GPU CPU

无

mindspore.ops.L2Loss

用于计算L2范数的一半,但不对结果进行开方操作。

Ascend GPU CPU

无

mindspore.ops.MultilabelMarginLoss

创建一个损失函数,用于最小化多分类任务的合页损失。

Ascend GPU

无

mindspore.ops.MultiMarginLoss

创建一个损失函数,用于优化输入和输出之间的多分类合页损失。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.NLLLoss

获取预测值和目标值之间的负对数似然损失。

Ascend GPU CPU

无

mindspore.ops.RNNTLoss

计算相对于softmax输出的RNNTLoss及其梯度。

Ascend

无

mindspore.ops.SigmoidCrossEntropyWithLogits

计算预测值与真实值之间的sigmoid交叉熵。

Ascend GPU CPU

无

mindspore.ops.SmoothL1Loss

计算平滑L1损失,该L1损失函数有稳健性。

Ascend GPU CPU

无

mindspore.ops.SoftMarginLoss

SoftMarginLoss操作。

Ascend GPU

无

mindspore.ops.SoftmaxCrossEntropyWithLogits

使用one-hot编码获取预测值和真实之间的softmax交叉熵。

Ascend GPU CPU

无

mindspore.ops.SparseSoftmaxCrossEntropyWithLogits

计算预测值和标签之间的稀疏softmax交叉熵。

GPU CPU

无

mindspore.ops.TripletMarginLoss

三元组损失函数。

GPU

无

激活函数

接口名

概述

支持平台

警告

mindspore.ops.CeLU

更多详情请查看: mindspore.ops.celu() 。

Ascend GPU CPU

无

mindspore.ops.Elu

更多详情请查看: mindspore.ops.elu() 。

Ascend GPU CPU

无

mindspore.ops.FastGeLU

更多详情请查看: mindspore.ops.fast_gelu() 。

Ascend GPU CPU

无

mindspore.ops.GeLU

高斯误差线性单元激活函数(Gaussian Error Linear Units activation function)。

Ascend GPU CPU

无

mindspore.ops.GLU

门线性单元函数(Gated Linear Unit function)。

Ascend CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.HShrink

Hard Shrink激活函数。

Ascend GPU CPU

无

mindspore.ops.HSigmoid

分段性逼近激活函数。

Ascend GPU CPU

无

mindspore.ops.HSwish

Hard Swish激活函数。

Ascend GPU CPU

无

mindspore.ops.LogSoftmax

更多详情请查看: mindspore.ops.log_softmax() 。

Ascend GPU CPU

无

mindspore.ops.Mish

逐元素计算输入Tensor的MISH(Self Regularized Non-Monotonic Neural Activation Function 自正则化非单调神经激活函数)。

Ascend GPU CPU

无

mindspore.ops.PReLU

更多详情请查看: mindspore.ops.prelu() 。

Ascend GPU CPU

无

mindspore.ops.ReLU

更多详情请查看: mindspore.ops.relu() 。

Ascend GPU CPU

无

mindspore.ops.ReLU6

更多详情请查看: mindspore.ops.relu6() 。

Ascend GPU CPU

无

mindspore.ops.SeLU

激活函数SeLU(Scaled exponential Linear Unit)。

Ascend GPU CPU

无

mindspore.ops.Sigmoid

更多详情请查看: mindspore.ops.sigmoid() 。

Ascend GPU CPU

无

mindspore.ops.Softmax

在指定轴上使用Softmax函数做归一化操作。

Ascend GPU CPU

无

mindspore.ops.Softplus

Softplus激活函数。

Ascend GPU CPU

无

mindspore.ops.SoftShrink

Soft Shrink激活函数。

Ascend GPU CPU

无

mindspore.ops.Softsign

Softsign激活函数。

Ascend GPU CPU

无

mindspore.ops.Tanh

更多详情请查看: mindspore.ops.tanh() 。

Ascend GPU CPU

无

优化器

接口名

概述

支持平台

警告

mindspore.ops.Adam

通过Adam算法更新梯度。

Ascend GPU CPU

无

mindspore.ops.AdamWeightDecay

通过具有权重衰减的自适应矩估计算法(AdamWeightDecay)更新梯度。

Ascend GPU CPU

无

mindspore.ops.AdaptiveAvgPool2D

二维自适应平均池化。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.AdaptiveAvgPool3D

三维自适应平均池化。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.ApplyAdadelta

根据Adadelta算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.ApplyAdagrad

根据Adagrad算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.ApplyAdagradDA

根据Adagrad算法更新 var 。

Ascend GPU CPU

无

mindspore.ops.ApplyAdagradV2

根据Adagrad算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.ApplyAdaMax

根据AdaMax算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.ApplyAdamWithAmsgradV2

根据Adam算法更新变量var。

Ascend GPU CPU

无

mindspore.ops.ApplyAddSign

根据AddSign算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.ApplyCenteredRMSProp

居中RMSProp算法优化器。

Ascend GPU CPU

在此算法的密集实现中, mean_gradient 、 mean_square 和 moment 在 grad 为零时仍将被更新。但在稀疏实现中, mean_gradient 、 mean_square 和 moment 不会在 grad 为零的迭代中被更新。

mindspore.ops.ApplyFtrl

根据FTRL算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.ApplyGradientDescent

通过从 var 中减去 alpha * delta 来更新 var 。

Ascend GPU CPU

无

mindspore.ops.ApplyMomentum

使用动量算法的优化器。

Ascend GPU CPU

无

mindspore.ops.ApplyPowerSign

根据AddSign算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.ApplyProximalAdagrad

根据Proximal Adagrad算法更新网络参数。

Ascend GPU CPU

无

mindspore.ops.ApplyProximalGradientDescent

根据FOBOS(Forward Backward Splitting)算法更新网络参数。

Ascend GPU CPU

无

mindspore.ops.ApplyRMSProp

实现均方根传播Root Mean Square prop(RMSProp)算法的优化器。

Ascend GPU CPU

在该算法的稠密实现版本中,"mean_square"和"momemt"即使"grad"为零将仍被更新。但在该稀疏实现版本中,在"grad"为零的迭代"mean_squre"和"moment"将不被更新。

mindspore.ops.LARSUpdate

对梯度的平方和应用LARS(layer-wise adaptive rate scaling)算法。

Ascend

无

mindspore.ops.SparseApplyAdagradV2

根据Adagrad算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.SparseApplyProximalAdagrad

根据Proximal Adagrad算法更新网络参数。

Ascend GPU

无

mindspore.ops.SGD

计算随机梯度下降。

Ascend GPU CPU

无

mindspore.ops.SparseApplyFtrl

根据FTRL-proximal算法更新相关参数。

Ascend GPU CPU

无

mindspore.ops.SparseApplyFtrlV2

mindspore.ops.SparseApplyFtrlV2 从2.0版本开始已被弃用,并将在未来版本中被移除,建议使用 mindspore.ops.SparseApplyFtrl 代替。

Deprecated

无

距离函数

接口名

概述

支持平台

警告

mindspore.ops.Cdist

计算两个Tensor的p-norm距离。

Ascend GPU CPU

无

mindspore.ops.EditDistance

计算Levenshtein编辑距离。

Ascend CPU

如果输入 truth_indices 或者 hypothesis_indices 不是有序的, 可能会导致计算结果不符合预期, 建议调用该接口之前确保输入的稀疏张量 truth_indices 和 hypothesis_indices 都是升序排列的。

mindspore.ops.LpNorm

返回输入矩阵或向量的p-范数。

Ascend GPU CPU

无

mindspore.ops.Pdist

计算输入中每对行向量之间的p-范数距离。

GPU CPU

无

采样算子

接口名

概述

支持平台

警告

mindspore.ops.ComputeAccidentalHits

计算与目标类完全匹配的抽样样本的位置id。

Ascend

无

mindspore.ops.LogUniformCandidateSampler

使用log-uniform(Zipfian)分布对一组类别进行采样。

Ascend CPU

无

mindspore.ops.UniformCandidateSampler

使用均匀分布对一组类别进行采样。

Ascend GPU CPU

无

图像处理

接口名

概述

支持平台

警告

mindspore.ops.BoundingBoxDecode

解码边界框位置信息。

Ascend GPU CPU

无

mindspore.ops.BoundingBoxEncode

编码边界框位置信息。

Ascend GPU CPU

无

mindspore.ops.CheckValid

检查边界框。

Ascend GPU CPU

无

mindspore.ops.CropAndResize

从输入图像Tensor中提取切片并调整其大小。

Ascend GPU CPU

无

mindspore.ops.ExtractVolumePatches

ops.ExtractVolumePatches 从2.3版本开始已被弃用,并将在未来版本中被移除。

Deprecated

无

mindspore.ops.IOU

计算矩形的IOU,即真实区域和预测区域的交并比。

Ascend GPU CPU

无

mindspore.ops.L2Normalize

L2范数归一化算子。

Ascend GPU CPU

无

mindspore.ops.NMSWithMask

非极大值抑制算法(NMS, Non-maximum Suppression)。

Ascend GPU CPU

一次最多支持2864个输入框。

mindspore.ops.ResizeBilinearV2

使用双线性插值调整图像大小到指定的大小。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.ROIAlign

感兴趣区域对齐(RoI Align)运算。

Ascend GPU CPU

无

文本处理

接口名

概述

支持平台

警告

mindspore.ops.NoRepeatNGram

n-grams出现重复,则更新对应n-gram词序列出现的概率。

Ascend GPU CPU

无

特征值检测

接口名

概述

支持平台

警告

mindspore.ops.silent_check.ASDBase

ASDBase 是 Python 中具有特征值检测特性的算子的基类。

Ascend

无

数学运算算子

接口名

概述

支持平台

警告

mindspore.ops.Bincount

计算整数数组中每个值的出现次数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Cholesky

计算单个或成批对称正定矩阵的Cholesky分解。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Complex

给定复数的实部与虚部,返回一个复数的Tensor。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.ComplexAbs

返回输入复数的模。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Cross

返回 x1 和 x2 沿着维度 dim 上的向量积(叉积)。

Ascend CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.FFTWithSize

傅里叶变换,可以对参数进行调整,以实现FFT/IFFT/RFFT/IRFFT。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Gcd

更多详情请查看: mindspore.ops.gcd() 。

Ascend GPU CPU

无

逐元素运算

接口名

概述

支持平台

警告

mindspore.ops.Abs

更多详情请查看: mindspore.ops.abs() 。

Ascend GPU CPU

无

mindspore.ops.AccumulateNV2

逐元素将所有输入的Tensor相加。

Ascend GPU

无

mindspore.ops.ACos

更多详情请查看: mindspore.ops.acos() 。

Ascend GPU CPU

无

mindspore.ops.Acosh

更多详情请查看: mindspore.ops.acosh() 。

Ascend GPU CPU

无

mindspore.ops.Add

更多详情请查看: mindspore.ops.add() 。

Ascend GPU CPU

无

mindspore.ops.Addcdiv

将 x1 和 x2 的逐元素相除的结果乘以 value ,并将其添加到 input_data 中。

Ascend GPU CPU

无

mindspore.ops.Addcmul

将 x1 和 x2 的逐元素相乘的结果乘以 value ,并将其添加到 input_data 中。

Ascend GPU CPU

无

mindspore.ops.AddN

逐元素将所有输入的Tensor相加。

Ascend GPU CPU

无

mindspore.ops.Angle

更多详情请查看: mindspore.ops.angle() 。

Ascend GPU CPU

无

mindspore.ops.Asin

更多详情请查看: mindspore.ops.asin() 。

Ascend GPU CPU

无

mindspore.ops.Asinh

更多详情请查看: mindspore.ops.asinh() 。

Ascend GPU CPU

无

mindspore.ops.Atan

更多详情请查看: mindspore.ops.atan() 。

Ascend GPU CPU

无

mindspore.ops.Atan2

更多详情请查看: mindspore.ops.atan2() 。

Ascend GPU CPU

无

mindspore.ops.Atanh

更多详情请查看: mindspore.ops.atanh() 。

Ascend GPU CPU

无

mindspore.ops.BesselI0

逐元素计算第一类零阶修正Bessel函数值。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselI0e

逐元素计算指数缩放第一类零阶修正贝塞尔函数。

Ascend GPU CPU

无

mindspore.ops.BesselI1

逐元素计算第一类一阶修正Bessel函数值。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselI1e

逐元素计算指数缩放第一类一阶修正贝塞尔函数。

Ascend GPU CPU

无

mindspore.ops.BesselJ0

逐元素计算输入数据的第一类零阶的Bessel函数。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselJ1

逐元素计算输入数据的第一类一阶的Bessel函数。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselK0

逐元素计算第二类零阶修正Bessel函数值。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselK0e

逐元素计算指数缩放第二类零阶修正Bessel函数值。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselK1

逐元素计算第二类一阶修正Bessel函数值。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselK1e

逐元素计算指数缩放第二类一阶修正Bessel函数值。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselY0

逐元素计算输入数据的第二类零阶Bessel函数。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BesselY1

逐元素计算输入数据的第二类一阶Bessel函数。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BitwiseAnd

逐元素执行两个Tensor的与运算。

Ascend GPU CPU

无

mindspore.ops.BitwiseOr

逐元素执行两个Tensor的或运算。

Ascend GPU CPU

无

mindspore.ops.BitwiseXor

逐元素执行两个Tensor的异或运算。

Ascend GPU CPU

无

mindspore.ops.Ceil

更多详情请查看: mindspore.ops.ceil() 。

Ascend GPU CPU

无

mindspore.ops.Conj

更多详情请查看: mindspore.ops.conj() 。

Ascend GPU CPU

无

mindspore.ops.Cos

更多详情请查看: mindspore.ops.cos() 。

Ascend GPU CPU

无

mindspore.ops.Cosh

更多详情请查看: mindspore.ops.cosh() 。

Ascend GPU CPU

无

mindspore.ops.Digamma

计算输入的lgamma函数的导数。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Div

逐元素计算第一输入Tensor除以第二输入Tensor的商。

Ascend GPU CPU

无

mindspore.ops.DivNoNan

对 x1 和 x2 逐元素执行安全除法,如果 x2 的元素为0,则返回0。

Ascend GPU CPU

无

mindspore.ops.Einsum

此算子使用爱因斯坦求和约定(Einsum)进行Tensor计算。

GPU

无

mindspore.ops.Erf

更多详情请查看: mindspore.ops.erf() 。

Ascend GPU CPU

无

mindspore.ops.Erfc

更多详情请查看: mindspore.ops.erfc() 。

Ascend GPU CPU

无

mindspore.ops.Erfinv

更多详情请查看: mindspore.ops.erfinv() 。

Ascend GPU CPU

无

mindspore.ops.Exp

更多详情请查看: mindspore.ops.exp() 。

Ascend GPU CPU

无

mindspore.ops.Expm1

更多详情请查看: mindspore.ops.expm1() 。

Ascend GPU CPU

无

mindspore.ops.Floor

更多详情请查看: mindspore.ops.floor() 。

Ascend GPU CPU

无

mindspore.ops.FloorDiv

更多详情请查看: mindspore.ops.floor_divide() 。

Ascend GPU CPU

无

mindspore.ops.FloorMod

更多详情请查看: mindspore.ops.floor_mod() 。

Ascend GPU CPU

无

mindspore.ops.Geqrf

更多详情请查看: mindspore.ops.geqrf() 。

Ascend GPU CPU

无

mindspore.ops.Imag

返回包含输入Tensor的虚部。

Ascend GPU CPU

无

mindspore.ops.Inv

按元素计算输入Tensor的倒数。

Ascend GPU CPU

无

mindspore.ops.Invert

翻转输入Tensor的所有元素。

Ascend GPU CPU

无

mindspore.ops.Lerp

基于权重参数计算两个Tensor之间的线性插值。

Ascend GPU CPU

无

mindspore.ops.Log

更多详情请查看: mindspore.ops.log() 。

Ascend GPU CPU

无

mindspore.ops.Log1p

更多详情请查看: mindspore.ops.log1p() 。

Ascend GPU CPU

无

mindspore.ops.LogicalAnd

逐元素计算两个Tensor的逻辑与运算。

Ascend GPU CPU

无

mindspore.ops.LogicalNot

逐元素计算一个Tensor的逻辑非运算。

Ascend GPU CPU

无

mindspore.ops.LogicalOr

逐元素计算两个Tensor的逻辑或运算。

Ascend GPU CPU

无

mindspore.ops.LogicalXor

逐元素计算两个Tensor的逻辑异或运算。

Ascend CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Logit

逐元素计算Tensor的logit值。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Mod

将第一个输入Tensor逐元素除以第二个输入Tensor,并取余。

Ascend GPU CPU

输入数据不支持0。 当输出包含的元素个数超过2048时,该算子不能保证双千分之一的精度要求。 由于架构的差异,在NPU和CPU上生成的结果可能不一致。 如果shape表示为 \((D1, D2, ..., Dn)\) ,则 \(D1*D2... *DN<=1000000,n<=8\) 。

mindspore.ops.Mul

更多详情请查看: mindspore.ops.mul() 。

Ascend GPU CPU

无

mindspore.ops.MulNoNan

逐元素计算输入乘积。

Ascend GPU CPU

无

mindspore.ops.Neg

更多详情请查看: mindspore.ops.neg() 。

Ascend GPU CPU

无

mindspore.ops.NextAfter

更多详情请查看: mindspore.ops.nextafter() 。

Ascend GPU CPU

无

mindspore.ops.Polar

将极坐标转化为笛卡尔坐标。

GPU CPU

无

mindspore.ops.Polygamma

计算关于 x 的多伽马函数的 \(a\) 阶导数。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Pow

更多详情请查看: mindspore.ops.pow() 。

Ascend GPU CPU

无

mindspore.ops.Real

更多详情请查看: mindspore.ops.real() 。

Ascend GPU CPU

无

mindspore.ops.RealDiv

第一个输入Tensor元素为分子,第二个输入Tensor元素为分母,逐元素进行浮点型除法运算。

Ascend GPU CPU

无

mindspore.ops.Reciprocal

返回输入Tensor的倒数。

Ascend GPU CPU

无

mindspore.ops.Rint

逐元素计算最接近输入数据的整数。

Ascend GPU CPU

无

mindspore.ops.Round

更多详情请查看: mindspore.ops.round() 。

Ascend GPU CPU

无

mindspore.ops.Rsqrt

更多详情请查看: mindspore.ops.rsqrt() 。

Ascend GPU CPU

无

mindspore.ops.Sign

符号函数,计算输入Tensor元素的执行符号。

Ascend GPU CPU

无

mindspore.ops.Sin

更多详情请查看: mindspore.ops.sin() 。

Ascend GPU CPU

无

mindspore.ops.Sinc

更多详情请查看: mindspore.ops.sinc() 。

Ascend GPU CPU

无

mindspore.ops.Sinh

更多详情请查看: mindspore.ops.sinh() 。

Ascend GPU CPU

无

mindspore.ops.Sqrt

更多详情请查看: mindspore.ops.sqrt() 。

Ascend GPU CPU

无

mindspore.ops.Square

更多详情请查看: mindspore.ops.square() 。

Ascend GPU CPU

无

mindspore.ops.SquaredDifference

第一个输入Tensor元素中减去第二个输入Tensor,并返回其平方。

Ascend GPU CPU

无

mindspore.ops.SquareSumAll

计算输入Tensor的平方和。

Ascend GPU CPU

无

mindspore.ops.Sub

逐元素用第一个输入Tensor减去第二个输入Tensor。

Ascend GPU CPU

无

mindspore.ops.Tan

逐元素计算输入元素的正切值。

Ascend GPU CPU

无

mindspore.ops.Trunc

返回一个新的张量,该张量具有输入元素的截断整数值。

Ascend GPU CPU

无

mindspore.ops.TruncateDiv

将第一个输入Tensor与第二个输入Tensor逐元素相除,结果将向0取整。

Ascend GPU CPU

无

mindspore.ops.TruncateMod

逐元素取模。

Ascend GPU CPU

输入数值不能为0。 当输入含有超过2048个元素,该操作不能保证千分之二的精度要求。 由于架构不同,该算子在NPU和CPU上的计算结果可能不一致。 若shape为(D1、D2...、Dn),则D1*D2...*DN<=1000000,n<=8。

mindspore.ops.Xdivy

将第一个输入Tensor除以第二个输入Tensor。

Ascend GPU CPU

无

mindspore.ops.Xlogy

计算第一个输入Tensor乘以第二个输入Tensor的对数。

Ascend GPU CPU

无

mindspore.ops.Zeta

计算输入Tensor的Hurwitz zeta函数ζ(x,q)值。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

Reduction算子

接口名

概述

支持平台

警告

mindspore.ops.Argmax

返回输入Tensor在指定轴上的最大值索引。

Ascend GPU CPU

无

mindspore.ops.ArgMaxWithValue

在给定轴上计算输入Tensor的最大值,并且返回最大值和索引。

Ascend GPU CPU

如果有多个最大值,则取第一个最大值的索引。 axis 的取值范围为[-dims, dims - 1]。"dims"为 input 的维度长度。

mindspore.ops.Argmin

返回输入Tensor在指定轴上的最小值索引。

Ascend GPU CPU

无

mindspore.ops.ArgMinWithValue

在给定轴上计算输入Tensor的最小值,并且返回最小值和索引。

Ascend GPU CPU

如果有多个最小值,则取第一个最小值的索引。 axis 的取值范围为[-dims, dims - 1]。"dims"为 input 的维度长度。

mindspore.ops.Median

输出Tensor指定维度 axis 上的中值与其对应的索引。

GPU CPU

如果 input 的中值不唯一时(输入中有重复值且重复值恰好为中值), indices 不一定包含第一个出现的中值。 indices 包含的索引与该算子的具体实现方式和后端类型相关,因此某些情况下,CPU和GPU的返回值可能不相同。 如果 global_median 为 True , 第二个输出 indices 无意义。

mindspore.ops.ReduceAll

更多详情请查看: mindspore.ops.all() 。

Ascend GPU CPU

无

mindspore.ops.ReduceAny

默认情况下,通过对指定维度所有元素进行逻辑或运算来移除该维度。

Ascend GPU CPU

无

mindspore.ops.ReduceMax

默认情况下,使用指定维度的最大值代替该维度的其他元素,以移除该维度。

Ascend GPU CPU

无

mindspore.ops.ReduceMean

默认情况下,使用指定维度的平均值代替该维度的其他元素,以移除该维度。

Ascend GPU CPU

无

mindspore.ops.ReduceMin

默认情况下,使用指定维度的最小值代替该维度的其他元素,以移除该维度。

Ascend GPU CPU

无

mindspore.ops.ReduceProd

默认情况下,使用指定维度所有元素的乘积代替该维度的其他元素,以移除该维度。

Ascend GPU CPU

无

mindspore.ops.ReduceSum

默认情况下,输出Tensor各维度上的和,以达到对所有维度进行归约的目的。

Ascend GPU CPU

无

比较算子

接口名

概述

支持平台

警告

mindspore.ops.ApproximateEqual

逐元素计算abs(x-y),如果小于tolerance则为True,否则为False。

Ascend GPU CPU

无

mindspore.ops.Equal

更多详情请查看: mindspore.ops.equal() 。

Ascend GPU CPU

无

mindspore.ops.EqualCount

计算两个Tensor的相同元素的数量。

Ascend GPU CPU

无

mindspore.ops.Greater

更多详情请查看: mindspore.ops.greater() 。

Ascend GPU CPU

无

mindspore.ops.GreaterEqual

更多详情请查看: mindspore.ops.greater_equal() 。

Ascend GPU CPU

无

mindspore.ops.InTopK

判断目标标签是否在前 k 个预测中。

Ascend GPU CPU

无

mindspore.ops.IsFinite

更多详情请查看: mindspore.ops.isfinite() 。

Ascend GPU CPU

无

mindspore.ops.IsInf

确定输入Tensor每个位置上的元素是否为无穷大或无穷小。

Ascend GPU CPU

无

mindspore.ops.IsNan

判断输入数据每个位置上的值是否是NaN。

Ascend GPU CPU

无

mindspore.ops.Less

更多详情请查看: mindspore.ops.less() 。

Ascend GPU CPU

无

mindspore.ops.LessEqual

更多详情请查看: mindspore.ops.less_equal() 。

Ascend GPU CPU

无

mindspore.ops.Maximum

更多详情请查看: mindspore.ops.maximum() 。

Ascend GPU CPU

无

mindspore.ops.Minimum

更多详情请查看: mindspore.ops.minimum() 。

Ascend GPU CPU

无

mindspore.ops.NotEqual

更多详情请查看: mindspore.ops.not_equal() 。

Ascend GPU CPU

无

mindspore.ops.TopK

沿最后一个维度查找 k 个最大元素和对应的索引。

Ascend GPU CPU

如果 sorted 设置为 False ,它将使用aicpu运算符,性能可能会降低,另外,由于在不同平台上存在内存排布以及遍历方式不同等问题,sorted 设置为 False 时计算结果的显示顺序可能会出现不一致的情况。

线性代数算子

接口名

概述

支持平台

警告

mindspore.ops.BatchMatMul

基于batch维度的两个Tensor的矩阵乘法。

Ascend GPU CPU

无

mindspore.ops.BiasAdd

返回输入Tensor与偏置Tensor之和。

Ascend GPU CPU

无

mindspore.ops.Ger

计算两个一维Tensor的外积。

Ascend GPU CPU

无

mindspore.ops.MatMul

将矩阵 a 和矩阵 b 相乘。

Ascend GPU CPU

无

mindspore.ops.MatrixInverse

计算输入矩阵的逆矩阵。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Ormqr

计算一个普通矩阵与Householder矩阵的乘积。

GPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Orgqr

计算 mindspore.ops.Geqrf 返回的正交矩阵 \(Q\) 的显式表示。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Svd

计算一个或多个矩阵的奇异值分解。

GPU CPU

无

Tensor操作算子

Tensor创建

接口名

概述

支持平台

警告

mindspore.ops.Eps

创建一个与输入数据类型和shape都相同的Tensor,元素值为对应数据类型能表达的最小值。

Ascend GPU CPU

无

mindspore.ops.Eye

创建一个主对角线上元素为1,其余元素为0的Tensor。

Ascend GPU CPU

无

mindspore.ops.Fill

Fill接口已弃用, 请使用 mindspore.ops.FillV2 。

Deprecated

无

mindspore.ops.LinSpace

返回一个在区间 start 和 stop (包括 start 和 stop )内均匀分布的,包含 num 个值的一维Tensor。

Ascend GPU CPU

无

mindspore.ops.OneHot

返回一个one-hot类型的Tensor。

Ascend GPU CPU

无

mindspore.ops.Ones

创建一个值全为1的Tensor。

Ascend GPU CPU

参数 shape 在后续版本中将不再支持Tensor类型的输入。

mindspore.ops.OnesLike

返回值为1的Tensor,shape和数据类型与输入相同。

Ascend GPU CPU

无

mindspore.ops.Zeros

创建一个值全为0的Tensor。

Ascend GPU CPU

参数 shape 在后续版本中将不再支持Tensor类型的输入。

mindspore.ops.ZerosLike

返回值为0的Tensor,其shape和数据类型与输入Tensor相同。

Ascend GPU CPU

无

随机生成算子

接口名

概述

支持平台

警告

mindspore.ops.Bernoulli

以 p 的概率随机将输出的元素设置为0或1,服从伯努利分布。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Gamma

根据概率密度函数分布生成随机正值浮点数x。

Ascend

无

mindspore.ops.Multinomial

返回从输入Tensor对应行进行多项式概率分布采样出的Tensor。

Ascend GPU CPU

无

mindspore.ops.MultinomialWithReplacement

返回一个Tensor,其中每行包含从重复采样的多项式分布中抽取的 numsamples 个索引。

CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.RandomCategorical

从分类分布中抽取样本。

Ascend GPU CPU

无

mindspore.ops.RandomChoiceWithMask

对输入进行随机取样,返回取样索引和掩码。

Ascend GPU CPU

无

mindspore.ops.RandomGamma

根据概率密度函数分布生成随机正值浮点数x。

CPU

无

mindspore.ops.RandomPoisson

根据离散概率密度函数分布生成随机非负数浮点数i。

GPU CPU

无

mindspore.ops.Randperm

生成从0到n-1不重复的n个随机样本。

Ascend GPU

无

mindspore.ops.RandpermV2

更多详情请查看: mindspore.ops.randperm() 。

CPU

无

mindspore.ops.StandardLaplace

生成符合标准Laplace(mean=0, lambda=1)分布的随机数。

Ascend GPU CPU

无

mindspore.ops.StandardNormal

根据标准正态(高斯)随机数分布生成随机数。

Ascend GPU CPU

无

mindspore.ops.UniformInt

根据均匀分布在区间 [minval, maxval) 中生成随机数。

Ascend GPU CPU

无

mindspore.ops.UniformReal

产生随机的浮点数,均匀分布在[0, 1)范围内。

Ascend GPU CPU

无

Array操作

接口名

概述

支持平台

警告

mindspore.ops.AffineGrid

基于一批仿射矩阵 theta 生成一个2D 或 3D 的流场(采样网格)。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BatchToSpace

将批处理数据重新排列到空间数据中。

Ascend GPU

无

mindspore.ops.BatchToSpaceND

mindspore.ops.BatchToSpaceND 从2.0版本开始已被弃用,并将在未来版本中被移除,建议使用 mindspore.ops.batch_to_space_nd() 代替。

Deprecated

无

mindspore.ops.BroadcastTo

更多详情请查看: mindspore.ops.broadcast_to() 。

Ascend GPU CPU

无

mindspore.ops.Cast

转换输入Tensor的数据类型。

Ascend GPU CPU

无

mindspore.ops.ChannelShuffle

将shape为 \((*, C, H, W)\) 的Tensor的通道划分成 \(g\) 组,并按如下方式重新排列 \((*, \frac C g, g, H*W)\) ,同时保持原始Tensor的shape不变。

Ascend CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Col2Im

将一个行向量重新排列成图像。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Concat

更多详情请查看: mindspore.ops.cat() 。

Ascend GPU CPU

无

mindspore.ops.Cummax

更多详情请查看: mindspore.ops.cummax() 。

GPU CPU

无

mindspore.ops.Cummin

返回输入Tensor在指定轴上的累积最小值与其对应的索引。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.CumProd

计算 x 沿着指定axis的元素累计积。

Ascend GPU CPU

无

mindspore.ops.CumSum

计算输入Tensor在指定轴上的累加和。

Ascend GPU CPU

无

mindspore.ops.DataFormatDimMap

返回源数据格式中的目标数据格式的维度索引。

Ascend GPU CPU

无

mindspore.ops.DepthToSpace

将深度数据重新排列到空间维度中。

Ascend GPU CPU

无

mindspore.ops.Diag

更多详情请查看: mindspore.ops.diag() 。

Ascend GPU CPU

无

mindspore.ops.DType

计算输入Tensor的数据类型,且返回的数据类型为 mindspore.dtype 。

Ascend GPU CPU

无

mindspore.ops.ExpandDims

更多详情请查看: mindspore.ops.expand_dims() 。

Ascend GPU CPU

无

mindspore.ops.FillDiagonal

填充至少具有二维的Tensor的主对角线。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.FillV2

创建一个Tensor,其shape由 shape 指定,其值则由 value 进行填充。

Ascend GPU CPU

无

mindspore.ops.FloatStatus

确定元素是否包含非数字(NaN)、正无穷还是负无穷。

GPU

无

mindspore.ops.Fmax

逐元素计算输入Tensor的最大值。

CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Gather

更多详情请查看: mindspore.ops.gather() 。

Ascend GPU CPU

无

mindspore.ops.GatherD

更多详情请查看: mindspore.ops.gather_d() 。

Ascend GPU CPU

无

mindspore.ops.GatherNd

更多详情请查看: mindspore.ops.gather_nd() 。

Ascend GPU CPU

无

mindspore.ops.HammingWindow

使用输入窗口长度计算汉明窗口函数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Heaviside

计算输入中每个元素的Heaviside步长函数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.HistogramFixedWidth

返回一个rank为1的直方图,该直方图中的每个组的值表示数量。

Ascend GPU

无

mindspore.ops.Hypot

将输入Tensor的逐个元素作为直角三角形的直角边,并计算其斜边的值。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Identity

更多详情请查看: mindspore.ops.deepcopy() 。

Ascend GPU CPU

无

mindspore.ops.Igamma

计算正则化的下层不完全伽马函数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Igammac

计算正则化的上层不完全伽马函数。

Ascend GPU CPU

无

mindspore.ops.Im2Col

从一个batch的输入Tensor中提取滑动局部块。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.IndexAdd

将Tensor y 加到Tensor x 的指定 axis 和 indices 。

Ascend GPU CPU

无

mindspore.ops.IndexFill

按 index 中给定的顺序选择索引,将输入Tensor x 的 dim 维度下的元素用 value 的值填充。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.IndexPut

根据 indices 中的下标值,使用 x2 中的数值替换 x1 中的相应元素的值。

Ascend CPU

无

mindspore.ops.InplaceAdd

将 input_v 添加到 x 的特定行。

Ascend GPU CPU

无

mindspore.ops.InplaceIndexAdd

逐元素将一个Tensor updates 添加到原Tensor var 的指定轴和索引处。

Ascend CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.InplaceSub

从 x 的特定行减去 input_v 。

Ascend GPU CPU

无

mindspore.ops.InplaceUpdate

InplaceUpdate接口已废弃,请使用接口 mindspore.ops.InplaceUpdateV2 替换,废弃版本2.0。

Deprecated

无

mindspore.ops.InplaceUpdateV2

根据 indices,将 x 中的某些值更新为 v。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.InvertPermutation

计算索引的逆置换。

Ascend GPU CPU

无

mindspore.ops.IsClose

返回一个bool型Tensor,表示 input 的每个元素与 other 的每个元素在给定容忍度内是否“接近”。

Ascend GPU CPU

无

mindspore.ops.Lcm

逐个元素计算输入Tensor的最小公倍数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.LeftShift

将Tensor每个位置的值向左移动若干个比特位。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.LogSpace

返回一个大小为 steps 的1-D Tensor,其值从 \(base^{start}\) 到 \(base^{end}\) ,以 base 为底数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.LuUnpack

将 LU_data 和 LU_pivots 还原为为P, L, U矩阵,其中P为置换矩阵,L为下三角矩阵,U为上三角矩阵。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MaskedFill

更多详情请查看: mindspore.ops.masked_fill() 。

Ascend GPU CPU

无

mindspore.ops.MaskedScatter

返回一个Tensor。

Ascend CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MaskedSelect

返回一个一维张量,其中的内容是 x 张量中对应于 mask 张量中True位置的值。

Ascend GPU CPU

无

mindspore.ops.MatrixBandPart

提取一个Tensor中每个矩阵的中心带,中心带之外的所有值都设置为零。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MatrixDiagPartV3

返回Tensor的对角线部分。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MatrixDiagV3

构造以输入Tensor为对角线的矩阵。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MatrixSetDiagV3

更新批处理矩阵对角线的值。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.MatrixSolve

求解线性方程组。

Ascend CPU

无

mindspore.ops.Meshgrid

从给定的Tensor生成网格矩阵。

Ascend GPU CPU

无

mindspore.ops.Mvlgamma

逐元素计算 p 维多元对数伽马函数值。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.NanToNum

将输入中的 NaN 、正无穷大和负无穷大值分别替换为 nan 、 posinf 和 neginf 指定的值。

Ascend CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.NonZero

返回所有非零元素的索引位置。

Ascend GPU CPU

无

mindspore.ops.ParallelConcat

根据第一个维度连接输入Tensor。

Ascend GPU CPU

无

mindspore.ops.PopulationCount

计算二进制数中1的个数。

Ascend GPU CPU

无

mindspore.ops.RandomShuffle

沿着Tensor的第一个维度进行随机打乱操作。

Ascend GPU CPU

无

mindspore.ops.Range

更多详情请查看: mindspore.ops.range() 。

GPU CPU

无

mindspore.ops.Rank

返回输入Tensor的秩。

Ascend GPU CPU

无

mindspore.ops.Renorm

对Tensor沿着指定维度 dim 进行重新规范化,要求每个子Tensor的 p 范数不超过 maxnorm 。

Ascend GPU CPU

无

mindspore.ops.Reshape

更多详情请查看: mindspore.ops.reshape() 。

Ascend GPU CPU

无

mindspore.ops.ReverseSequence

对输入序列进行部分反转。

Ascend GPU CPU

无

mindspore.ops.ReverseV2

更多详情请查看: mindspore.ops.flip() 。

Ascend GPU CPU

无

mindspore.ops.RightShift

将Tensor input_x 的每个元素右移 Tensor input_y 中对应位数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.ScatterNd

更多详情请查看: mindspore.ops.scatter_nd() 。

Ascend GPU CPU

无

mindspore.ops.ScatterNdDiv

将稀疏除法应用于张量中的单个值或切片。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.ScatterNdMax

对张量中的单个值或切片应用稀疏最大值。

Ascend GPU CPU

无

mindspore.ops.ScatterNdMin

对张量中的单个值或切片应用稀疏最小值。

Ascend GPU CPU

无

mindspore.ops.ScatterNdMul

对张量中的单个值或切片应用稀疏乘法。

GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.SearchSorted

返回位置索引,根据这个索引将 values 插入 sorted_sequence 后,sorted_sequence 的元素大小顺序保持不变。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Select

更多详情请查看: mindspore.ops.select() 。

Ascend GPU CPU

无

mindspore.ops.Shape

返回输入Tensor的shape。

Ascend GPU CPU

无

mindspore.ops.Size

返回一个Scalar,类型为整数,表示输入Tensor的大小,即Tensor中元素的总数。

Ascend GPU CPU

无

mindspore.ops.Slice

根据指定shape对输入Tensor进行切片。

Ascend GPU CPU

无

mindspore.ops.Sort

根据指定的轴对输入Tensor的元素进行排序,默认为升序排序。

Ascend GPU CPU

目前仅支持float16、uint8、int8、int16、int32、int64数据类型。如果使用float32类型可能导致数据精度损失。

mindspore.ops.SpaceToBatchND

将空间维度划分为对应大小的块,并在批次维度重排张量。

Ascend GPU CPU

无

mindspore.ops.SpaceToDepth

将空间维度分块,增加Tensor深度。

Ascend GPU CPU

无

mindspore.ops.SparseGatherV2

基于指定的索引和axis返回输入Tensor的切片。

Ascend GPU

无

mindspore.ops.Split

根据指定的轴和分割数量对输入Tensor进行分割。

Ascend GPU CPU

无

mindspore.ops.Squeeze

返回删除指定 axis 中大小为1的维度后的Tensor。

Ascend GPU CPU

无

mindspore.ops.Stack

在指定轴上对输入Tensor序列进行堆叠。

Ascend GPU CPU

无

mindspore.ops.StridedSlice

更多详情请查看: mindspore.ops.strided_slice() 。

Ascend GPU CPU

无

mindspore.ops.TensorScatterAdd

根据指定的更新值 updates 和输入索引 indices ,使用加法运算更新输入Tensor的值。

Ascend GPU CPU

无

mindspore.ops.TensorScatterDiv

根据指定的更新值 updates 和输入索引 indices ,进行除法运算更新输入Tensor的值。

GPU CPU

无

mindspore.ops.TensorScatterMax

根据指定的更新值 updates 和输入索引 indices ,通过最大值运算将结果赋值到输出Tensor中。

GPU CPU

无

mindspore.ops.TensorScatterMin

根据指定的更新值 updates 和输入索引 indices ,计算原值与更新值的较小值并更新原值,返回更新后的Tensor。

Ascend GPU CPU

无

mindspore.ops.TensorScatterMul

根据指定的更新值 updates 和输入索引 indices ,使用乘法运算更新输入Tensor的值。

GPU CPU

无

mindspore.ops.TensorScatterSub

根据指定的更新值 input_x 和输入索引 indices,进行减法运算更新输出Tensor的值。

Ascend GPU CPU

无

mindspore.ops.TensorScatterUpdate

根据指定的更新值 update 和输入索引 indices ,通过更新操作更新输出Tensor的值。

Ascend GPU CPU

无

mindspore.ops.TensorShape

返回输入Tensor的Shape。

Ascend GPU CPU

无

mindspore.ops.Tile

按照给定的次数复制输入Tensor。

Ascend GPU CPU

无

mindspore.ops.Trace

更多详情请查看: mindspore.ops.trace() 。

Ascend GPU CPU

无

mindspore.ops.Transpose

更多详情请查看: mindspore.ops.transpose() 。

Ascend GPU CPU

无

mindspore.ops.Tril

返回单个或一批二维矩阵下三角形部分,其他位置的元素将被置零。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.TrilIndices

计算 row * col 行列矩阵的下三角元素的索引,并将它们作为一个 2xN 的Tensor返回。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Triu

更多详情请查看: mindspore.ops.triu() 。

Ascend GPU CPU

无

mindspore.ops.TriuIndices

计算 row * col 行列矩阵的上三角元素的索引,并将它们作为一个 2xN 的Tensor返回。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.Unique

返回输入Tensor的唯一元素以及其对应的每个值的索引。

Ascend GPU CPU

无

mindspore.ops.UniqueConsecutive

对输入张量中连续且重复的元素去重。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.UniqueWithPad

对输入一维张量中元素去重,返回一维张量中的唯一元素(使用pad_num填充)和相对索引。

Ascend GPU CPU

无

mindspore.ops.UnsortedSegmentMax

沿分段计算输入Tensor的最大值。

Ascend GPU CPU

无

mindspore.ops.UnsortedSegmentMin

沿分段计算输入Tensor的最小值。

Ascend GPU CPU

无

mindspore.ops.UnsortedSegmentProd

沿分段计算输入Tensor元素的乘积。

Ascend GPU CPU

无

mindspore.ops.UnsortedSegmentSum

更多详情请查看: mindspore.ops.unsorted_segment_sum() 。

Ascend GPU CPU

无

mindspore.ops.Unstack

根据指定轴对输入矩阵进行分解,与Stack函数操作相反。

Ascend GPU CPU

无

类型转换

接口名

概述

支持平台

警告

mindspore.ops.ScalarCast

ops.ScalarCast 从2.3版本开始已被弃用,并将在未来版本中被移除,建议使用 int(x) 或 float(x) 代替。

弃用

无

mindspore.ops.ScalarToTensor

将Scalar转换为指定数据类型的 Tensor 。

Ascend GPU CPU

无

mindspore.ops.TupleToArray

将tuple转换为Tensor。

Ascend GPU CPU

无

Parameter操作算子

接口名

概述

支持平台

警告

mindspore.ops.Assign

更多详情请查看: mindspore.ops.assign() 。

Ascend GPU CPU

无

mindspore.ops.AssignAdd

更多详情请查看: mindspore.ops.assign_add() 。

Ascend GPU CPU

无

mindspore.ops.AssignSub

从网络参数减去特定数值来更新网络参数。

Ascend GPU CPU

无

mindspore.ops.ScatterAdd

根据指定更新值和输入索引通过加法运算更新输入数据的值。

Ascend GPU CPU

无

mindspore.ops.ScatterDiv

通过除法操作更新输入张量的值。

Ascend GPU CPU

无

mindspore.ops.ScatterMax

通过最大操作更新输入张量的值。

Ascend GPU CPU

无

mindspore.ops.ScatterMin

通过最小操作更新输入张量的值。

Ascend GPU CPU

无

mindspore.ops.ScatterMul

根据指定更新值和输入索引通过乘法运算更新输入数据的值。

Ascend GPU CPU

无

mindspore.ops.ScatterNdAdd

使用给定值通过加法运算和输入索引更新Tensor值。

Ascend GPU CPU

无

mindspore.ops.ScatterNdSub

使用给定值通过减法运算和输入索引更新Tensor值。

Ascend GPU CPU

无

mindspore.ops.ScatterNdUpdate

使用给定值以及输入索引更新输入数据的值。

Ascend GPU CPU

无

mindspore.ops.ScatterNonAliasingAdd

ScatterNonAliasingAdd接口已废弃,请使用接口 mindspore.ops.TensorScatterAdd 替换,废弃版本2.1。

Deprecated

无

mindspore.ops.ScatterSub

使用给定更新值通过减法操作和输入索引来更新Tensor值。

Ascend GPU CPU

无

mindspore.ops.ScatterUpdate

使用给定的更新值和输入索引更新输入Tensor的值。

Ascend GPU CPU

无

数据操作算子

接口名

概述

支持平台

警告

mindspore.ops.GetNext

返回数据集队列中的下一个元素。

Ascend GPU

无

通信算子

在分布式训练中进行数据传输涉及通信操作,详情请参考 分布式集合通信原语 。

注意,以下列表中的接口需要先配置好通信环境变量。

针对Ascend/GPU/CPU设备,推荐使用msrun启动方式,无第三方以及配置文件依赖。详见 msrun启动 。

接口名

概述

支持平台

警告

mindspore.ops.AllGather

在指定的通信组中汇聚Tensor,返回汇聚后的张量。

Ascend GPU

无

mindspore.ops.AllReduce

使用指定方式对通信组内的所有设备的Tensor数据进行规约操作,所有设备都得到相同的结果,返回规约操作后的张量。

Ascend GPU CPU

无

mindspore.ops.AlltoAll

AlltoAll是一个集合通信函数。

Ascend

无

mindspore.ops.Barrier

同步通信域内的多个进程。

Ascend

无

mindspore.ops.Broadcast

对输入数据整组广播。

Ascend GPU

无

mindspore.ops.CollectiveGather

对通信组的输入张量进行聚合。

Ascend

无

mindspore.ops.CollectiveScatter

对输入数据的数据进行均匀散射到通信域的卡上。

Ascend

无

mindspore.ops.NeighborExchangeV2

NeighborExchangeV2是一个集合通讯操作。

Ascend

无

mindspore.ops.Receive

接收来自 src_rank 线程的张量。

Ascend GPU

无

mindspore.ops.ReduceOp

规约张量的操作选项。

Ascend GPU

无

mindspore.ops.ReduceScatter

规约并且分发指定通信组中的张量,返回分发后的张量。

Ascend GPU

无

mindspore.ops.Reduce

规约指定通信组中的张量,并将规约结果发送到目标为dest_rank的进程中,返回发送到目标进程的张量。

Ascend

无

mindspore.ops.Send

发送张量到指定线程。

Ascend GPU

无

调试算子

接口名

概述

支持平台

警告

mindspore.ops.HistogramSummary

计算Tensor的直方图并保存到Summary文件。

Ascend GPU CPU

无

mindspore.ops.ImageSummary

将图像保存到Summary文件。

Ascend GPU CPU

无

mindspore.ops.ScalarSummary

将标量数据保存到Summary文件。

Ascend GPU CPU

无

mindspore.ops.TensorSummary

将Tensor保存到Summary文件。

Ascend GPU CPU

无

mindspore.ops.TensorDump

将Tensor保存为numpy格式的npy文件。

Ascend

如果在短时间内保存大量数据,可能会导致设备端内存溢出。可以考虑对数据进行切片,以减小数据规模。 由于数据保存是异步处理的,当数据量过大或主进程退出过快时,可能出现数据丢失的问题,需要主动控制主进程销毁时间,例如使用sleep。

mindspore.ops.Print

将输入数据进行打印输出。

Ascend GPU CPU

无

mindspore.ops.NPUAllocFloatStatus

分配一个标志来存储溢出状态。

Ascend

无

mindspore.ops.NPUClearFloatStatus

清除存储溢出状态的标识。

Ascend

无

mindspore.ops.NPUGetFloatStatus

在执行 mindspore.ops.NPUAllocFloatStatus 后, NPUGetFloatStatus 获取最新溢出状态并更新标识。

Ascend

无

稀疏算子

接口名

概述

支持平台

警告

mindspore.ops.SparseTensorDenseMatmul

稀疏矩阵 A 乘以稠密矩阵 B 。

GPU CPU

无

mindspore.ops.SparseToDense

将稀疏Tensor转换为密集Tensor。

CPU

无

框架算子

接口名

概述

支持平台

警告

mindspore.ops.Depend

用来处理操作间的依赖关系。

Ascend GPU CPU

无

mindspore.ops.GradOperation

一个高阶函数,为输入函数生成梯度函数。

Ascend GPU CPU

无

mindspore.ops.HookBackward

用来导出中间变量中的梯度。

Ascend GPU CPU

无

mindspore.ops.HyperMap

对输入序列做集合运算。

Ascend GPU CPU

无

mindspore.ops.InsertGradientOf

为图节点附加回调函数,将在梯度计算时被调用。

Ascend GPU CPU

无

mindspore.ops.Map

Map将对输入序列应用设置的函数操作。

Ascend GPU CPU

无

mindspore.ops.MultitypeFuncGraph

MultitypeFuncGraph是一个用于生成重载函数的类,使用不同类型作为输入。

Ascend GPU CPU

无

mindspore.ops.Partial

生成偏函数的实例。

Ascend GPU CPU

无

算子信息注册

mindspore.ops.AiCPURegOp

AiCPU算子信息注册类。

mindspore.ops.CustomRegOp

用于为 mindspore.ops.Custom 的 func 参数生成算子注册信息的类。

mindspore.ops.DataType

Ascend算子的dtype和format的多种组合。

mindspore.ops.TBERegOp

注册TBE算子信息的类。

mindspore.ops.get_vm_impl_fn

通过Primitive对象或Primitive名称,获取虚拟实现函数。

自定义算子

接口名

概述

支持平台

警告

mindspore.ops.Custom

Custom 算子是MindSpore自定义算子的统一接口。

GPU CPU ASCEND

这是一个实验性API,后续可能修改或删除。

mindspore.ops.custom_info_register

装饰器,用于将注册信息绑定到: mindspore.ops.Custom 的 func 参数。

Ascend GPU CPU

无

mindspore.ops.kernel

用于MindSpore Hybrid DSL函数书写的装饰器。

Ascend GPU CPU

无

光谱算子

接口名

概述

支持平台

警告

mindspore.ops.BartlettWindow

巴特利特窗口函数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。

mindspore.ops.BlackmanWindow

布莱克曼窗口函数。

Ascend GPU CPU

这是一个实验性API,后续可能修改或删除。