昇思25天学习打卡营第01天|基本介绍快速入门

在这里插入图片描述

一、什么是昇思MindSpore?

昇思MindSpore是一个全场景深度学习框架,详见基本介绍

那什么是深度学习呢?

深度学习是一种特殊的机器学习,主要是利用了多层神经网络模拟人脑,自动提取特征并进行预测。

什么是机器学习?

通过给“机器”喂养一些数据和答案,让其学习并训练处一套规则,新的数据可以通过这个规则,得出答案,这也是现在风靡全球的AI大模型的基本原理。
在这里插入图片描述
下图为现在已经发展成熟的完整流程
在这里插入图片描述

二、快速入门

1.准备工作

1.1环境准备

MindSpore提供基于Pipeline的数据引擎,通过数据集(Dataset)和数据变换(Transforms)实现高效的数据预处理。

预装mindspore(2.2.14)、numpy、pandas等依赖
%%capture captured_output
# 实验环境已经预装了mindspore==2.2.14,如需更换mindspore版本,可更改下面mindspore的版本号
!pip uninstall mindspore -y
!pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindspore==2.2.14

1.2数据变换Transforms导入

import mindspore
from mindspore import nn
from mindspore.dataset import vision, transforms  # 使用mindspore.dataset提供的数据变换进行预处理
from mindspore.dataset import MnistDataset

1.3导入Mnist数据集

# Download data from open datasets
from download import downloadurl = "https://mindspore-website.obs.cn-north-4.myhuaweicloud.com/" \"notebook/datasets/MNIST_Data.zip"
path = download(url, "./", kind="zip", replace=True)

在这里插入图片描述

1.4使用(查看)数据集

1.4.1获得数据集对象

可以看到下面两个对象,分别为MNIST数据集train分支和test分支下的数据对象,获取到数据对象后,我们来查看一下这些数据的value等信息

train_dataset = MnistDataset('MNIST_Data/train')
test_dataset = MnistDataset('MNIST_Data/test')
1.4.2打印数据集中包含的数据列名

通过运行下面的代码,查看运行结果,结合上面的MNIST数据集train分支和test分支下的子分支,可以很直观的看出,数据集包含图片标签

print(train_dataset.get_col_names())
print(test_dataset.get_col_names())

运行结果:

['image', 'label']
['image', 'label']
1.4.3对图像数据及标签进行变换处理

请看代码中的注释理解这段代码的作用

# 自定义一个函数 接受一个数据集(dataset)和批量大小(batch_size)作为输入,并返回经过一系列预处理和变换后的数据集
def datapipe(dataset, batch_size):# 定义一个包含了三个图像处理变换(transforms)的列表image_transforms   将这些变换组合在一起,可以对图像进行一系列预处理操作,以便将其输入到深度学习模型中image_transforms = [vision.Rescale(1.0 / 255.0, 0),# 用于将图像的像素值从 [0, 255] 缩放到 [0, 1] vision.Normalize(mean=(0.1307,), std=(0.3081,)), # 用于标准化图像数据vision.HWC2CHW() # 用于改变图像的维度顺序]#将标签数据转换为 mindspore.int32 类型label_transform = transforms.TypeCast(mindspore.int32) #transforms为mindspore.dataset提供的数据变换# 使用上面定义的图像变换和标签变换,通过map方法作用到图像和标签数据集dataset = dataset.map(image_transforms, 'image')dataset = dataset.map(label_transform, 'label')# 将经过变换的数据集按照 batch_size 参数指定的大小进行批处理dataset = dataset.batch(batch_size)# 返回经过处理后的数据集return dataset
1.4.4使用自定义的变换处理

调用上面的自定义函数datapipe(dataset, batch_size),并传入参数
此处我们设置一个对照组,只处理train_dataset分支下的数据,比较处理前后数据集的shape和datatype有何不同

# Map vision transforms and batch dataset
train_dataset = datapipe(train_dataset, 64)
# test_dataset = datapipe(test_dataset, 64)

使用create_tuple_iteratorcreate_dict_iterator对数据集进行迭代访问,查看数据和标签的shape和datatype

