手写数字识别总结

news/2025/6/15 6:47:49/文章来源:https://www.cnblogs.com/Rickkie/p/18404993

项目介绍:

img

每张图片都是28*28的像素

img

1,使用全连接层
图像拆分成一维像素阵列作为输入值,输入到神经网络中。打包多个图像输入称为一个batch

img

2,输出数据需要做归一化,使数据概率在0-1之间

img

3,一个batch_size设置为15,共训练两次
通过调节a和b,使训练值与真实值的误差减小,形成一个最优解的问题

img

4,加入激活函数,使之变成非线性问题

img

本次项目激活函数使用整流函数,也称为线性整流函数(Rectified Linear Unit, ReLU)

img

使用GPU训练网络

数据会自动放在cpu中
使用GPU训练主要有三部分,网络模型、数据(输入、标注)、损失函数
必须确保这三部分在都CPU中或GPU上,否则报错

使用方式:使用if torch.cuda.is_available()判断GPU是否可用

  1. xx.cuda()放到GPU上 或者 xx.cpu()放回到cpu上
  2. device = torch.device("cpu")
    device1 = torch.device("cuda")
    xx.to(device)放回到cpu上
    xx.to(device1)放到gpu上
  3. device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

mnist数据集下载问题

如果网络可以,pytorch会自动下载mnist数据集,如果下载失败,下面介绍手动下载

手动下载mnist数据集文件,并导入pytorch的方法

  1. 下载原始文件,如下图所示

img

  1. 执行dataset.MNIST()下载失败之后会生成MNIST-raw文件夹

img
img

  1. 将第一步的文件放入raw文件夹,再次执行dataset.MNIST()即可完成,数据集导入

matplotlib.pyplot报错

使用matplotlib.pyplot遇到can‘t convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory问题

解决问题:matplotlib.pyplot执行之前需要将神经网络和数据都转移到cpu中

  net = net.cpu()x = x.cpu()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/794575.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

h5新特性

新增语义化标签header:整个页面或部分区域的头部footer:整个页面,或者部分区域的底部nav:导航article:文章、帖子、杂志、博客、评论等section:页面中的某段文字或者文章中的某段文字aside:侧边栏main:文档的主要内容,(WHATWG没有语义,IE不支持)hgroup:包裹连续的标题,如文章…

Python存储与读写二进制文件

本文介绍了一种在Python中将Numpy数组转存为一个紧凑的二进制格式的文件,及其使用内存映射的形式进行读取的方案。一个二进制的数据流,不仅可以更加方便页形式的内存映射,相比于传统的Numpy单精度浮点数数组还有一个可哈希的特性。总体来说是一个对于高性能计算十分友好的存…

IIS标识介绍

原文链接:https://blog.csdn.net/weixin_30607659/article/details/95294969 应用程序池的标识是运行应用程序池的工作进程所使用的服务帐户名称。默认情况下,应用程序池以 Network Service 用户帐户运行,该帐户拥有低级别的用户权限。您可以将应用程序池配置为以 Windows S…

element-ui和element-plus

element-ui适配于vue2,无法于vue3适配,如果使用vue2,则下载element-ui npm i element-ui -S element-ui组件网址:https://element.eleme.cn/#/zh-CN/component/installation 如果使用vue3,则下载element-plus npm i element-plus -S npm install -D unplugin-vue-componen…

SQL SERVER -- JSON处理

-- JSON 字符串转 行记录 Declare @JsonStr Nvarchar(Max)=[{"State":0,"Name":"语文","ReMark":"了解国学信息","RepDtl":[{"ID":1,"Age":11},{"ID":2,"Age":12},{&quo…

shell解析json

shell解析json以下是几种不同的方法来在shell中解析JSON:使用awk命令和正则表达式:json={"name":"John","age":30,"city":"New York"} key=age value=$(echo $json | awk -v k="$key" BEGIN{RS=","; …

点击切换数据

点击按钮切换echarts图标样式,使数据在柱状图和折线图之间切换点击按钮切换echarts图标样式: renderChart 函数来初始化 ECharts 图表,需要在 switchTable 函数中修改图表的 option 并重新设置给图表实例。 <template> <BasicModal @register="registerModal&…

河南省12123公安厅临牌打印如何下载打印控件

关于“12123河南省公安厅临牌打印如何下载打印控件怎么安装打印控件”的问题公安交通管理综合应用平台打印控件安装失败,河南省公安厅临牌打印如何下载打印控件,12123临牌系统怎么安装打印控件? 关于“12123河南省公安厅临牌打印如何下载打印控件怎么安装打印控件”的问…