您所在的位置:下载吧  >  软件下载  >  其他软件  >  程序源码 > MindSpore(深度学习框架)

MindSpore(深度学习框架) v1.1.0 官方版

  • 软件大小:226 MB
  • 软件语言:英文
  • 更新时间:2024-12-23
  • 授   权:免费软件
  • 适用平台:WinAll
  • 推荐度: 6
无病毒官方版绿色版
点击查看大图
软件介绍

  MindSpore功能强大、专业实用,是最佳匹配昇腾AI处理器算力的全场景深度学习框架,是专门为数据科学家和算法工程师提供设计友好、运行高效的开发体验而设计的去通用深度信息开发框架,同时该平台内置有专业丰富且操作详细的使用教程,可帮助用户快速熟练安装和使用该框架;MindSpore有效推动人工智能软硬件应用生态繁荣发展,为用户提供了友好的设计和高效的执行,旨在提升数据科学家和算法工程师的开发体验,并为Ascend AI处理器提供原生支持,以及软硬件协同优化,感兴趣的用户赶快下载吧。

MindSpore(深度学习框架)

软件功能

  处理数据

  +转换数据集为MindRecord

  +优化数据处理

  构建网络

  +自定义算子

  +迁移第三方框架训练脚本

  +深度概率编程

  +实现高阶自动微分

  调试网络

  +使用PyNative模式调试

  +借助R图进行调试

  +自定义调试信息

  +使用可视化组件MindInsight

  +应用自动数据增强

  +训练时验证模型

  优化训练性能

  +分布式并行训练

  +使能自动混合精度

  +使能图算融合

  +应用梯度累积算法

  +应用单节点数据缓存

  压缩模型

  +应用感知量化训练

  模型安全和隐私

  +使用NAD算法提升模型安全性

  +应用差分隐私机制保护用户隐私

  +使用 fuzz testing模块测试模型安全性

  +使用成员推理测试模型安全性

  应用实践

  +机器视觉

  +自然语言处理

  +高性能计算

  +在云上使用 MindSpore

软件特色

  简单的开发体验

  帮助开发者实现网络自动切分,只需串行表达就能实现并行训练,降低门槛,简化开发流程。

  使用该深度学习、ai、人工智能框架的优势之灵活的调试模式

  灵活的调试模式

  具备训练过程静态执行和动态调试能力,开发者通过变更一行代码即可切换模式,快速在线定位问题。

  使用该深度学习、ai、人工智能框架的优势之充分发挥硬件潜能

  充分发挥硬件潜能

  最佳匹配昇腾处理器,最大程度地发挥硬件能力,帮助开发者缩短训练时间,提升推理性能。

  使用该深度学习、ai、人工智能框架的优势之全场景快速部署

  全场景快速部署

  支持云、边缘和手机上的快速部署,实现更好的资源利用和隐私保护,让开发者专注于AI应用的创造。

安装方法

  pip方式安装MindSpore Ascend 910版本

  pip方式安装MindSpore Ascend 910版本确认系统环境信息安装MindSpore配置环境变量验证是否成功安装升级MindSpore版本安装MindInsight安装MindArmour安装MindSpore Hub安装MindSpore Serving

  本文档介绍如何在Ascend 910环境的Linux系统上,使用pip方式快速安装MindSpore。

  确认系统环境信息

  确认安装Ubuntu 18.04/CentOS 8.2/EulerOS 2.8是64位操作系统。

  确认安装正确GCC 版本,Ubuntu 18.04/EulerOS 2.8用户,GCC>=7.3.0;CentOS 8.2用户 GCC>=8.3.1。

  确认安装gmp 6.1.2版本。

  确认安装Python 3.7.5版本。

  如果未安装或者已安装其他版本的Python,可从官网或者华为云下载Python 3.7.5版本 64位,进行安装。

  确认安装Ascend 910 AI处理器软件配套包(Atlas Data Center Solution V100R020C20T600)。

  确认当前用户有权限访问Ascend 910 AI处理器配套软件包的安装路径/usr/local/Ascend,若无权限,需要root用户将当前用户添加到/usr/local/Ascend所在的用户组,具体配置请详见配套软件包的说明文档。

  安装Ascend 910 AI处理器配套软件包提供的whl包,whl包随配套软件包发布,升级配套软件包之后需要重新安装。

