【昇思初学入门】第三天打卡

数据集Dataset

心得体会

  1. 昇思提供了丰富的数据集,文本、图像、音频等都有内置
  2. MindSpore的Pipeline设计和并行处理能力使得数据预处理更加高效
  3. 可通过GeneratorDataset接口实现自定义方式的数据集加载
  4. 可迭代的数据集,可以通过迭代的方式逐步获取数据样本,生成器generator也属于可迭代的数据集类型

笔记

  1. 数据获取
python 复制代码
import numpy as np
from mindspore.dataset import vision
from mindspore.dataset import MnistDataset, GeneratorDataset
import matplotlib.pyplot as plt
# Download data from open datasets
from download import download

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

这里找数据集:https://www.mindspore.cn/docs/zh-CN/r2.3.0rc2/api_python/mindspore.dataset.html

2.数据迭代

python 复制代码
# shuffle 消除数据排列造成的分布不均问题,及打乱数据顺序
train_dataset = MnistDataset("MNIST_Data/train", shuffle=True)
def visualize(dataset):
    figure = plt.figure(figsize=(4, 4))
    cols, rows = 3, 3

    plt.subplots_adjust(wspace=0.5, hspace=0.5)

    for idx, (image, label) in enumerate(dataset.create_tuple_iterator()):
        figure.add_subplot(rows, cols, idx + 1)
        plt.title(int(label))
        plt.axis("off")
        plt.imshow(image.asnumpy().squeeze(), cmap="gray")
        if idx == cols * rows - 1:
            break
    plt.show()
  1. 数据预处理
python 复制代码
#图像统一除以255,数据类型由uint8转为了float32
train_dataset = train_dataset.map(vision.Rescale(1.0 / 255.0, 0), input_columns='image')
相关推荐
装不满的克莱因瓶11 分钟前
链式法则如何传递参数误差 —— 深入理解神经网络中的梯度传播
人工智能·python·深度学习·神经网络·数学·机器学习·ai
AndrewHZ11 小时前
【LLM技术全景】规模定律与模型演进:为什么模型越大越强?
人工智能·gpt·深度学习·语言模型·llm·openai·规模定律
手写码匠12 小时前
从零实现 Prompt 工程引擎:结构化提示、自动优化与多轮自省体系
人工智能·深度学习·算法·aigc
哈伦201912 小时前
第十二章 深度学习基础 案例:MLP实现银行单据手写数字识别
人工智能·深度学习·图像识别
lqqjuly12 小时前
MLA — 多头潜在注意力深度解析
深度学习·神经网络·算法
Black蜡笔小新13 小时前
企业AI算力工作站DLTM深度学习推理工作站零代码私有化重塑企业AI落地新模式
人工智能·深度学习
啦啦啦_999913 小时前
4. Transformer_4_输出部分
人工智能·深度学习·transformer
DogDaoDao14 小时前
【GitHub】VoxCPM2 实战全解析:原理、部署与效果对比
深度学习·大模型·github·音频·语音模型·tss·文本生成语音
不考研当牛马15 小时前
Django 框架 深度学习
python·深度学习·django
春日见16 小时前
决策规划控制面经汇总
人工智能·深度学习·算法·机器学习·自动驾驶