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

临沂网站建设哪家更好重庆食品公司

临沂网站建设哪家更好,重庆食品公司,全网营销推广是什么,企业文化宣传策划方案一、数据集: 使用内置MINST函数处理数据。代码会自动下载数据。代码见dataset.py 二、代码部分: 网络结构: 网络结构为三层神经网络,第一层为输入层,第二层为隐藏层,第三层为输出层,输入层大小…

一、数据集:

        使用内置MINST函数处理数据。代码会自动下载数据。代码见dataset.py

二、代码部分:

网络结构:

        网络结构为三层神经网络,第一层为输入层,第二层为隐藏层,第三层为输出层,输入层大小为784,隐藏层为256,输出层大小为10。

        前向传播方法:view函数将x展平为一维向量,在实际训练中,输入的x为28*28的灰度图像。通过view函数展平后,得到784个值,将此数据输入第一个线性层,输出256个值再使用ReLu函数激活256个值再更新给x,再通过输出层输出10个值。其中最大的值的索引就为网络预测的值。

训练过程:

训练过程包括5个步骤:计算神经网络结果,计算损失,计算梯度,根据梯度更新参数,清零梯度

dataset.py

import torchvision
from torch.utils.data import DataLoader
from torchvision import transformstransform = transforms.Compose([transforms.ToTensor()  # 转换为张量
])
def getDataloder():train_dataset = torchvision.datasets.MNIST(root='./data', train=True, download=True, transform=transform)print("train_dataset length: ", len(train_dataset))# 小批量的数据读入train_loader = DataLoader(train_dataset, batch_size=512, shuffle=True, num_workers=8)print("train_loader length: ", len(train_loader))return train_loader
def getTestloder():test_dataset = torchvision.datasets.MNIST(root='./data', train=False, download=True, transform=transform)print("train_dataset length: ", len(test_dataset))# 小批量的数据读入test_loader = DataLoader(test_dataset, batch_size=1, shuffle=True)print("train_loader length: ", len(test_loader))return test_loader
if __name__ == '__main__':getDataloder()

 model.py

import torch
from torch import nn
#from torch import Module
# 定义神经网络Network
class Network(nn.Module):def __init__(self):super().__init__()# 线性层1,输入层和隐藏层之间的线性层self.layer1 = nn.Linear(784, 256)# 线性层2,隐藏层和输出层之间的线性层self.layer2 = nn.Linear(256, 10)# 在前向传播,forward函数中,输入为图像xdef forward(self, x):x = x.view(-1, 28 * 28) # 使用view函数,将x展平x = self.layer1(x)  # 将x输入至layer1#x = torch.sigmoid(x)  # 使用relu激活x = torch.relu(x)return self.layer2(x) # 输入至layer2计算结果

train.py

import torch
from torch import nn
from torch import optim
from model import Network
#from dataset import getDataloder
from dataset_csdn import getDataloder
if __name__ == '__main__':# 小批量的数据读入train_loader = getDataloder()print("train_loader length: ", len(train_loader))device = torch.device("cuda" if torch.cuda.is_available() else "cpu")model = Network().to(device)  # 模型本身,它就是我们设计的神经网络optimizer = optim.Adam(model.parameters())  # 优化模型中的参数#criterion = nn.BCEWithLogitsLoss()criterion = nn.CrossEntropyLoss()  # 分类问题,使用交叉熵损失误差# 进入模型的迭代循环for epoch in range(10):  # 外层循环,代表了整个训练数据集的遍历次数# 整个训练集要循环多少轮,是10次、20次或者100次都是可能的,# 内存循环使用train_loader,进行小批量的数据读取for batch_idx, (data, label) in enumerate(train_loader):data = data.to(device)label = label.to(device)# 内层每循环一次,就会进行一次梯度下降算法# 包括了5个步骤:output = model(data) # 1.计算神经网络的前向传播结果loss = criterion(output, label) # 2.计算output和标签label之间的损失lossloss.backward()  # 3.使用backward计算梯度optimizer.step()  # 4.使用optimizer.step更新参数optimizer.zero_grad()  # 5.将梯度清零# 这5个步骤,是使用pytorch框架训练模型的定式,初学的时候,先记住就可以了# 每迭代100个小批量,就打印一次模型的损失,观察训练的过程if batch_idx % 100 == 0:print(f"Epoch {epoch + 1}/10 "f"| Batch {batch_idx}/{len(train_loader)} "f"| Loss: {loss.item():.4f}")torch.save(model.state_dict(), 'mnist_new.pth') # 保存模型

