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 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 手写数字识别-基于卷积神经网络 -> 正文阅读

[人工智能]手写数字识别-基于卷积神经网络

🌞欢迎来到机器学习的世界?
🌈博客主页:卿云阁

?💌欢迎关注🎉点赞👍收藏??留言📝

🌟本文由卿云阁原创!

🌠本阶段属于练气阶段,希望各位仙友顺利完成突破

📆首发时间:🌹2021年6月5日🌹

??希望可以和大家一起完成进阶之路!

🙏作者水平很有限,如果发现错误,请留言轰炸哦!万分感谢!

2022年 6月27日 天气小雨


目录

🍈 一、必备知识

?🍉二. 神经网络

🍊三、卷积神经网络的介绍

🍈 一、必备知识

(1)手写数字

? ? ? ?机器识图的过程:机器识别图像并不是一下子将一个复杂的图片完整识别出来,而是将一个完整的图片分割成许多个小部分,把每个小部分里具有的特征提取出来(也就是识别每个小部分),再将这些小部分具有的特征汇总到一起,就可以完成机器识别图像的过程了。

(2)手写识别数据集
? ? ? MNIST包含 70000 张手写数字图像: 60000 张用于训练; 10000 张用于测试。 28x28 像素的灰度图。

(3)数字的表示(28*28)

在灰色图中会把每一个像素用(0-255之间的数字表示,越接近白色,数字越接近255)

一张图像数据有一个东西叫做颜色通道,比如常见的jpg格式的图像,就三颜色通道(RGB红色、绿色、蓝色)一张有颜色的图像由一个三维数组表示。

?

(4)矩阵变换

数据集一共60000张,相当于60000张28*28的纸片摞起来。

因为有些函数只能处理二维数据,所以我们要想办法把数据降到二维。?

数据集相当于

(60000, 784)的一个矩阵

(5)归一化

? ? ?经过归一化处理后,每张图片由1*784的矩阵组成,矩阵中的每一个元素由(0-1)的数字组成。?

?

(6)标签的表示

把标签用一个一维数组表示。

5

array([0, 0, 0, 0, 0, 1, 0, 0, 0, 0], dtype=uint8)


?🍉二. 神经网络

基本介绍

?在这里,我们可以把加权看成是树突的作用,把阈值和激活函数看成是细胞核的处理

得分函数

假设有四个像素点,每一个像素对应一个权重,因为各个点的影响程度不同。

?

激活函数和损失函数(不同的任务需要不同的损失函数)

?

神经网络回顾(Neural Network)

一个简单的神经网络模型由三个部分组成,输入层,隐藏层,输出层

前向传播 Forward propagation?

? ? ? 每个神经元都 对它的 输入和权重相乘再相加 ,然后 加上偏置 ,最后使 用非线性 激活函数 ,重复此 过程,直至传 递到输出层, 得出预测概率。
在这里,我们可以把加权看成是 树突的作用,把阈值和激活函数看成是 细胞核的处理

? ?输入层表示输入图像( 64 维向量)本身。如果将各个点的像素值存储在长度为 64 的一维数组的元 素中,则可以将其视为 64 维数据来处理。下面通过神经网络来学习使用上述方法得到的 64 维数据。
? 中间层使用 Sigmoid 等非线性函数计算输入层传来的数据。中间层的维度是超参数。使维度变 大可以学习更加复杂的边界,但是容易发生过拟合。本次设置中间层为 16 维。下面的“算法说明” 部分将再次介绍中间层的计算方法、中间层的维度和学习结果的关系。
? 输出层也同样使用非线性函数计算中间层传来的数据。本次任务是对 0 9 10 个数字进行 分类。因此,输出层输出的是输入手写图像分别为 0 9 10 个数字的概率。
?反向传播 Back propagation ?
训练过程:找到使得损失函数最小的权重。
梯度下降:求得每个参数相对于损失函数的偏导,
用偏导数乘以学习率得到需要改变的量,用原权 重减去改变的量,得到新的权重。
再进行正向传播,计算新的损失值,重复此过程
使得损失函数为零或在设定的范围,完成训练。
损失函数loss
a是预测值,y是样本标签值

? 目的是让损失函数越小越好,我们的目的是找到loss的最小值,loss的值与(w,b)组成,其中,我们用\Theta表示(w,b),loss是关于其的一个函数。

损失函数图像


🍊三、卷积神经网络的介绍

网络结构

卷积神经网络识别图像

  1. 卷积层初步提取特征

  2. 池化层提取主要特征

  3. 全连接层将各部分特征汇总

  4. 产生分类器,进行预测识别

通过CNN来区别两类。?

要求我们要区分一些不标准的图片,所以我们要提取特点。

?把这些特征提取出来作为卷积核(实际上的卷积核需要计算机不断的寻找)

?卷积的过程

1*1,-1*-1,等依次计算,填满该矩阵,填满之后加起来然后除于9的得到一个值,即为选定局域得到的中心值的结果。

得到了7*7像素的特征图 ,(该卷积核作用于该图片上的卷积结果)

特征图上,保留了原始图像的特征,在特征图上体现卷积核的特征位置的点越接近于1.

对提取出来的三个特征的卷积核,与图像卷积,得到三个特征图。

?



池化的过程

?以四个为一组做最大的池化,依次移动方格,得到三张减参特征图

?

?得到三张4*4的减参特征图

?激活函数

在这里我们使用relu激活函数(0,和本身)提高运算效率,便于进行非线性运算,

通过对卷积,池化,激活,像搭积木一样的叠加,把9*9的原始图像变成3张2*2的特征图。

?

借助神经网络进行分类,首先把三张2*2的特征图展平,作为神经网络的的输入进行神经网络的计算。?

步长是指卷积时,卷积核移动的方格的个数。加边的目的是为了捕捉到边缘的信息。

维度变换 (长宽的变换步长和加边规则是由,厚度是由卷积核的数量)

?

训练的目的是为了的到卷积核的内容和偏置项。

如果图片是彩色的,用三维数组表示。

?

?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-07-03 10:48:33  更:2022-07-03 10:49:12 
 
开发: 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年11日历 -2024/11/26 0:32:47-

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