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

济宁网站建设服务兰州市官网

济宁网站建设服务,兰州市官网,哪里专业做网站,重视企业网站神经网络如此神奇#xff0c;feel the magic 今天分享一下学习PyTorch官网demo的心得#xff0c;原来实现一个神经网络可以如此简单/简洁/高效#xff0c;同时也感慨PyTorch如此强大。 这个demo的目的是训练一个识别手写数字的模型#xff01; 先上源码#xff1a; fr…神经网络如此神奇feel the magic 今天分享一下学习PyTorch官网demo的心得原来实现一个神经网络可以如此简单/简洁/高效同时也感慨PyTorch如此强大。 这个demo的目的是训练一个识别手写数字的模型 先上源码 from pathlib import Path import requests # http请求库 import pickle import gzipfrom matplotlib import pyplot # 显示图像库import math import numpy as np import torch###########下载训练/验证数据###################################################### # 这里加载的是mnist数据集 DATA_PATH Path(data) PATH DATA_PATH / mnist PATH.mkdir(parentsTrue, exist_okTrue)URL https://github.com/pytorch/tutorials/raw/main/_static/ FILENAME mnist.pkl.gzif not (PATH / FILENAME).exists():content requests.get(URL FILENAME).content(PATH / FILENAME).open(wb).write(content)###########解压并加载训练数据###################################################### with gzip.open((PATH / FILENAME).as_posix(), rb) as f:((x_train, y_train), (x_valid, y_valid), _) pickle.load(f, encodinglatin-1)# 通过pyplot显示数据集中的第一张图片 # 显示过程会中断运行看到效果之后可以屏蔽掉让调试更顺畅 #print(x_train[0]: , x_train[0]) #pyplot.imshow(x_train[0].reshape((28, 28)), cmapgray) #pyplot.show()# 将加载的数据转成tensor x_train, y_train, x_valid, y_valid map(torch.tensor, (x_train, y_train, x_valid, y_valid) ) n, c x_train.shape # n是函数c是列数 print(x_train.shape: , x_train.shape) print(y_train.min: {0}, y_train.max: {1}.format(y_train.min(), y_train.max()))# 初始化权重和偏差值权重是随机出来的784*10的矩阵偏差初始化为0 weights torch.randn(784, 10) / math.sqrt(784) weights.requires_grad_() bias torch.zeros(10, requires_gradTrue)# 激活函数 def log_softmax(x):return x - x.exp().sum(-1).log().unsqueeze(-1)# 定义模型y wx b # 实际上就是单层的Linear模型 def model(xb):return log_softmax(xb weights bias)# 丢失函数 loss function def nll(input, target):return -input[range(target.shape[0]), target].mean() loss_func nll# 计算精度函数 def accuracy(out, yb):preds torch.argmax(out, dim1)return (preds yb).float().mean()###########开始训练################################################################## bs 64 # 每一批数据的大小 lr 0.5 # 学习率 epochs 2 # how many epochs to train forfor epoch in range(epochs):for i in range((n - 1) // bs 1):start_i i * bsend_i start_i bsxb x_train[start_i:end_i]yb y_train[start_i:end_i]pred model(xb) # 通过模型预测loss loss_func(pred, yb) # 通过与实际结果比对计算丢失值loss.backward() # 反向传播with torch.no_grad():weights - weights.grad * lr # 调整权重值bias - bias.grad * lr # 调整偏差值weights.grad.zero_()bias.grad.zero_()##########对比一下预测结果############################################################ xb x_train[0:bs] # 加载一批数据这里用的是训练的数据在实际应用中最好使用没训练过的数据来验证 yb y_train[0:bs] # 训练数据对应的正确结果 preds model(xb) # 使用训练之后的模型进行预测 print(################## after training ###################) print(accuracy: , accuracy(preds, yb)) # 打印出训练之后的精度 # print(preds[0]) print(pred value: , torch.argmax(preds, dim1)) # 打印预测的数字 print(real value: , yb) # 实际正确的数据可以直观地和上一行打印地数据进行对比 运行结果 可以看到训练后模型地预测精度达到了0.9531已经不错了毕竟只使用了一个单层地Linear模型从输出地对比数据中可以看出有三个地方预测错了红框标记地数字 ok今天先到这里下一篇再来解读代码中地细节 附 PyTorch官方源码https://github.com/pytorch/tutorials/blob/main/beginner_source/nn_tutorial.py 天地一逆旅同悲万古愁
http://www.hkea.cn/news/14484122/

相关文章:

  • Paas网站建设wordpress可视化编辑主题
  • 如何分析他人网站流量c2c电子商务的特点
  • 呼和浩特住房和城乡建设部网站wordpress links插件
  • 基层组织建设部网站深圳建设公司网站
  • 网站建设展滔科技大厦学校网站建设存在的问题
  • 为自己家秘方做网站wordpress搜索代码制做
  • 网站做一些流量互换有道翻译网站 做翻译
  • 苏州哪里有做淘宝网站的什么叫app是什么意思
  • 公司做的网站计入什么wordpress主题绝对路径怎么修改
  • 网站如何做微信支付宝支付宝太原建站模板厂家
  • 免费空间的个人网站wordpress下载验证码
  • 山东外贸网站建设怎么样重庆建站网站建设平台
  • 建站公司用的开源系统厦门 网站制作
  • 绿色软件下载网站推荐一级a做爰片免费网站孕交视频教程
  • 为什么要做网站推广做分析图超牛的地图网站
  • 优秀的公司网站微信个人小程序
  • 手机图片网站源码wordpress手机版怎么注册
  • o2o手机网站源码南京电子商务网站开发公司
  • 深圳鲜花团购网站建设贵阳营销型网站建设
  • 淄博网站制作建设公司企业网站建设
  • 网站建设中faqs的意思怎么做代刷网网站app
  • aspnet网站开发实例项目成都广告设计制作公司
  • 网站建设案例实录应用商店下载安装正版最新版
  • 佛山网站优化软件windows网站模板
  • 青岛网站建设eoeeoe公司名字查询
  • 四方区企业型网站建设常州网站建设联系电话
  • 如何进行网站的建设和维护正规的现货交易平台
  • 网站怎么加载图片做logo搭建软件
  • 关于网站建设的方案ppt哈尔滨模板建站定制网站
  • 服饰网站模板设计网页设计图片修改后是否可以商用