卷积神经网络基础

全连接层

BP(back propagation)算法包括信号的前向传播和误差的反向传播两个过程。即计算误差输出时按从输入到输出的方向进行,而调整权值和阈值则从输出到输入的方向进行。

**误差值:**将输出值和所期望的值进行对比,可以得到误差值。

实例:利用BP神经网络做车牌数字识别

读入一张彩色的RGB图像,可以看到每一个像素里都包含了三个值,即RGB分量。

首先进行灰度化,灰度化之后得到中间这幅图,它的每一个像素值都只有一个分量了。

再进行二值化处理,得到黑白图像,也就是最右边的这个图像。

用一个五行三列的滑动窗口 对整个图像进行滑动,每滑动一个地方就计算白色的像素占整个像素的比例。按照这个方法遍历整个图像就得到了一个5×5的矩阵。

接着我们将5×5的矩阵按行进行展开,并把它拼接成一个行向量。一行一行的展开后得到一个一行25列的行向量。这样我们可以把这个行向量当成我们输入神经网络的输入层。

有了输入层后,我们来看下我们的**输出层。**one-hot编码是我们常用的对标签进行编码的一种方式。比如说如图我们期望他们输出的是0到9这么十个数值。

onehot好像是除了目标其余全部写0,比如一行10个位置,分别代表0-9,如果推测目标是8,那么就在第九个空位写1,其余九个空位全部写0。

我们有了输入和期望的输出,就能对网络进行训练了。

卷积层

卷积特性

  • 拥有局部感知机制
  • 权值共享

对比普通的BP神经网络(理解全连接层的全值共享)

参数

连接层之间的权重参数

输入特征矩阵

  • 卷积核的channel与输入特征层的channel相同
  • 输出的特征矩阵channel与卷积核个数相同

激活函数

为什么要引入激活函数

引入非线性因素,使其具备解决非线性问题的能力。

建议

训练过程当中,建议不要一开始就使用特别大的学习率进行学习,这样很可能导致很多神经元失活。

几个因素决定卷积后的尺寸

池化层

和卷积层比较类似,但是和卷积层比起来会简单很多。

poolsize:池化核大小

stride:步距大小

相关推荐
Shockang6 小时前
llama.cpp 本地运行 9B 模型:部署、工具调用与微调数据
人工智能
Shockang6 小时前
n8n 智能体工作流实战:触发、工具、记忆与发布护栏
人工智能
冬奇Lab8 小时前
开源项目第241期:YuE2 —— 用符号乐谱当“白盒“接口的开源音乐生成模型,SongBench 超越 Suno v5/v6
人工智能
鶴哥只手遮天9 小时前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天9 小时前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天9 小时前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天9 小时前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天9 小时前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源
鶴哥只手遮天9 小时前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级
java·人工智能·开源