MindSpore(深度学习框架)

  安装MindSpore

MindSpore(深度学习框架)

  其中:

  在联网状态下,安装whl包时会自动下载MindSpore安装包的依赖项(依赖项详情参见requirements.txt),其余情况需自行安装。

  {version}表示MindSpore版本号,例如安装1.1.0版本MindSpore时,{version}应写为1.1.0。

  {arch}表示系统架构,例如使用的Linux系统是x86架构64位时,{arch}应写为x86_64。如果系统是ARM架构64位,则写为aarch64。

  {system}表示系统版本,例如使用的欧拉系统ARM架构,{system}应写为euleros_aarch64,目前Ascend版本可支持以下系统euleros_aarch64/euleros_x86/centos_aarch64/centos_x86/ubuntu_aarch64/ubuntu_x86。

  配置环境变量

  如果Ascend 910 AI处理器配套软件包没有安装在默认路径,安装好MindSpore之后,需要导出Runtime相关环境变量,下述命令中LOCAL_ASCEND=/usr/local/Ascend的/usr/local/Ascend表示配套软件包的安装路径,需注意将其改为配套软件包的实际安装路径。

MindSpore(深度学习框架)

  验证是否成功安装

MindSpore(深度学习框架)

  如果输出:

MindSpore(深度学习框架)

  说明MindSpore安装成功了。

  升级MindSpore版本

  当需要升级MindSpore版本时,可执行如下命令:

MindSpore(深度学习框架)

官方教程

  下面我们通过一个实际样例,带领大家体验MindSpore基础的功能,对于一般的用户而言,完成整个样例实践会持续20~30分钟。

  本例子会实现一个简单的图片分类的功能,整体流程如下:

  处理需要的数据集,这里使用了MNIST数据集。

  定义一个网络,这里我们使用LeNet网络。

  定义损失函数和优化器。

  加载数据集并进行训练,训练完成后,查看结果及保存模型文件。

  加载保存的模型,进行推理。

  验证模型,加载测试数据集和训练后的模型,验证结果精度。

  你可以在这里找到完整可运行的样例代码:https://gitee.com/mindspore/docs/tree/r1.1/tutorials/tutorial_code/lenet 。

  这是简单、基础的应用流程,其他高级、复杂的应用可以基于这个基本流程进行扩展。

  准备环节在动手进行实践之前,确保,你已经正确安装了MindSpore。如果没有,可以通过MindSpore安装页面将MindSpore安装在你的电脑当中。

  同时希望你拥有Python编码基础和概率、矩阵等基础数学知识。

  那么接下来,就开始MindSpore的体验之旅吧。

  下载数据集我们示例中用到的MNIST数据集是由10类28*28的灰度图片组成,训练数据集包含60000张图片,测试数据集包含10000张图片。

  MNIST数据集下载页面:http://yann.lecun.com/exdb/mnist/。页面提供4个数据集下载链接,其中前2个文件是训练数据需要,后2个文件是测试结果需要。

  将数据集下载并解压到本地路径下,这里将数据集解压分别存放到工作区的./MNIST_Data/train、./MNIST_Data/test路径下。

  目录结构如下:

MindSpore(深度学习框架)

  为了方便样例使用,我们在样例脚本中添加了自动下载数据集的功能。

  导入Python库&模块在使用前,需要导入需要的Python库。

  目前使用到os库,为方便理解,其他需要的库,我们在具体使用到时再说明。

  import os

  详细的MindSpore的模块说明,可以在MindSpore API页面中搜索查询。

  配置运行信息在正式编写代码前,需要了解MindSpore运行所需要的硬件、后端等基本信息。

  可以通过context.set_context来配置运行需要的信息,譬如运行模式、后端信息、硬件等信息。

  导入context模块,配置运行需要的信息。