可以清晰的看到,经过变换处理后图片和标签数据的shape和datatype都发生了变化
在这里插入图片描述
数据已经准备好了,明天继续网络构建!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/34580.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac Terminal常用命令

1. 文件和目录操作: #ls : 列出当前目录下的文件和子目录 -- ls(list) #cd : 进入指定目录。 -- cd Documents。 cd(change directory)cd ..:返回上一级cd ~:返回家目录cd /:返回根目录 cd Documents/ 前往“文稿” #pwd : 显示当前工作目录的完整路径 -- pwd(prin…

【C++】模板详解

前言:在之前的学习我们发现我们无时无刻都用到模板这个东西,但是博主一直没有进行讲解,今天我们就一次性对模板进行一个整体的学习与讲解。 💖 博主CSDN主页:卫卫卫的个人主页 💞 👉 专栏分类:高质量&#…

Java 8 Stream API 中 distinct() 与 distinctByKey() 的区别是什么?如何使用它们来过滤重复元素?

在Java 8中,Stream API是一个强大的工具,它允许以声明性的方式处理数据集合,使得代码更加简洁且易于理解。distinct()和distinctByKey()是两种用于过滤重复元素的方法,虽然后者不是标准库直接提供的,但可以通过一些技巧…

计算机毕业设计Python+LSTM+Tensorflow股票分析预测 基金分析预测 股票爬虫 大数据毕业设计 深度学习 机器学习 数据可视化 人工智能

基于TensorFlow-LSTM的股票预测系统开题报告 一、研究背景与意义 随着信息技术的飞速发展,股票市场作为现代经济活动的重要组成部分,其价格波动受到广泛关注。投资者们迫切希望通过科学的方法预测股票价格,以优化投资决策,实现利…

【Java06】Java中的类与对象

1. 类和对象 Java中的类模版如下: [修饰符] class 类名 {0~n个构造器;0~n个成员变量;0~n个成员方法; }构造器是类创建对象的根本途径。如果没有显式定义构造器,系统会默认提供一个。成员变量、成员方法的定义和C类似,只不过多了修饰符。 Ja…

Interview preparation--elasticSearch正排索引原理

正排索引 ElastciSearch 适合做或者说擅长做全文检索,在做全文检索的时候,他会通过生成倒排索引的方式来辅助查询,生成一个词项到 文档id的一个倒排表,这样直接通过 词项可以快速找到所有的 稳定信息。 但是并不是所有的搜索都是…

python第一个多进程爬虫

使用 multiprocessing 模块实现多进程爬取股票网址买卖数据的基本思路是: 定义爬虫函数,用于从一个或多个股票网址上抓取数据。创建多个进程,每个进程执行爬虫函数,可能针对不同的股票或不同的网页。使用 multiprocessing.Queue …

前端基础——自学习梳理

