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

教育网站建设规划书推广app的软文案例

教育网站建设规划书,推广app的软文案例,学校网站模板 html,h5网页游戏学习自https://pytorch.org/tutorials/beginner/basics/quickstart_tutorial.html 导入并预处理数据集 pytorch中数据导入和预处理主要用torch.utils.data.DataLoader 和 torch.utils.data.Dataset Dataset 存储样本及其相应的标签,DataLoader在数据上生成一个可迭…

学习自https://pytorch.org/tutorials/beginner/basics/quickstart_tutorial.html

导入并预处理数据集

pytorch中数据导入和预处理主要用torch.utils.data.DataLoader 和 torch.utils.data.Dataset
Dataset 存储样本及其相应的标签,DataLoader在数据上生成一个可迭代对象(Dataset stores the samples and their corresponding labels, and DataLoader wraps an iterable around the Dataset.)

import torch
from torch import nn
from torch.utils.data import DataLoader
from torchvision import datasets
from torchvision.transforms import ToTensor# Download training data from open datasets.
training_data = datasets.FashionMNIST(root="data",train=True,download=True,transform=ToTensor(),
)# Download test data from open datasets.
test_data = datasets.FashionMNIST(root="data",train=False,download=True,transform=ToTensor(),
)

将数据集作为参数传递给 DataLoader。 这在我们的数据集上包装了一个可迭代对象,并支持自动批处理、采样、混洗和多进程数据加载。并且每一个batch大小为64。

batch_size = 64# Create data loaders.
train_dataloader = DataLoader(training_data, batch_size=batch_size)
test_dataloader = DataLoader(test_data, batch_size=batch_size)for X, y in test_dataloader:print(f"Shape of X [N, C, H, W]: {X.shape}")print(f"Shape of y: {y.shape} {y.dtype}")break

搭建神经网络

MNIST手写数字数据集的图片是2828的,所以第一层的输入为2828。
因为识别结果是0~9这10种,所以最后一层的输出就是10个。

我们需要定义神经网络结构,这部分在__init__(self)部分实现。
且我们需要forward部分定义网络正向传播的方法。

class NeuralNetwork(nn.Module):def __init__(self):super().__init__()self.flatten = nn.Flatten()self.linear_relu_stack = nn.Sequential(nn.Linear(28 * 28, 512),nn.ReLU(),nn.Linear(512, 512),nn.ReLU(),nn.Linear(512, 10))def forward(self, x):x = self.flatten(x)logits = self.linear_relu_stack(x)return logitsmodel = NeuralNetwork().to(device)
print(model)

训练模型

首先,我们需要先定义损失函数和优化器(优化梯度下降算法)

loss_fn = nn.CrossEntropyLoss()
optimizer = torch.optim.SGD(model.parameters(), lr=1e-3) # lr为学习率

在一次循环中,神经网络通过forward进行预测(我们写的forward函数),然后再利用预测误差。通过反向传播来进行梯度下降(pytorch帮我们实现)。

def train(dataloader, model, loss_fn, optimizer):size = len(dataloader.dataset)model.train()for batch, (X, y) in enumerate(dataloader):X, y = X.to(device), y.to(device)# Compute prediction errorpred = model(X)loss = loss_fn(pred, y)# Backpropagationoptimizer.zero_grad()loss.backward()optimizer.step()if batch % 100 == 0:loss, current = loss.item(), (batch + 1) * len(X)print(f"loss: {loss:>7f}  [{current:>5d}/{size:>5d}]")
def test(dataloader, model, loss_fn):size = len(dataloader.dataset)num_batches = len(dataloader)model.eval()test_loss, correct = 0, 0with torch.no_grad():for X, y in dataloader:X, y = X.to(device), y.to(device)pred = model(X)test_loss += loss_fn(pred, y).item()correct += (pred.argmax(1) == y).type(torch.float).sum().item()test_loss /= num_batchescorrect /= sizeprint(f"Test Error: \n Accuracy: {(100*correct):>0.1f}%, Avg loss: {test_loss:>8f} \n")

开始训练!

epochs = 5
for t in range(epochs):print(f"Epoch {t+1}\n-------------------------------")train(train_dataloader, model, loss_fn, optimizer)test(test_dataloader, model, loss_fn)
print("Done!")

在这里插入图片描述

http://www.hrbkazy.com/news/3682.html

相关文章:

  • 电商网站可维护性百度一下就知道
  • 狼雨seo培训seo发包技术教程
  • 做网站需要关注哪些重要问题app推广地推接单网
  • 做图的网站广州seo网站推广
  • 科技类网站风格seo教程培训
  • 做淘宝货源网站又有什么新病毒出现了
  • 关于 门户网站 建设 请示厦门网站推广费用
  • 可以做砍价链接的网站如何做网络销售产品
  • 做网站运营需要学什么国际新闻直播
  • 网站建设如何找客户抖音宣传推广方案
  • 网站10月份可以做哪些有意思的专题老王搜索引擎入口
  • 威海网站制作都有哪些互联网推广
  • 株洲企业网站制作网站推广优化业务
  • 如何做网站价格策略最佳磁力吧ciliba磁力链
  • 建站宝盒做的网站辽源seo
  • 购物网站er图排名前十的大学
  • 江门靠谱网站建设优化互联网营销师证
  • 公司网站销售怎么做的网站页面优化内容包括哪些
  • 大数据时代的智能营销产品seo基础优化
  • 电商设计素材网站推荐房地产估价师考试
  • 网站投票页面怎么做seo用什么论坛引流
  • 口碑好的徐州网站建设河南优化网站
  • 网页设计五个页面seo怎么发文章 seo发布工具
  • 提高网站响应速度下载班级优化大师并安装
  • 销售网站怎么做的百度竞价托管外包
  • 电子商务建设网站的测试和发布bt磁力
  • 网站首页如何设计关键词查网址
  • 模板建站总公司企业网站seo诊断工具
  • 比分网站怎么做抖音搜索关键词推广
  • 做文献ppt模板下载网站我想做app推广代理