MindSpore(深度学习框架)

  在样例中我们配置样例运行使用图模式。根据实际情况配置硬件信息,譬如代码运行在Ascend AI处理器上,则--device_target选择Ascend,代码运行在CPU、GPU同理。详细参数说明,请参见context.set_context接口说明。

  数据处理数据集对于训练非常重要,好的数据集可以有效提高训练精度和效率。在加载数据集前,我们通常会对数据集进行一些处理。

  定义数据集及数据操作我们定义一个函数create_dataset来创建数据集。在这个函数中,我们定义好需要进行的数据增强和处理操作:

  定义数据集。

  定义进行数据增强和处理所需要的一些参数。

  根据参数,生成对应的数据增强操作。

  使用map映射函数,将数据操作应用到数据集。

  对生成的数据集进行处理。

MindSpore(深度学习框架)
MindSpore(深度学习框架)

  其中,

  batch_size:每组包含的数据个数,现设置每组包含32个数据。

  repeat_size:数据集复制的数量。

  先进行shuffle、batch操作,再进行repeat操作,这样能保证1个epoch内数据不重复。

  MindSpore支持进行多种数据处理和增强的操作,各种操作往往组合使用,具体可以参考数据处理和与数据增强章节。

  定义网络我们选择相对简单的LeNet网络。LeNet网络不包括输入层的情况下,共有7层:2个卷积层、2个下采样层(池化层)、3个全连接层。每层都包含不同数量的训练参数,如下图所示:

MindSpore(深度学习框架)

  更多的LeNet网络的介绍不在此赘述,希望详细了解LeNet网络,可以查询http://yann.lecun.com/exdb/lenet/。

  我们对全连接层以及卷积层采用Normal进行参数初始化。

  MindSpore支持TruncatedNormal、Normal、Uniform等多种参数初始化方法,默认采用Normal。具体可以参考MindSpore API的mindspore.common.initializer模块说明。

  使用MindSpore定义神经网络需要继承mindspore.nn.Cell。Cell是所有神经网络(Conv2d等)的基类。

  神经网络的各层需要预先在__init__方法中定义,然后通过定义construct方法来完成神经网络的前向构造。按照LeNet的网络结构,定义网络各层如下:

MindSpore(深度学习框架)
MindSpore(深度学习框架)

  定义损失函数及优化器基本概念在进行定义之前,先简单介绍损失函数及优化器的概念。

  损失函数:又叫目标函数,用于衡量预测值与实际值差异的程度。深度学习通过不停地迭代来缩小损失函数的值。定义一个好的损失函数,可以有效提高模型的性能。

  优化器:用于最小化损失函数,从而在训练过程中改进模型。

  定义了损失函数后,可以得到损失函数关于权重的梯度。梯度用于指示优化器优化权重的方向,以提高模型性能。

  定义损失函数MindSpore支持的损失函数有SoftmaxCrossEntropyWithLogits、L1Loss、MSELoss等。这里使用SoftmaxCrossEntropyWithLogits损失函数。

MindSpore(深度学习框架)

  在__main__函数中调用定义好的损失函数:

MindSpore(深度学习框架)

  定义优化器MindSpore支持的优化器有Adam、AdamWeightDecay、Momentum等。

  这里使用流行的Momentum优化器。

MindSpore(深度学习框架)

  训练网络配置模型保存MindSpore提供了callback机制,可以在训练过程中执行自定义逻辑,这里使用框架提供的ModelCheckpoint为例。 ModelCheckpoint可以保存网络模型和参数,以便进行后续的fine-tuning(微调)操作。

MindSpore(深度学习框架)

  配置训练网络通过MindSpore提供的model.train接口可以方便地进行网络的训练。LossMonitor可以监控训练过程中loss值的变化。 这里把train_epoch设置为1,对数据集进行1个迭代的训练。

