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

Ascend后端不支持随机数重现功能, Seed0Seed1 参数不起作用。

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

计算输入 logitslabels 的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

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

Ascend GPU CPU

mindspore.ops.HSigmoid

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

Ascend GPU CPU

mindspore.ops.HSwish

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

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

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

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_gradientmean_squaremomentgrad 为零时仍将被更新。但在稀疏实现中, mean_gradientmean_squaremoment 不会在 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_indiceshypothesis_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

Ascend后端不支持随机数重现功能, seed 参数不起作用。

mindspore.ops.UniformCandidateSampler

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

Ascend GPU CPU

Ascend后端不支持随机数重现功能, seed 参数不起作用。 Ascend后端暂不支持动态shape场景。

图像处理

接口名

概述

支持平台

警告

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.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

返回 inputother 沿着维度 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

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

Ascend GPU CPU

mindspore.ops.Addcmul

x1x2 的逐元素相乘的结果乘以 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

x1x2 逐元素执行安全除法,如果 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

对输入数据进行四舍五入到最接近的整数数值。

Ascend GPU CPU

mindspore.ops.Rsqrt

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

Ascend GPU CPU

mindspore.ops.Sign

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

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

更多详情请查看: 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_medianTrue , 第二个输出 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

返回一个在区间 startstop (包括 startstop )内均匀分布的,包含 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

Ascend后端不支持随机数重现功能, seedseed2 参数不起作用。

mindspore.ops.Multinomial

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

Ascend GPU CPU

Ascend后端不支持随机数重现功能, seed0seed2 参数不起作用。

mindspore.ops.MultinomialWithReplacement

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

CPU

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

mindspore.ops.RandomCategorical

从分类分布中抽取样本。

Ascend GPU CPU

Ascend后端不支持随机数重现功能, seed 参数不起作用。

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

Ascend后端不支持随机数重现功能, seedseed2 参数不起作用。

mindspore.ops.StandardNormal

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

Ascend GPU CPU

Ascend后端不支持随机数重现功能, seedseed2 参数不起作用。

mindspore.ops.UniformInt

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

Ascend GPU CPU

Ascend后端不支持随机数重现功能, seedseed2 参数不起作用。

mindspore.ops.UniformReal

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

Ascend GPU CPU

Ascend后端不支持随机数重现功能, seedseed2 参数不起作用。

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()

Ascend 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 的指定 axisindices

Ascend GPU CPU

mindspore.ops.IndexFill

index 中给定的顺序选择索引,将输入Tensor xdim 维度下的元素用 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_dataLU_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

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

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

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

Ascend CPU

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

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

Deprecated

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.ForiLoop

一段范围内的循环操作。

Ascend GPU CPU

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

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.Scan

将一个函数循环作用于一个数组,且对当前元素的处理依赖上一个元素的执行结果。

Ascend GPU CPU

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

mindspore.ops.WhileLoop

在编译阶段不进行循环展开的循环算子。

Ascend GPU CPU

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

算子信息注册

mindspore.ops.AiCPURegOp

AiCPU算子信息注册类。

mindspore.ops.CustomRegOp

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

mindspore.ops.DataType

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

mindspore.ops.TBERegOp

注册TBE算子信息的类。

mindspore.ops.get_vm_impl_fn

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

自定义算子

接口名

概述

支持平台

警告

mindspore.ops.Custom

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

Ascend GPU CPU

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

mindspore.ops.custom_info_register

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

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,后续可能修改或删除。