MindSpore mint 模块学习
1. 模块概述mindspore.mint是 MindSpore 框架提供的一个功能接口子模块旨在提供大量与业界主流深度学习框架如 PyTorch保持一致的 functional、nn、优化器等 API。使熟悉主流框架的用户能够快速上手。性能特点在图编译模式为O0和PyNative模式下其性能优于基础的ops接口。导入方法from mindspore import mint2. 核心功能接口分类2.1 Tensor 操作mint模块提供了丰富的 Tensor 创建、变换和操作函数。创建运算用于生成各种形状和内容的 Tensor。arange,empty,empty_like,eye,full,full_likelinspace,ones,ones_like,zeros,zeros_like索引、切分、连接、突变运算用于操作 Tensor 的结构。cat/concat,chunk,gather,index_add,index_selectreshape,permute,transpose,squeeze,unsqueezesplit,stack,tile,where随机采样生成符合特定分布的随机 Tensor。rand,randn,randint及其_like变体randperm,normal,multinomial,bernoulli2.2 数学运算逐元素运算对 Tensor 中每个元素独立进行数学计算。算术运算add,sub,mul,div,pow,sqrt,rsqrt,exp,log三角函数与双曲函数sin,cos,tan,asin,acos,atan,sinh,cosh,tanh取整与裁剪abs,ceil,floor,round,clamp,trunc逻辑运算logical_and,logical_or,logical_not,logical_xorReduction运算对 Tensor 的一个或多个维度进行聚合计算。sum,mean,prod,max,min,std,varargmax,argmin,all,any,norm比较运算对 Tensor 进行元素级或整体比较。eq,ne,gt,lt,ge,le,equalisclose,isfinite,isinfsort,argsort,topkBLAS 和 LAPACK 运算基础的线性代数运算。matmul,mm,mv,dot,bmminverse,triangular_solve其他运算包括一些常用的工具函数。einsum,flatten,cross,cumsum,cumprod,diag,trace,tril,triu2.3 神经网络 (nn) 组件mint.nn子模块提供了构建神经网络所需的层和函数。卷积层Conv1d,Conv2d,Conv3d,ConvTranspose2d池化层自适应池化AdaptiveAvgPool1d/2d/3d,AdaptiveMaxPool1d/2d常规池化AvgPool2d/3d,MaxUnpool2d填充层ConstantPad1d/2d/3d,ReflectionPad1d/2d/3d,ReplicationPad1d/2d/3d,ZeroPad1d/2d/3d非线性激活层ReLU,ReLU6,Sigmoid,TanhGELU,SiLU/Swish,Mish,LeakyReLU,PReLUSoftmax,LogSoftmax,SELU,ELU归一化层BatchNorm1d/2d/3d,LayerNorm,GroupNorm,SyncBatchNorm线性层Linear,IdentityDropout层Dropout,Dropout2d稀疏层Embedding损失函数CrossEntropyLoss,BCELoss,BCEWithLogitsLossMSELoss,L1Loss,SmoothL1LossNLLLoss,CosineEmbeddingLoss,KLDivLossVision层Upsample,PixelShuffle2.4 函数式接口 (mint.nn.functional)该子模块提供了与mint.nn中层对应的无状态函数版本更适合在自定义前向传播中使用。包含与nn中大部分层对应的函数如conv2d,relu,dropout,batch_norm,linear,cross_entropy等。2.5 优化器 (mint.optim)提供了常见的参数优化算法。SGD随机梯度下降。Adam自适应矩估计。AdamW解耦权重衰减的 Adam。2.6 线性代数 (mint.linalg) 与特殊函数 (mint.special)linalg提供更专业的线性代数操作如norm向量/矩阵范数、qrQR分解、inv矩阵求逆。special提供一些特殊数学函数如erfc互补误差函数、expm1、log1p等。2.7 分布式通信 (mint.distributed)提供了一系列用于多卡/多机训练的集体通信原语是构建分布式训练程序的基础。集合通信all_reduce全体规约。all_gather全体收集。broadcast广播。scatter/gather分散/收集。reduce_scatter规约后分散。点对点通信send,recv,isend,irecv。组管理init_process_group,new_group,destroy_process_group。查询函数get_rank,get_world_size,is_initialized。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2452877.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!