国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語(yǔ)言編程技術(shù)及教程分享平臺(tái)!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Python - 利用pytorch實(shí)現(xiàn)對(duì)CIFAR-10數(shù)據(jù)集的分類

利用pytorch實(shí)現(xiàn)對(duì)CIFAR-10數(shù)據(jù)集的分類

2020-04-24 10:41summer2day Python

今天小編就為大家分享一篇利用pytorch實(shí)現(xiàn)對(duì)CIFAR-10數(shù)據(jù)集的分類,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

步驟如下:

1.使用torchvision加載并預(yù)處理CIFAR-10數(shù)據(jù)集、

2.定義網(wǎng)絡(luò)

3.定義損失函數(shù)和優(yōu)化器

4.訓(xùn)練網(wǎng)絡(luò)并更新網(wǎng)絡(luò)參數(shù)

5.測(cè)試網(wǎng)絡(luò)

運(yùn)行環(huán)境:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
windows+python3.6.3+pycharm+pytorch0.3.0
 
import torchvision as tv
import torchvision.transforms as transforms
import torch as t
from torchvision.transforms import ToPILImage
show=ToPILImage()    #把Tensor轉(zhuǎn)成Image,方便可視化
import matplotlib.pyplot as plt
import torchvision
import numpy as np
 
 
###############數(shù)據(jù)加載與預(yù)處理
transform = transforms.Compose([transforms.ToTensor(),#轉(zhuǎn)為tensor
                transforms.Normalize((0.5,0.5,0.5),(0.5,0.5,0.5)),#歸一化
                ])
#訓(xùn)練集
trainset=tv.datasets.CIFAR10(root='/python projects/test/data/',
               train=True,
               download=True,
               transform=transform)
 
trainloader=t.utils.data.DataLoader(trainset,
                  batch_size=4,
                  shuffle=True,
                  num_workers=0)
#測(cè)試集
testset=tv.datasets.CIFAR10(root='/python projects/test/data/',
               train=False,
               download=True,
               transform=transform)
 
testloader=t.utils.data.DataLoader(testset,
                  batch_size=4,
                  shuffle=True,
                  num_workers=0)
 
 
classes=('plane','car','bird','cat','deer','dog','frog','horse','ship','truck')
 
(data,label)=trainset[100]
print(classes[label])
 
show((data+1)/2).resize((100,100))
 
# dataiter=iter(trainloader)
# images,labels=dataiter.next()
# print(''.join('11%s'%classes[labels[j]] for j in range(4)))
# show(tv.utils.make_grid(images+1)/2).resize((400,100))
def imshow(img):
  img = img / 2 + 0.5
  npimg = img.numpy()
  plt.imshow(np.transpose(npimg, (1, 2, 0)))
 
dataiter = iter(trainloader)
images, labels = dataiter.next()
print(images.size())
imshow(torchvision.utils.make_grid(images))
plt.show()#關(guān)掉圖片才能往后繼續(xù)算
 
 
#########################定義網(wǎng)絡(luò)
import torch.nn as nn
import torch.nn.functional as F
 
class Net(nn.Module):
  def __init__(self):
    super(Net,self).__init__()
    self.conv1=nn.Conv2d(3,6,5)
    self.conv2=nn.Conv2d(6,16,5)
    self.fc1=nn.Linear(16*5*5,120)
    self.fc2=nn.Linear(120,84)
    self.fc3=nn.Linear(84,10)
 
  def forward(self, x):
    x = F.max_pool2d(F.relu(self.conv1(x)),2)
    x = F.max_pool2d(F.relu(self.conv2(x)),2)
    x = x.view(-1, 16 * 5 * 5)
    x = F.relu(self.fc1(x))
    x = F.relu(self.fc2(x))
    x = self.fc3(x)
    return x
 
net=Net()
print(net)
 
#############定義損失函數(shù)和優(yōu)化器
from torch import optim
criterion=nn.CrossEntropyLoss()
optimizer=optim.SGD(net.parameters(),lr=0.01,momentum=0.9)
 
##############訓(xùn)練網(wǎng)絡(luò)
from torch.autograd import Variable
import time
 
start_time = time.time()
for epoch in range(2):
  running_loss=0.0
  for i,data in enumerate(trainloader,0):
    #輸入數(shù)據(jù)
    inputs,labels=data
    inputs,labels=Variable(inputs),Variable(labels)
    #梯度清零
    optimizer.zero_grad()
 
    outputs=net(inputs)
    loss=criterion(outputs,labels)
    loss.backward()
    #更新參數(shù)
    optimizer.step()
 
    # 打印log
    running_loss += loss.data[0]
    if i % 2000 == 1999:
      print('[%d,%5d] loss:%.3f' % (epoch + 1, i + 1, running_loss / 2000))
      running_loss = 0.0
print('finished training')
end_time = time.time()
print("Spend time:", end_time - start_time)

以上這篇利用pytorch實(shí)現(xiàn)對(duì)CIFAR-10數(shù)據(jù)集的分類就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持服務(wù)器之家。

原文鏈接:https://blog.csdn.net/summer2day/article/details/79154731

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日韩精品一区二区三区在线 | 国产精品久久久久久久久久久久 | 香蕉视频三级 | 亚洲天堂久久 | 精品国产资源 | 在线国v免费看 | 亚洲视频成人 | 欧美日韩久 | 久久精品在线 | 色综久久 | 精品婷婷 | 成人在线观看免费视频 | 日韩一区二区三区在线观看 | 午夜看片 | a级性生活片 | 欧美精品国产精品 | 久久久免费电影 | 欧美精品一区二区在线观看 | 成人午夜视频免费 | 欧美视频区 | 日韩免费在线视频 | 色伊人 | 午夜精品一区 | 国产免费拔擦拔擦8x高清在线人 | 色综合久久天天综合网 | 一区二区免费 | 91精品国产欧美一区二区成人 | 国产精品久久久久一区二区三区 | 毛片网站在线 | 久久成人免费视频 | 免费日韩在线 | 色xx综合网 | 久久久久久国产精品 | 久久美| 日韩视频专区 | 欧美午夜一区二区三区免费大片 | 君岛美绪一区二区三区 | 精品无码久久久久国产 | 成人激情在线播放 | 国产一级一级国产 | 尤物网址|