文章目录
- 1.卷积运算
- 2.池化
- 3.全连接层
卷积神经网络可以看作一个函数或者黑箱,输入就是图片的像素阵列,输出就是这个图片是什么?
图片是X,那么就输出‘x’,图片是‘O’,那么就输出O;
在计算机眼中,图片是一系列像素阵列
我们可以通过图片特征,识别图片,假设我们用提取原图中以下三种特征,我们选用以下三种卷积核。
1.卷积运算
卷积核把原图中的特征提取出来,反应在Feature Map上:
具体流程如下:
拿卷积核与图中绿色框部分进行运算,得到结果为1,代表这部分与卷积核特征完全相同
拿卷积核与中间绿色框进行卷积,得到如下卷积结果,最后得到0.55,代表保留了卷积核0.55的特征
我们拿卷积核对所有部分进行一遍卷积运算,得到如下结果:最后得到如图特征图
通过不同的卷积核提取不同的特征:
但是很多情况下,会有很多特征,通过不同的卷积核进行卷积得到很多Feature Map,那么会带来很多的计算量,那么时间就会来不及,所以我们需要把图像进行缩小,因此需要池化层。
2.池化
池话分为两种:最大池化和平均池化,一般使用Max pooling(在保留了原图特征的同时,还可以降低图像尺寸,降低计算量)
激活层
激活层主要对卷积层的输出进行一个非线性映射。
使用ReLUs
3.全连接层
但是,权重和卷积核又该怎么选择呢?这个是需要训练得到。
损失函数是预测值与真实值的差距,通过后向传播不断求导,得到损失值最小的参数,经过不停的训练,大量的数据,最后模型自己就知道采用哪些卷积核、每一个神经元的权重是多少,这就是机器学习。
(不需要人为指定卷积核,amazing!!!)
当找到损失函数的最小值时即成功了,但是我们需要一个初始参数,(事先指定卷积核的尺寸、数目、随机生成卷积核、全连接层的数量等)这就是超参数。
【本文为学习CNN的笔记】有错误欢迎指正👊👊👊
视频地址