MindSpore(深度学习框架)

  其中, 在train_net方法中,我们加载了之前下载的训练数据集,mnist_path是MNIST数据集路径。

  运行并查看结果使用以下命令运行脚本:

MindSpore(深度学习框架)

  其中,

  lenet.py:为你根据教程编写的脚本文件。

  --device_target CPU:指定运行硬件平台,参数为CPU、GPU或者Ascend,根据你的实际运行硬件平台来指定。

  训练过程中会打印loss值,类似下图。loss值会波动,但总体来说loss值会逐步减小,精度逐步提高。每个人运行的loss值有一定随机性,不一定完全相同。 训练过程中loss打印示例如下:

MindSpore(深度学习框架)

  训练完后,即保存的模型文件,示例如下:

MindSpore(深度学习框架)

  其中,

  checkpoint_lenet-1_1875.ckpt:指保存的模型参数文件。名称具体含义checkpoint_网络名称-第几个epoch_第几个step.ckpt。

  验证模型在得到模型文件后,通过模型运行测试数据集得到的结果,验证模型的泛化能力。

  使用model.eval接口读入测试数据集。

  使用保存后的模型参数进行推理。

MindSpore(深度学习框架)

  其中, load_checkpoint:通过该接口加载CheckPoint模型参数文件,返回一个参数字典。

  checkpoint_lenet-1_1875.ckpt:之前保存的CheckPoint模型文件名称。

  load_param_into_net:通过该接口把参数加载到网络中。

  使用运行命令,运行你的代码脚本。

MindSpore(深度学习框架)

  其中,

  lenet.py:为你根据教程编写的脚本文件。

  --device_target CPU:指定运行硬件平台,参数为CPU、GPU或者Ascend,根据你的实际运行硬件平台来指定。

  运行结果示例如下:

MindSpore(深度学习框架)

  可以在打印信息中看出模型精度数据,示例中精度数据达到96.6%,模型质量良好。随着网络迭代次数train_epoch增加,模型精度会进一步提高。

应用场景

  通用场景教程

  面向不同程度开发者提供多种场景下的使用教程,通过细分步骤指导如何使用MindSpore

  面向新手的通用场景教程之快速入门

  快速入门

  通过一个实际样例实现手写数字的识别,带领大家体验MindSpore基础的功能,一般来说,完成整个样例实践会持续20~30分钟。

  面向专家的通用场景教程之图像分类

  图像分类

  结合CIFAR-10数据集,讲解MindSpore如何处理图像分类任务。

  面向专家的通用场景教程之情感分析

  情感分析

  构建一个自然语言处理的模型,通过文本分析和推理实现情感分析,完成对文本的情感分类。

  生态合作

  开发者体验(昇腾环境)

  在云上ModelArts AI开发平台抢鲜体验昇腾资源

  开源合作

  MindSpore社区期待各位开发者的加入

  高校合作

  MindSpore诚挚邀请您加入华为沃土高校教研AI扶持计划。

MindSpore(深度学习框架)下载地址

