建站套餐和定制网站的区别,wordpress zp,潍坊市网站,4399小游戏网页版在线玩在训练图像分类的时候#xff0c;我们通常会使用CIFAR10数据集#xff0c;今天就先写一下如何展示数据集的图片及预处理。第一部分代码#xff0c;展示原始图像#xff1a;import numpy as npimport torch#导入内置cifarfrom torchvision.datasets import cifar#预处理模块…在训练图像分类的时候我们通常会使用CIFAR10数据集今天就先写一下如何展示数据集的图片及预处理。第一部分代码展示原始图像import numpy as npimport torch#导入内置cifarfrom torchvision.datasets import cifar#预处理模块import torchvision.transforms as transformsfrom torch.utils.data import DataLoaderimport matplotlib.pyplot as pltclasses (plane, car, bird, cat,deer, dog, frog, horse, ship, truck)#Compose将一些转换函数组合在一起#ToTensor原始数据是numpy现在改成Tensor。会将数据从[0,255]归一化到[0,1] 除以255transformstransforms.Compose([transforms.ToTensor()])trainDatacifar.CIFAR10(./picdata,trainTrue,transformtransforms,downloadTrue)testDatacifar.CIFAR10(./picdata,trainFalse,transformtransforms)x0for images, labels in trainData: plt.subplot(3,3,x1) plt.tight_layout() images images.numpy().transpose(1, 2, 0) # 把channel那一维放到最后 plt.title(str(classes[labels])) plt.imshow(images) plt.xticks([]) plt.yticks([]) x1 if x9: breakplt.show()图片展示如下第二部分代码灰度化图片import numpy as npimport torch#导入内置cifarfrom torchvision.datasets import cifar#预处理模块import torchvision.transforms as transformsfrom torch.utils.data import DataLoaderimport matplotlib.pyplot as pltclasses (plane, car, bird, cat,deer, dog, frog, horse, ship, truck)#Compose将一些转换函数组合在一起#ToTensor原始数据是numpy现在改成Tensor。会将数据从[0,255]归一化到[0,1] 除以255#Normalize则是将数据按照通道进行标准化(输入[通道]-均值[通道])/标准差[通道]将数据归一化到[-1,1]#如果数据在[0,1]之间则实际的偏移量bias会很大。而一般模型初始化的时候bias0这样收敛的就会慢。经过Normalize后加快收敛速度#后面两个0.5就是制定mean和std原来[0,1]变成(0-0.5)/0.5-1(1-0.5)/0.51。本例是要灰度化就一个通道如果是三通道RGB则应该为[0.5,0.5,0.5] ,transforms.Normalize([0.5,0.5,0.5],[0.5,0.5,0.5])transformstransforms.Compose([transforms.ToTensor(),transforms.Normalize([0.5],[0.5])])trainDatacifar.CIFAR10(./picdata,trainTrue,transformtransforms,downloadTrue)testDatacifar.CIFAR10(./picdata,trainFalse,transformtransforms)#shuffle随机打乱trainLoaderDataLoader(trainData,batch_size64,shuffleFalse)testLoaderDataLoader(testData,batch_size128,shuffleFalse)#enumerate组合成一个索引序列同时列出数据下标和数据examplesenumerate(trainLoader)batchIndex,(imgData,labels)next(examples)figplt.figure()for i in range(9): plt.subplot(3,3,i1) plt.tight_layout() plt.imshow(imgData[i][0],cmapgray,interpolationnone) plt.title({}.format(classes[labels[i]])) plt.xticks([]) plt.yticks([])plt.show()图片展示如下