当前位置: 首页 > wzjs >正文

深圳网站建设 手机网站建设bt磁力猪

深圳网站建设 手机网站建设,bt磁力猪,众筹网站开发周期,服装定制apptorch工具类Dataset和DataLoader 对于NN模型训练来说,需要将数据转换成torch识别的数据类型,才能喂给模型。pytorch中,通常使用Dataset和DataLoader这两个工具类来构建数据管道。 Dataset定义了数据集的内容,类似一个列表的数据…

torch工具类Dataset和DataLoader

对于NN模型训练来说,需要将数据转换成torch识别的数据类型,才能喂给模型。pytorch中,通常使用Dataset和DataLoader这两个工具类来构建数据管道。

  • Dataset定义了数据集的内容,类似一个列表的数据结构,有确定的长度,能够用索引获取数据集中的元素。
  • DataLoader定义了按batch加载数据集的方法,它是一个实现了__iter__方法的可迭代对象,每次迭代输出一个batch的数据。DataLoader能够控制batch的大小,batch中元素的采样方法,以及将batch结果整理成模型所需输入形式的方法,并且能够使用多进程读取数据。
batch_size: how many samples per batch to load
shuffle: set to ``True`` to have the data reshuffled at every epoch (default: ``False``).
drop_last: set to ``True`` to drop the last incomplete batch

自定义DataSet都需要集成DataSet父类,复写 __init__,__getitem__和__len__方法。

from numpy.ma.core import shape
from torch.utils.data import Dataset
import torchclass MyDataset(Dataset):def __init__(self, dataList, labelList):self.dataList = dataListself.labelList = labelListdef __getitem__(self, idx):return self.dataList[idx], self.labelList[idx]def __len__(self):return len(self.labelList)dataList, labelList = torch.randn(1000,3),torch.randint(low=0, high=2, size=(1000,)).float()
dataset_test = MyDataset(dataList, labelList)

用DataLoader读取Dataset的数据

dl = DataLoader(dataset_test, batch_size=4, drop_last=True)
data, label = next(iter(dl))
print("data=", data)
print("label=", label)

Dataset的创建方法

Dataset创建数据集常用的方法有:

  • 继承 torch.utils.data.Dataset 创建自定义数据集,如上;
  • 使用 torch.utils.data.TensorDataset 根据Tensor创建数据集;
  • 使用 torchvision.datasets.ImageFolder 根据图片目录创建图片数据集。

使用torchvision提供的数据集

数据集地址:# https://pytorch.org/vision/stable/datasets.html#built-in-datasets

from torch.utils.data import TensorDataset,DataLoader
import torchvision
from torch.utils.tensorboard import SummaryWriter# 下载训练集
train_set = torchvision.datasets.CIFAR10(root="./trainset", train=True, download=True)
# 下载测试集
test_set = torchvision.datasets.CIFAR10(root="./trainset", train=False, download=True)
# 查看数据类型
print(test_set[0])
print(test_set.classes)# 做数据转换,从PIL>tensor
dataset_compose = torchvision.transforms.Compose([torchvision.transforms.ToTensor()
])# 利用tensorboard展示浏览图像
writer = SummaryWriter("cifar10")
for i in range(10):img, target = test_set[i]writer.add_image("test_set", dataset_compose(img), i)writer.close()

DataLoader的使用

test_set = torchvision.datasets.CIFAR10(root="./trainset", train=False, download=True, transform=transforms.ToTensor())
test_loader = DataLoader(dataset=test_set, batch_size=4, shuffle=True, drop_last=False)
for data in test_loader:imgs, targets = dataprint(imgs.shape)print(targets)

通过dataloader可一次性从数据集中取多少数据,并且可以设定采样情况。

http://www.dtcms.com/wzjs/523913.html

相关文章:

  • 网站建设的客户都在哪里如何做网站搜索引擎优化
  • 网站建设全过程公司产品推广方案
  • UltraEdit做网站教程seo入门免费教程
  • 怎么建公司免费网站关键词优化价格表
  • 网站项目报价单模板成年s8视频加密线路
  • wordpress如何修改博客模板北京网站seo公司
  • 日本做爰动漫网站百度关键词优化技巧
  • 绵阳市中医医院网站建设免费发布产品的网站
  • 怎么用node做动态网站网络市场调研的五个步骤
  • 网站可以做10000件事情吗百度竞价推广收费
  • 建筑设计作品展示网站seo信息查询
  • 区住房城乡建设委(房管局)官方网站重庆网站seo多少钱
  • 桂林新站优化前端培训费用大概多少
  • .net做网站用什么框架网址制作
  • 沈阳网站排名seo如何快速推广自己的产品
  • 石狮网站开发东莞百度推广优化
  • 网站客服怎么做的百度关键词排行榜
  • 网站反链接是什么意思建站系统软件有哪些
  • 网站下载的软件在哪里找的到刷关键词排名seo软件软件
  • 商丘手机网站建设品牌推广策划
  • 冲浪网站优化网影响seo排名的因素
  • 俄乌冲突最新进展优化推广网站怎么做最好
  • 门户网站建设工作流程电子商务推广
  • 天津市开发区建设管理局网站阿里云万网域名购买
  • 孝感网站制作制作网站
  • espcms易思企业网站系统网络推广公司联系方式
  • 自已建个人网站今日新闻最新事件
  • 网站服务器建设费用百度大搜
  • 一等一网站建设招代理最好的推广方式
  • 涟源市住房与城乡建设局网站西安疫情最新数据