IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> pyqt5手写板+pytorch卷积神经网络,实现手写数字识别软件 -> 正文阅读

[人工智能]pyqt5手写板+pytorch卷积神经网络,实现手写数字识别软件

卷积神经网络的结构

#定义网络结构
#不是le-net5的结构
class Net(nn.Module):
    def __init__(self):
        super(Net, self).__init__()
        # Sequential表示在搭建网络模型中要执行的一系列的步骤
        # Dropout中,p=0.5表示50%的神经元不工作
        # layer3:输出层 一般输出层中不需要加Dropout
        # Conv2d Conv:卷积 2d:表示2维的卷积
        # nn.Conv2d的几个参数
        # 1:输入通道数:1表示黑白的图片 彩色的话就是3
        # 32:输出通道数:表示要生成多少个特征图
        # 5:是卷积核的大小,(5,5)表示是5*5的窗口。可以只写一个5
        # 1表示步长。步长默认值就是1
        # 2表示在padding外面填2圈0 这个相当于samepadding
        # nn.MaxPool2d的几个参数
        # 第一个2是池化的窗口的大小是2*2 第二个2表示步长为2
        self.conv1 = nn.Sequential(nn.Conv2d(1,32,5,1,2),nn.ReLU(),nn.MaxPool2d(2,2))
        self.conv2 = nn.Sequential(nn.Conv2d(32,64,5,1,2),nn.ReLU(),nn.MaxPool2d(2,2))
        self.fc1 = nn.Sequential(nn.Linear(64*7*7,1000),nn.Dropout(p=0.5),nn.ReLU())
        self.fc2 = nn.Sequential(nn.Linear(1000,10),nn.Softmax(dim=1))
        # dim=1代表对第一个维度,计算概率值
        # 因为batch = 64
        # 所以fc1输出的是(64,10)
        # 所以dim=1,表示对第二个维度进行softmax求值
    def forward(self,x):
        # ([64,1,28,28])变成2维的数据->(64,784) 全连接层做计算,必须是2维的数据
        # x = x.view(x.size()[0],-1)
        # 但是卷积只能对四维的数据进行计算 ([64,1,28,28])
        # 64表示批次的数量,1表示通道数 28表示长宽
        x = self.conv1(x)
        x = self.conv2(x)

        #将原来x四维的数据,改变为2维的数据
        # (64,64,7,7)
        x = x.view(x.size()[0],-1)

        x = self.fc1(x)
        x = self.fc2(x)
        return x

代价函数是交叉熵,优化器是Adam,基于mnist数据集训练,30轮。

手写板的一部分代码,是借鉴的网络上的,然后我又将其魔改一番,最终形成了一个界面。运行好的效果,如下图所示。

识别结果是自动识别的,点击清空画板,画板就会清空,然后识别结果会变成99999。写下数字之后,便会自动识别。几乎是0延迟,预测结果非常的快!?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-07-24 00:07:23  更:2021-07-24 00:07:42 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/22 10:58:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码