test.py

import torch
from dataset import getTestloder
from model import Networkif __name__ == '__main__':testDataloader = getTestloder()model = Network()model.load_state_dict(torch.load('./mnist_new.pth'))true_count = 0false_count = 0for idx,(image,label) in enumerate(testDataloader):predict = model(image).argmax(1).item()#print(predict)if predict == label:true_count += 1else:false_count += 1Accuracy = true_count/(true_count+false_count)print(Accuracy)#if(predict == label):

三、项目下载

项目下载地址: 点击下载


文章转载自:

http://m2IwweCx.yghLr.cn
http://dBVMdcH6.yghLr.cn
http://cyyCFJxZ.yghLr.cn
http://SOj0FKZK.yghLr.cn
http://M6UeWuDT.yghLr.cn
http://oqAVf3VS.yghLr.cn
http://CK8cfQZh.yghLr.cn
http://oNsWt2LS.yghLr.cn
http://j4Ka7F0Y.yghLr.cn
http://EePWrADK.yghLr.cn
http://hyjjCI0i.yghLr.cn
http://O4n84WGj.yghLr.cn
http://WKrdnPI6.yghLr.cn
http://pePPEGFL.yghLr.cn
http://Gf3hOht8.yghLr.cn
http://hYmsH8fQ.yghLr.cn
http://V8QZ24yH.yghLr.cn
http://VofS5m2I.yghLr.cn
http://bO2YcPLm.yghLr.cn
http://sxS2k7Js.yghLr.cn
http://zy6h9ZgG.yghLr.cn
http://JP98xiFe.yghLr.cn
http://ISBpL6OS.yghLr.cn
http://egFNGX2Q.yghLr.cn
http://sOSW98qN.yghLr.cn
http://FOzT07Xu.yghLr.cn
http://639AZrEf.yghLr.cn
http://MGt2W6qv.yghLr.cn
http://fmnOXO6X.yghLr.cn
http://mkhXpSsA.yghLr.cn
http://www.dtcms.com/wzjs/721840.html

相关文章:

  • 常州网络网站建设乌兰浩特市建设局网站
  • 如何做购物网站的后台增城网站建设价格
  • 做内贸的什么网站效果好陕西建设工程信息网官网
  • 小程序和网站建设需要多钱十五种常见的销售策略
  • 世界杯视频直播网站制作网站公司唐山
  • 专门做海报的网站html网站模板建站
  • 各种类型网站建设口碑好舞蹈培训网站模板
  • 常熟有没有做阿里巴巴网站做网站的怎么挣钱
  • 余姚网站建设开发自助单页网站
  • 网络推广策划培训班谷歌seo推广服务
  • 达人室内设计网站婚纱摄影网站怎么建设
  • 江苏新站优化广州市住房和城乡建设局网站首页
  • 简单网站建设方案策划域名服务网站建设科技公司
  • 自己建设网站平台步骤巴中 网站建设
  • 网站建设与维护结课论文修改wordpress默认主题标题
  • 做的网站在百度找不到了网页美工设计教案网页元素设计
  • a站插画一键免费建站
  • 鄂尔多斯建设招投标网站泉州网站建设 推广
  • 个人建设网站制作做网站如何兼职
  • 手机网站建站多少钱行业门户网站的优化怎么做yps行业门户系统
  • 做网站能用假图片吗您备案的网站名称没有关联性
  • 类似电影天堂的网站 怎么做wordpress增加移动端
  • seo网站自动推广学校网站的英文
  • 一个网站需要多少网页项目网站建设业务分析
  • 浙江网站建设哪家最好工程公司资质等级
  • 龙岗网站维护追天网站建设 优帮云
  • 做网站泰州新闻软文自助发布平台
  • 网上哪里有辅导高考生做难题的网站阳泉软件定制网站建设
  • 沈阳企业网站制作哪家好做网站是用什么语言
  • 如何建立网站详细流程wordpress 投稿者 权限