超文本协议HTML <!DOCTYPE HTML> <html><head><meta charset"utf-8"> <style> /*Css*/.sty1{height:100px;width:100px;background-color: red;margin-top: 10px;float:left;margin-left: 10px;box-shadow: 10px 10px 10px #0000…

多路h265监控录放开发-(14)通过PaintCell自定义日历控件继承QCalendarWidget的XCalendar类

首先创建一个新类XCalendar继承QCalendarWidget类&#xff0c;然后在UI视图设计器中把日历提升为XCalendar&#xff0c;通过这个函数自己设置日历的样式 xcalendar.h #pragma once #include <QCalendarWidget> class XCalendar :public QCalendarWidget { public:XCal…

2024.06.24 刷题日记

17. 电话号码的字母组合 依然是昨天的回溯&#xff0c;思路是根据 index&#xff0c;来确定要回溯的对象&#xff1a; class Solution { public:vector<string> letterCombinations(string digits) {vector<string> results;if (digits.empty())return results; …

Linux 运维王者从不离手的10款工具

运维工程师在日常工作中频繁运用的10款工具&#xff0c;并细致阐述每款工具的功能、适用场景以及其卓越之处。 1. Shell脚本 功能&#xff1a;主要用于自动化任务和批处理作业。 适用场景&#xff1a;频繁用于文件处理、系统管理、简单的网络管理等操作。 优势&#xff1a;灵…

Java 抽象类

目录 1、什么是抽象类 2、定义抽象类 3、抽象类特性 4、 抽象类的作用 1、什么是抽象类 抽象类&#xff0c;顾名思义就是抽象的。该类没有包含足够的信息去描绘一个具体的对象&#xff0c;这样的类称为抽象类。抽象类着一种优化了的概念组织方式&#xff0c;它是所有子类的…

研究上百个小时,高手总结了这份 DALL-E 3 人物连续性公式(上)

上篇 Dall-E 3 讲了常见的 20 个公式&#xff0c;今天单独来讲一下人物连续性公式&#xff0c;这个公式来自 AshutoshShrivastava。 上篇回顾&#xff1a; 效果超好&#xff01;全新 DALL-E 3 必须掌握的 20 种公式使用方法上周末&#xff0c;DALL-E 3 正式加入 ChatGpt&…

嵌入式实验---实验八 ADC电压采集实验

一、实验目的 1、掌握STM32F103ADC电压采集程序设计流程&#xff1b; 2、熟悉STM32固件库的基本使用。 二、实验原理 1、使用STM32F103R6采集可变电阻上的电压信号&#xff0c;并通过计算把当前ADC转换值和电压值显示在LCD1602液晶屏上&#xff1b; 2、对照电压表读数&…

红队内网攻防渗透:内网渗透之内网对抗:横向移动篇域控系统提权NetLogonADCSPACKDC永恒之蓝CVE漏洞

红队内网攻防渗透 1. 内网横向移动1.1 横向移动-域控提权-CVE-2020-1472 NetLogon1.2 横向移动-域控提权-CVE-2021-422871.3 横向移动-域控提权-CVE-2022-269231.4 横向移动-系统漏洞-CVE-2017-01461.5 横向移动-域控提权-CVE-2014-63241. 内网横向移动 1、横向移动-域控提权-…

【问题】Ubuntu下使用ftp命令下载文件

Ubuntu下使用ftp命令下载文件具体的方法示例如下: $ ftp 192.168.180.3 Connected to 192.168.180.3. Name (192.168.180.3:test): 此处输入用户名 Password:此处输入对应的密码 /*查看当前路径*/ ftp> pwd 257 "/" is current directory. ftp> cd test …

为冲刺IPO,喜马拉雅曝裁员20%?钉钉叶军吐槽百度搜索;美国制裁俄罗斯安全软件12名高管;华为自研语言仓颉力战Java

一、商业圈 1.钉钉总裁叶军吐槽百度搜索&#xff1a;前十条都是广告 钉钉总裁叶军在亚布力中国企业家论坛第十届创新年会上发表了演讲&#xff0c;期间他直言不讳地对百度搜索提出了批评。叶军指出&#xff0c;在OpenAI推出智能聊天机器人ChatGPT之后&#xff0c;百度的传统搜…

C++系统相关操作5 - 获取C++标准的版本

1. 关键词2. sysutil.h3. sysutil.cpp4. 测试代码5. 运行结果6. 源码地址 1. 关键词 关键词&#xff1a; C 标准库 STL 版本 指令集 跨平台 应用场景&#xff1a; 根据C的版本决定使用不同的函数接口打印系统日志。 2. sysutil.h #pragma once#include <cstdint> …

【Web APIs】JavaScript 事件基础 ② ( “ 事件 “ 开发步骤 | 常见鼠标 “ 事件 “ )

文章目录 一、" 事件 " 开发步骤1、" 事件 " 开发步骤2、完整代码示例 二、常见鼠标 " 事件 "1、常见鼠标 " 事件 "2、鼠标 " 事件 " 代码示例 Web APIs 博客相关参考文档 : WebAPIs 参考文档 : https://developer.mozilla…

Linux中Vim的使用技巧总结

日常工作中&#xff0c;Vim使用方式&#xff1a; 功能命令说明光标移动h向左移动光标j向下移动光标k向上移动光标l向右移动光标w移动到下一个单词的开始处e移动到下一个单词的结束处b移动到上一个单词的开始处0 (数字零)移动到当前行的开始处$移动到当前行的末尾gg移动到文件的…