最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

實(shí)驗(yàn)五:全連接神經(jīng)網(wǎng)絡(luò)手寫數(shù)字識(shí)別實(shí)驗(yàn)

2022-11-26 21:41 作者:限量版范兒  | 我要投稿

【實(shí)驗(yàn)?zāi)康摹?/strong>

理解神經(jīng)網(wǎng)絡(luò)原理,掌握神經(jīng)網(wǎng)絡(luò)前向推理和后向傳播方法;

掌握使用pytorch框架訓(xùn)練和推理全連接神經(jīng)網(wǎng)絡(luò)模型的編程實(shí)現(xiàn)方法。

?

【實(shí)驗(yàn)內(nèi)容】

1.使用pytorch框架,設(shè)計(jì)一個(gè)全連接神經(jīng)網(wǎng)絡(luò),實(shí)現(xiàn)Mnist手寫數(shù)字字符集的訓(xùn)練與識(shí)別。

?

【實(shí)驗(yàn)報(bào)告要求】

修改神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),改變層數(shù)觀察層數(shù)對(duì)訓(xùn)練和檢測(cè)時(shí)間,準(zhǔn)確度等參數(shù)的影響;
修改神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)率,觀察對(duì)訓(xùn)練和檢測(cè)效果的影響;
修改神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),增強(qiáng)或減少神經(jīng)元的數(shù)量,觀察對(duì)訓(xùn)練的檢測(cè)效果的影響。

import torchfrom torchvision import transformsfrom torchvision import datasetsfrom torch.utils.data import DataLoaderimport torch.nn.functional as Fimport torch.optim as optim# 準(zhǔn)備數(shù)據(jù)集batch_size = 64transform = transforms.Compose([ ? ?transforms.ToTensor(), ? ?transforms.Normalize((0.1307,), (0.3081,)) ]) train_dataset = datasets.MNIST(root='../dataset/mnist/', ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? train=True, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? download=True, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? transform=transform) train_loader = DataLoader(train_dataset, ? ? ? ? ? ? ? ? ? ? ? ? ?shuffle=True, ? ? ? ? ? ? ? ? ? ? ? ? ?batch_size=batch_size) test_dataset = datasets.MNIST(root='../dataset/mnist', ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?train=False, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?download=True, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?transform=transform) test_loader = DataLoader(test_dataset, ? ? ? ? ? ? ? ? ? ? ? ? shuffle=False, ? ? ? ? ? ? ? ? ? ? ? ? batch_size=batch_size)# 設(shè)計(jì)模型class Net(torch.nn.Module): ? ?def __init__(self): ? ? ? ?super(Net, self).__init__() ? ? ? ?self.l1 = torch.nn.Linear(784, 512) ? ? ? ?self.l2 = torch.nn.Linear(512, 256) ? ? ? ?self.l3 = torch.nn.Linear(256, 128) ? ? ? ?self.l4 = torch.nn.Linear(128, 64) ? ? ? ?self.l5 = torch.nn.Linear(64, 10) ? ?def forward(self, x): ? ? ? ?x = x.view(-1, 784) ? ? ? ?x = F.relu(self.l1(x)) ? ? ? ?x = F.relu(self.l2(x)) ? ? ? ?x = F.relu(self.l3(x)) ? ? ? ?x = F.relu(self.l4(x)) ? ? ? ?return self.l5(x) model = Net()# 構(gòu)建損失函數(shù)和優(yōu)化器criterion = torch.nn.CrossEntropyLoss() optimizer = optim.SGD(model.parameters(), lr=0.01, momentum=0.5)# 定義訓(xùn)練函數(shù)def train(epoch): ? ?running_loss = 0.0 ? ?for batch_idx, data in enumerate(train_loader, 0): ? ? ? ?inputs, target = data ? ? ? ?optimizer.zero_grad() ? ? ? ?# 前饋+反饋+更新 ? ? ? ?outputs = model(inputs) ? ? ? ?loss = criterion(outputs, target) ? ? ? ?loss.backward() ? ? ? ?optimizer.step() ? ? ? ?running_loss += loss.item() ? ? ? ?if batch_idx % 300 == 299: ? ? ? ? ? ?print('[%d,%5d] loss:%.3f' % (epoch + 1, batch_idx + 1, running_loss / 300)) ? ? ? ? ? ?running_loss = 0.0# 定義測(cè)試函數(shù)def test(): ? ?correct = 0 ? ?total = 0 ? ?with torch.no_grad(): ? ? ? ?for data in test_loader: ? ? ? ? ? ?images, labels = data ? ? ? ? ? ?outputs = model(images) ? ? ? ? ? ?_, predicted = torch.max(outputs.data, dim=1) ? ? ? ? ? ?total += labels.size(0) ? ? ? ? ? ?correct += (predicted == labels).sum().item() ? ?print('Accuracy on test set:%d %%' % (100 * correct / total))# 實(shí)例化訓(xùn)練和測(cè)試if __name__ == '__main__': ? ?for epoch in range(10): ? ? ? ?train(epoch) ? ? ? ?test()

【結(jié)果】:

鏈接:https://www.dianjilingqu.com/623080.html

實(shí)驗(yàn)五:全連接神經(jīng)網(wǎng)絡(luò)手寫數(shù)字識(shí)別實(shí)驗(yàn)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
宁国市| 镇远县| 杂多县| 五大连池市| 灵丘县| 汤原县| 子洲县| 舞钢市| 葫芦岛市| 宁津县| 崇信县| 额敏县| 西林县| 新田县| 泌阳县| 阜城县| 沅陵县| 株洲县| 讷河市| 乐都县| 泸州市| 桐庐县| 隆林| 珠海市| 平和县| 裕民县| 东兴市| 淮安市| 仁布县| 游戏| 神池县| 黎川县| 桓仁| 长沙市| 江华| 莆田市| 安岳县| 鲁甸县| 民乐县| 邯郸市| 绩溪县|