数码资源网·下载

展开

MindSpore(深度学习框架)

大小:212M语言:212M 类别:编程辅助系统:WinXP/Win7/Win10
简介|文章|评论
版本:v1.0.1官方版 for WinXP/Win7/Win10时间:2020-10-15
软件介绍

MindSpore是最佳匹配?N腾AI处理器算力的全场景深度学习框架,为数据科学家和算法工程师提供设计友好、运行高效的开发体验,推动人工智能软硬件应用生态繁荣发展,提供了友好的设计和高效的执行,旨在提升数据科学家和算法工程师的开发体验,并为Ascend AI处理器提供原生支持,以及软硬件协同优化。

【应用场景】

  通用场景教程

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

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

  快速入门

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

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

  图像分类

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

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

  情感分析

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

  生态合作

  开发者体验(?N腾环境)

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

  开源合作

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

  高校合作

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

【层次结构】

MindSpore向用户提供了3个不同层次的API,支撑用户进行网络构建、整图执行、子图执行以及单算子执行,从低到高分别为Low-Level Python API、Medium-Level Python API以及High-Level Python API。

MindSpore图片3

♦Low-Level Python API

第一层为低阶API,主要包括张量定义、基础算子、自动微分等模块,用户可使用低阶API轻松实现张量定义和求导计算,例如用户可通过Tensor接口自定义张量,使用ops.composite模块下的GradOperation算子计算函数在指定处的导数。

♦Medium-Level Python API

第二层为中阶API,其封装了低价API,提供网络层、优化器、损失函数等模块,用户可通过中阶API灵活构建神经网络和控制执行流程,快速实现模型算法逻辑,例如用户可调用Cell接口构建神经网络模型和计算逻辑,通过使用loss模块和Optimizer接口为神经网络模型添加损失函数和优化方式,利用dataset模块对数据进行处理以供模型的训练和推导使用。

♦High-Level Python API

第三层为高阶API,其在中阶API的基础上又提供了训练推理的管理、混合精度训练、调试调优等高级接口,方便用户控制整网的执行流程和实现神经网络的训练推理及调优,例如用户使用Model接口,指定要训练的神经网络模型和相关的训练设置,对神经网络模型进行训练,通过Profiler接口调试神经网络性能。

MindSpore图片4

【软件特色】

  简单的开发体验

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

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

  灵活的调试模式

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

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

  充分发挥硬件潜能

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

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

  全场景快速部署

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

【使用教程】

一、实现一个图片分类应用

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

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

3、定义损失函数和优化器。

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

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

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

二、实现简单线性函数拟合

回归问题算法通常是利用一系列属性来预测一个值,预测的值是连续的。例如给出一套房子的一些特征数据,如面积、卧室数等等来预测房价,利用最近一周的气温变化和卫星云图来预测未来的气温情况等。如果一套房子实际价格为500万元,通过回归分析的预测值为499万元,则认为这是一个比较好的回归分析。在机器学习问题中,常见的回归分析有线性回归、多项式回归、逻辑回归等。本例子介绍线性回归算法,并通过MindSpore进行线性回归AI训练体验。

整体流程如下:

1、生成数据集

2、定义训练网络

3、定义前向传播网络与反向传播网络并关联

4、拟合过程可视化准备

5、执行训练

三、加载模型用于推理或迁移学习

1、用于推理验证

针对仅推理场景可以使用load_checkpoint把参数直接加载到网络中,以便进行后续的推理验证。

示例代码如下:

resnet = ResNet50()

load_checkpoint("resnet50-2_32.ckpt", net=resnet)

dateset_eval = create_dataset(os.path.join(mnist_path, "test"), 32, 1) # define the test dataset

loss = CrossEntropyLoss()

model = Model(resnet, loss, metrics={"accuracy"})

acc = model.eval(dataset_eval)

load_checkpoint方法会把参数文件中的网络参数加载到模型中。加载后,网络中的参数就是CheckPoint保存的。

eval方法会验证训练后模型的精度。

2、用于迁移学习

针对任务中断再训练及微调(Fine Tune)场景,可以加载网络参数和优化器参数到模型中。

示例代码如下:

# return a parameter dict for model

param_dict = load_checkpoint("resnet50-2_32.ckpt")

resnet = ResNet50()

opt = Momentum()

# load the parameter into net

load_param_into_net(resnet, param_dict)

# load the parameter into operator

load_param_into_net(opt, param_dict)

loss = SoftmaxCrossEntropyWithLogits()

model = Model(resnet, loss, opt)

model.train(epoch, dataset)

load_checkpoint方法会返回一个参数字典。

load_param_into_net会把参数字典中相应的参数加载到网络或优化器中。

加载全部内容

相关应用
热门推荐
相关教程
猜你喜欢
编程软件合集

编程软件合集

不同的编程软件可以编辑出不同的程序,而且同一款软件,用不同的...
进入专区>>
电脑编程软件

电脑编程软件

编程软件是一套功能十分强大的工具合集,能够帮助用户制作开发书...
进入专区>>
相关合集
本类排行