http://mxnet.apache.org/api/python/gluon/data.html

import sys
import os
import time
import mxnet as mx
from mxnet import autograd,nd
from mxnet import gluon,init
from mxnet.gluon import data as gdata,loss as gloss
from mxnet.gluon import nn #gdata.ArrayDataset() 组合数据,线性回归中使用过了
#gdata.DataLoader() 从数据集返回一个小批量数据集 #常用数据集
#gdata.vision.MNIST
#gdata.vision.FashionMNIST
#gdata.vision.CIFAR10
#gdata.vision.CIFAR100
#gdata.vision.ImageRecordDataset
#gdata.vision.ImageFolderDataset # 视觉变换
# gluon.data.vision.transforms from mxnet.gluon.data.vision import MNIST,transforms '''
transforms.Cast # 转特定数据类型
transforms.ToTensor # 将 ndarray 转为 张量 ndarray
transforms.Normalize # 用 平均值和标准差 规范化一个张量
transforms.RandomResizedCrop # 使用随机比例裁剪图像
transforms.CenterCrop # 裁剪到中心
transforms.Resize # 调整到指定大小
transforms.RandomFlipLeftRight # 以0.5的概率左右翻转图像
transforms.RandomFlipTopBottom
transforms.RandomBrightness # 随机抖动图像亮度
transforms.RandomContrast # 随机抖动图像对比度
transforms.RandomSaturation # 随机抖动图像饱和度
transforms.RandomHue # 随机抖动图像色调
transforms.RandomColorJitter # 随机抖动图像 亮度,对比度,饱和度,色调
transforms.RandomLighting # 添加一个AlexNet-Style的噪声到图像
''' transform = transforms.Compose(
[transforms.Resize(300),
transforms.RandomResizedCrop(224),
transforms.RandomBrightness(0.1),
transforms.ToTensor(),
transforms.Normalize(0,1)
]
) data = MNIST(train=True).transform_first(transform)
#print(len(data))
data_loader = gluon.data.DataLoader(data,batch_size=32,num_workers=0)
for data,label in data_loader:
#print(data)
#print(label)
break
#print(len(data_loader)) # API Reference
# 定义数据
tmp = gluon.data.ArrayDataset([1,2,3],[2,3,4]) # 采样
sampler = gluon.data.SequentialSampler(10)
print(list(sampler))
batch_sampler = gluon.data.BatchSampler(sampler,3,last_batch='keep')
print(list(batch_sampler)) # 从数据集加载数据并返回小批量数据
# gluon.data.DataLoader
# dataset : numpy,mxnet数组均可以直接作为数据集
# batch_size(int) 小批量的大小
# shuffle(bool) 是否要洗牌样品
# sampler 要使用的采样器,shuffle和 sampler 选其一
# last_batch 最后一批,{'keep','discard','rollover'}
# batch_sampler 返回小批量采样器,指定了batch_sampler则不需要指定 batch_size,shuffle,sampler,last_batch
# batchify_fn 回调函数
# num_workers 加速读取
# pin_memory(bool) True,将数据写入GPU
# prefetch 预读取某些批次 # (fn,lazy=True)
# 默认需要时转换数据
# gluon.data.Dataset.transform()
# gluon.data.Dataset.transform_first()

Gluon Data API的更多相关文章

  1. Autodesk View and Data API二次开发学习指南

    什么是View and Data API? 使用View and Data API,你可以轻松的在网页上显示大型三维模型或者二维图纸而不需要安装任何插件.通过View and Data API,你可以 ...

  2. Using View and Data API with Meteor

    By Daniel Du I have been studying Meteor these days, and find that Meteor is really a mind-blowing f ...

  3. View and Data API Tips: Constrain Viewer Within a div Container

    By Daniel Du When working with View and Data API, you probably want to contain viewer into a <div ...

  4. View and Data API Tips: Hide elements in viewer completely

    By Daniel Du With View and Data API, you can hide some elements in viewer by calling "viewer.hi ...

  5. 使用AxisHelper帮助理解View and Data API中的坐标系统

    大家使用View and Data API做三维模型开发,必然首先要理解View and Data API的坐标系统,即XYZ三个轴向分别是怎么定义的.Three.js里面提供了一个AxisHelpe ...

  6. 在View and Data API中更改指定元素的颜色

    大家在使用View and Data API开发过程中,经常会用到的就是改变某些元素的颜色已区别显示.比如根据某些属性做不同颜色的专题显示,或者用不同颜色表示施工进度,或者只是简单的以颜色变化来提醒用 ...

  7. 特大喜讯,View and Data API 现在支持中文界面了

    大家经常会问到,使用View and Data API怎么做界面的本地化,来显示中文,现在好消息来了,从v1.2.19起,View and Data API开始支持多国语言界面了.你需要制定版本号为v ...

  8. View and Data API 现在支持IE11了

    By Daniel Du After a long time waiting, IE11 finally supports WebGL, which enables us viewing our 3D ...

  9. View and Data API tips: 缓存Access Token

    对于云API服务,常见的方式就是按照API调用次数收费,某些API调用也就有某些限制,比如在特定时间内只允许调用指定的次数以免造成滥用.虽然Autodesk的view and Data API目前还没 ...

随机推荐

  1. Golang教程:函数、变参函数

    函数是完成一个特定任务的代码块.一个函数接受输入,对输入进行一些运算并产生输出. 函数声明 在 Go 中声明一个函数的语法为: func functionname(parametername type ...

  2. Java 基础(8)——流程控制

    上次的运算符都消化好了吗?每一天都要用到一些哦~ 以前有提到过一嘴,程序执行都是从上到下执行的,emm,学到这里,感觉这句话是对的也是错的了…… 如果都是一行一行执行下去的话,上节课的例子: 今天不上 ...

  3. log4j2分层输出日志

    在java mvc框架开发过程中,我们经常的将代码分为类似controller(控制层).service(业务层).rpc(远程接口调用层).dao(数据层)等层级,如果将所有层级的日志全部都打到一个 ...

  4. ajax上传数据

    ---恢复内容开始--- ajax上传数据,(简洁版) 1.上传普通同表单标签内容. 1.获取表单的内容 1. var file=$('#file').val();(放在点击事件后面) 2. var ...

  5. 十二 NIO和IO

    NIO和IO的区别,应用场景? NIO和IO的主要区别 IO NIO 面向流 面向缓冲 阻塞IO 非阻塞IO 无 选择器 面向流和面向缓冲 Java NIO和IO之间第一个最大的区别是,IO是面向流的 ...

  6. js和jq获取宽度和高度

    Javascript: console.log(document.body.clientWidth); //网页可见区域宽(body) console.log(document.body.client ...

  7. 解决PUTTY出现中文乱码问题

    Putty在默认情况下没有使用UTF-8编码,因此在显示中文的时候会出现乱码.解决方法非常简单:按照下图,在连接之前,左边窗口中的“转换”选项卡(如图所示),然后在右边“假定接收的数据字符集”的下拉选 ...

  8. Redis 实现分布式锁

    前言 分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁.虽然网上已经有各种介 ...

  9. AndroidStudio安装教程

    Android studio安装与配置 1.首先下载Android studio安装包,可以从http://www.android-studio.org/ 2.下载好该安装包之后,点击进行安装,依次出 ...

  10. arm汇编学习(四)

    一.android jni实现1.静态实现jni:先由Java得到本地方法的声明,然后再通过JNI实现该声明方法.2.动态实现jni:先通过JNI重载JNI_OnLoad()实现本地方法,然后直接在J ...