本类最新
  • CIMCO Edit

    276.25 MB/2020-08-17

    CIMCOEditV5是CIMCO软件公司专为数控编程而设计的专业软件,该软件以其强大的功能、低廉的价格而风靡欧美,它有强大而实用的数控编辑功能、文件的智能比较、刀位轨迹的三维模拟、DNC传输等功能。其完全的Windows界面,一目了然的地址颜色,强大的在线帮助,会使您爱不释手。

  • CKplayer网页播放器

    336 KB/2020-08-17

    ckplayer是一款在网页上播放视频的免费的网页播放器,功能强大,体积小巧,跨平台,使用起来随心所欲。CKplayer网页播放器主要以adobe的flash(所使用的版本是CS5)平台开发,ckplayer同时也支持html5的视频播放。

  • WordPress

    6.7 MB/2020-08-17

    WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设自己的网志。也可以把WordPress当作一个内容管理系统(CMS)来使用。

  • Discuz论坛

    4.05 MB/2020-08-17

    Discuz!Board(以下简称Discuz!,中国国家版权局著作权登记号2003SR6623)是一个通用的论坛软件系统,用户可以在不需要任何编程的基础上,Discuz论坛通过简单的设置和安装

  • Guns后台管理系统

    12.5 MB/2020-08-17

    Guns后台管理系统是一款项目快速开发管理系统网站搭建模板,基于SpringBoot2开发,内置主控面板、组织架构、用户管理、机构管理、职位管理、权限管理、基础数据、系统功能

  • 狂雨小说cms

    7.8 MB/2020-08-17

    狂雨小说是一款体积轻量、简单易用的轻量级小说网站搭建模板,基于ThinkPHP5.1+MySQL的技术开发,网站搭建和部署便捷简单,通过该模板用户可以快速搭建一个属于自己的小说内

  • Slidev(开发幻灯片展示)

    8.52 MB/2020-08-17

    Slidev是一款非常专业且优秀的开发幻灯片展示软件,作为基于Web的幻灯片制作和演示软件,非常适合开发人员使用,可帮助他们专注于在Markdown中编写内容,软件功能强大,拥有HTML

  • 魔众短链接系统

    27.5 MB/2020-08-17

    魔众短链接系统是一款绿色安全、免费开源的短链接生成网站搭建模板,基于PHP+Mysql开发,可帮助用户快速搭建属于自己的短链接生成网站,该网站界面简洁美观、对SEO非常友好,功

每日更新软件推荐
  • 一周最热
  • 总排行榜

您可能感兴趣的专题

  • 男生必备

    男生必备

    男生们看过来!

  • 安卓装机必备

    安卓装机必备

  • 女生必备

    女生必备

      女生必备app是拥有众多女性用户的手机软件,作为一个女生,生活中像淘宝、京东这类线上购物软件可以说是少不了的,小红书这种穿搭、化妆分享平台也很受欢迎,类似于西柚大姨妈、美柚这种专为女生打造的生理期app更是手机必备,还有大家用的最多拍照美颜app是绝对不能忘记的,除此之外对于一些追星女孩来说,微博也是一个必不可少的软件。超多女生必备软件尽在下载吧!

  • 迅雷看看使用教程

    迅雷看看使用教程

    迅雷看看播放器是一款多功能在线高清多媒体视频播放器,支持本地播放与在线视频点播,采用P2P点对点传输技术,可以在线流畅观看高清晰电影。不仅如此,迅雷看看不断完善用户交互和在线产品体验,让您的工作与生活充满乐趣。

  • 驱动精灵

    驱动精灵

    驱动精灵是一款集驱动管理和硬件检测于一体的、专业级的驱动管理和维护工具。驱动精灵为用户提供驱动备份、恢复、安装、删除、在线更新等实用功能,也是大家日常生活中经常用到的实用型软件之一了。

  • 拼音输入法

    拼音输入法

    对于电脑文字输入,拼音输入法是一种非常受欢迎的输入法,搜狗拼音输入法、百度拼音输入法、QQ拼音输入法、谷歌拼音输入法、紫光拼音输入法、智能拼音输入法等,你在用哪款呢?一款好用适合自己的拼音输入法一定对您平时帮助很大!下载吧收集了最热门国人最喜欢用的拼音输入法给大家。

  • b站哔哩哔哩怎么使用

    b站哔哩哔哩怎么使用

    很多人都喜欢在b站哔哩哔哩上观看视频,不单是因为可以提前看到一些视频资源,B站的一些弹幕、评论的玩法也是被网友们玩坏了!下面下载吧小编带来了b站哔哩哔哩怎么使用的教程合集!希望能帮到你啦!

  • 抖音短视频app

    抖音短视频app

    抖音短视频app,这里汇聚全球潮流音乐,搭配舞蹈、表演等内容形式,还有超多原创特效、滤镜、场景切换帮你一秒变大片,为你打造刷爆朋友圈的魔性短视频。脑洞有多大,舞台就有多大!好玩的人都在这儿!