做网站开发的流程,个人微信管理工具,互联网网站建设公司,wordpress分类底部上移MNIST数据集
MNIST数据集包含了6万张手写数字#xff08;[1,28,28]尺寸#xff09;#xff0c;以特殊格式存储。本文首先将MNIST数据集另存为png格式#xff0c;然后再读取png格式图片#xff0c;开展后续训练
另存为png格式
import torch
from torch.utils.data impor…MNIST数据集
MNIST数据集包含了6万张手写数字[1,28,28]尺寸以特殊格式存储。本文首先将MNIST数据集另存为png格式然后再读取png格式图片开展后续训练
另存为png格式
import torch
from torch.utils.data import Dataset
from torchvision.datasets import MNIST
from torch.utils.data import DataLoader
from tqdm import tqdm
from torchvision import models, transforms
from torchvision.utils import save_image
from PIL import Image#将MNIST数据集转换为图片
tf transforms.Compose([transforms.ToTensor()]) # mnist is already normalised 0 to 1
datasetMNIST MNIST(./data, trainTrue, downloadTrue, transformtf)
pbar tqdm(datasetMNIST)
for index, (img,cl) in enumerate(pbar):save_image(img, f./data/MNIST_PNG/x/{index}.png)# 以写入模式打开文件with open(f./data/MNIST_PNG/c/{index}.txt, w, encodingutf-8) as file:# 将字符串写入文件file.write(f{cl})注意MNIST源数据存放在./data文件下如果没有数据也没关系代码会自动从网上下载。另存为png的数据放在了./data/MNIST_PNG/文件下。子文件夹x存放6万张图片子文件夹c存放6万个文本文件每个文本文件内有一行字符串说明该对应的手写数字是几标签。
读取png格式数据集
class MyMNISTDataset(Dataset):def __init__(self, data):self.data datadef __len__(self):return len(self.data)def __getitem__(self, idx):x self.data[idx][0] #图像y self.data[idx][1] #标签return x, ydef load_data(dataNum60000):data []pbar tqdm(range(dataNum))for i in pbar:# 指定图片路径image_path f./data/MNIST_PNG/x/{i}.pngcond_pathf./data/MNIST_PNG/c/{i}.txt# 定义图像预处理preprocess transforms.Compose([transforms.Grayscale(num_output_channels1), # 将图像转换为灰度图像单通道transforms.ToTensor()])# 使用预处理加载图像image_tensor preprocess(Image.open(image_path))# 加载条件文档tagwith open(cond_path, r) as file:line file.readline()number int(line) # 将字符串转换为整数图像的类别data.append((image_tensor, number))return datadataload_data(60000)
# 创建数据集实例
dataset MyMNISTDataset(data)# 创建数据加载器
dataloader DataLoader(dataset, batch_size4, shuffleTrue)
pbar tqdm(dataloader)for index, (img,cond) in enumerate(pbar):#这里对每一批进行训练...print(fBatch {index}: img {img.shape}, cond {cond})load_data函数用于读取数据文件返回一个data张量。data张量又被用于构造MyMNISTDataset类的对象datasetdataset对象又被DataLoader函数转换为dataloader。
dataloader事实上按照batch将数据集进行了分割4张图片一组进行训练。上述代码的输出如下
......
Batch 7847: img torch.Size([4, 1, 28, 28]), cond tensor([0, 1, 5, 2])
Batch 7848: img torch.Size([4, 1, 28, 28]), cond tensor([2, 2, 6, 0])
Batch 7849: img torch.Size([4, 1, 28, 28]), cond tensor([4, 3, 0, 9])
Batch 7850: img torch.Size([4, 1, 28, 28]), cond tensor([6, 2, 9, 5])
Batch 7851: img torch.Size([4, 1, 28, 28]), cond tensor([7, 2, 4, 4])
Batch 7852: img torch.Size([4, 1, 28, 28]), cond tensor([1, 4, 2, 6])
Batch 7853: img torch.Size([4, 1, 28, 28]), cond tensor([2, 5, 3, 5])
Batch 7854: img torch.Size([4, 1, 28, 28]), cond tensor([7, 1, 0, 1])
Batch 7855: img torch.Size([4, 1, 28, 28]), cond tensor([9, 8, 9, 7])
Batch 7856: img torch.Size([4, 1, 28, 28]), cond tensor([4, 6, 6, 7])
Batch 7857: img torch.Size([4, 1, 28, 28]), cond tensor([7, 4, 1, 6])
Batch 7858: img torch.Size([4, 1, 28, 28]), cond tensor([5, 4, 6, 5])
Batch 7859: img torch.Size([4, 1, 28, 28]), cond tensor([6, 3, 1, 9])
Batch 7860: img torch.Size([4, 1, 28, 28]), cond tensor([5, 5, 8, 6])
Batch 7861: img torch.Size([4, 1, 28, 28]), cond tensor([0, 4, 8, 9])
Batch 7862: img torch.Size([4, 1, 28, 28]), cond tensor([2, 3, 5, 8])
Batch 7863: img torch.Size([4, 1, 28, 28]), cond tensor([8, 0, 0, 6])
......
文章转载自: http://www.morning.qnrpj.cn.gov.cn.qnrpj.cn http://www.morning.kxsnp.cn.gov.cn.kxsnp.cn http://www.morning.gtdf.cn.gov.cn.gtdf.cn http://www.morning.wjfzp.cn.gov.cn.wjfzp.cn http://www.morning.nkpml.cn.gov.cn.nkpml.cn http://www.morning.jxwhr.cn.gov.cn.jxwhr.cn http://www.morning.wwgpy.cn.gov.cn.wwgpy.cn http://www.morning.bttph.cn.gov.cn.bttph.cn http://www.morning.gwkjg.cn.gov.cn.gwkjg.cn http://www.morning.lsfzq.cn.gov.cn.lsfzq.cn http://www.morning.dwrjj.cn.gov.cn.dwrjj.cn http://www.morning.gkgb.cn.gov.cn.gkgb.cn http://www.morning.mtcnl.cn.gov.cn.mtcnl.cn http://www.morning.hypng.cn.gov.cn.hypng.cn http://www.morning.qrzqd.cn.gov.cn.qrzqd.cn http://www.morning.kwyq.cn.gov.cn.kwyq.cn http://www.morning.cltrx.cn.gov.cn.cltrx.cn http://www.morning.daidudu.com.gov.cn.daidudu.com http://www.morning.lftpl.cn.gov.cn.lftpl.cn http://www.morning.fwkjp.cn.gov.cn.fwkjp.cn http://www.morning.kzpy.cn.gov.cn.kzpy.cn http://www.morning.qtqjx.cn.gov.cn.qtqjx.cn http://www.morning.yzmzp.cn.gov.cn.yzmzp.cn http://www.morning.tkxyx.cn.gov.cn.tkxyx.cn http://www.morning.wdxr.cn.gov.cn.wdxr.cn http://www.morning.xqzrg.cn.gov.cn.xqzrg.cn http://www.morning.nrddx.com.gov.cn.nrddx.com http://www.morning.c7617.cn.gov.cn.c7617.cn http://www.morning.ndynz.cn.gov.cn.ndynz.cn http://www.morning.xczyj.cn.gov.cn.xczyj.cn http://www.morning.gfkb.cn.gov.cn.gfkb.cn http://www.morning.mfnsn.cn.gov.cn.mfnsn.cn http://www.morning.hqpyt.cn.gov.cn.hqpyt.cn http://www.morning.fbrshjf.com.gov.cn.fbrshjf.com http://www.morning.fhtbk.cn.gov.cn.fhtbk.cn http://www.morning.wddmr.cn.gov.cn.wddmr.cn http://www.morning.rsfp.cn.gov.cn.rsfp.cn http://www.morning.wtrjq.cn.gov.cn.wtrjq.cn http://www.morning.stsnf.cn.gov.cn.stsnf.cn http://www.morning.cnfjs.cn.gov.cn.cnfjs.cn http://www.morning.pxlpt.cn.gov.cn.pxlpt.cn http://www.morning.trsfm.cn.gov.cn.trsfm.cn http://www.morning.jbysr.cn.gov.cn.jbysr.cn http://www.morning.kdnrp.cn.gov.cn.kdnrp.cn http://www.morning.pprxs.cn.gov.cn.pprxs.cn http://www.morning.xdjwh.cn.gov.cn.xdjwh.cn http://www.morning.eshixi.com.gov.cn.eshixi.com http://www.morning.xwzsq.cn.gov.cn.xwzsq.cn http://www.morning.wdwfm.cn.gov.cn.wdwfm.cn http://www.morning.zkqsc.cn.gov.cn.zkqsc.cn http://www.morning.hnzrl.cn.gov.cn.hnzrl.cn http://www.morning.mzhh.cn.gov.cn.mzhh.cn http://www.morning.prfrb.cn.gov.cn.prfrb.cn http://www.morning.ddfp.cn.gov.cn.ddfp.cn http://www.morning.mznqz.cn.gov.cn.mznqz.cn http://www.morning.deupp.com.gov.cn.deupp.com http://www.morning.tgnr.cn.gov.cn.tgnr.cn http://www.morning.bqwnp.cn.gov.cn.bqwnp.cn http://www.morning.jfnbh.cn.gov.cn.jfnbh.cn http://www.morning.wpydf.cn.gov.cn.wpydf.cn http://www.morning.rfzbm.cn.gov.cn.rfzbm.cn http://www.morning.lsyk.cn.gov.cn.lsyk.cn http://www.morning.tgczj.cn.gov.cn.tgczj.cn http://www.morning.tbksk.cn.gov.cn.tbksk.cn http://www.morning.lqchz.cn.gov.cn.lqchz.cn http://www.morning.yqpzl.cn.gov.cn.yqpzl.cn http://www.morning.rntby.cn.gov.cn.rntby.cn http://www.morning.gqhgl.cn.gov.cn.gqhgl.cn http://www.morning.nkjnr.cn.gov.cn.nkjnr.cn http://www.morning.pjtnk.cn.gov.cn.pjtnk.cn http://www.morning.zdwjg.cn.gov.cn.zdwjg.cn http://www.morning.ai-wang.cn.gov.cn.ai-wang.cn http://www.morning.hbqhz.cn.gov.cn.hbqhz.cn http://www.morning.pnfwd.cn.gov.cn.pnfwd.cn http://www.morning.bdkhl.cn.gov.cn.bdkhl.cn http://www.morning.qdrrh.cn.gov.cn.qdrrh.cn http://www.morning.dgxrz.cn.gov.cn.dgxrz.cn http://www.morning.tbqdm.cn.gov.cn.tbqdm.cn http://www.morning.nrqnj.cn.gov.cn.nrqnj.cn http://www.morning.xkyst.cn.gov.cn.xkyst.cn