您需要了解的有关卷积神经网络的一切
卷积神经网络–在本文中,我们将在更高层次上探索对卷积神经网络(CNN)的直观解释。CNN受到大脑结构的启发,但由于我们不专门研究任何生物学方面的内容,因此我们在这里的重点不会放在神经科学上。在这篇文章中我们将变得人为。
卷积神经网络是一种特殊的多层神经网络。
什么是 卷积神经网络
卷积神经网络(CNN)–在许多人看来可能看起来像魔术,但实际上,它只是一门简单的科学和数学。CNN是一类神经网络,已被证明在图像识别,处理和分类领域非常有效。
根据Wiki –在机器学习中,卷积神经网络(CNN或ConvNet)是一类深层的前馈人工神经网络,最常用于分析视觉图像。
CNN背后的人工智能解决方案惊人地改变了企业和开发人员创造用户体验和解决现实问题的方式。 CNN也被称为神经科学在机器学习中的应用。它采用称为“卷积”的数学运算;这是一种特殊的线性运算。对于CNN中的数据处理,具有用于数据的网格拓扑,即
一维网格–时间序列数据–定期采样
2D网格–图像数据–像素网格
在CNN中,数据处理被称为网格状拓扑,因为数据处理发生在相邻数据点之间的空间相关性中。该神经网络使用卷积方法来反对至少一层中的通用矩阵乘法。卷积作用于
等值表示– 这仅表示如果输入发生变化,则输出以相同的方式发生变化
稀疏交互 -这使网络可以有效地描述来自简单构造块的许多变量之间的复杂交互。
参数共享– 将同一参数用于模型中的多个功能
创建上述结构是为了改进机器学习系统。CNN还允许处理可变大小的输入,并有效地描述来自简单构建块的许多变量之间的复杂交互。
周围的一些历史-卷积神经网络(CNN)
除机器人和自动驾驶汽车的视野增强外,ConvNets还成功地识别了人脸,物体和交通标志。自1988年以来,Yann LeCun在经过多次成功的迭代之后被命名为LeNet5。LeNet是最早推动深度学习的卷积神经网络之一。
2012年,Alex Krizhevsky在ImageNet竞赛中使用了卷积神经网络,从那时起,所有大公司都为此而奔波。CNN是计算机视觉领域最有影响力的创新。在1990年代,LeNet体系结构主要用于字符识别任务,例如读取邮政编码,数字等。
图像处理–人与计算机
对于人类来说,物体的识别是我们从出生就开始学习的首要技能。刚出生的婴儿开始将面孔识别为爸爸,妈妈等。识别变得轻松而自动化。
处理图像的人类行为与机器有很大不同。人们只要环顾四周并立即刻画场景特征,就可以自动给每个图像添加标签,并且甚至无需自觉地注意到每个对象都带有标签。
对于计算机而言,识别对象的过程稍微有些复杂,因为它看到的所有事物都变成输入或输出,成为类或类集。这就是所谓的图像处理,我们将在下一节中详细讨论。在计算机中,CNN进行图像识别,图像分类。它在对象检测,人脸识别以及在带有单词嵌入任务的各种文本分类中都非常成功时非常有用。
简而言之,计算机视觉就是根据视觉元素和图案自动理解任何图像或视频的能力。
输入和输出–工作原理
我们在这篇文章中的重点将仅放在图像处理上
在CNN中,需要对模型进行训练和测试。每个输入图像都经过一系列带有滤波器(内核),池化,完全连接层(FC)的卷积层,并应用softmax函数(逻辑函数的一般化,该逻辑函数将任意实数值的K维向量“压缩”为实数值) Kd向量)以将概率值介于0和1之间的对象分类。这就是CCN中每个图像都表示为像素值矩阵的原因。
卷积神经网络将输入图像分类为例如狗,猫,鹿,狮子或鸟等类别。
卷积+合并层充当输入图像的特征提取器,而完全连接的层充当分类器。在上图中,在接收到一张精美的图像作为输入时,网络会在所有四个类别中为其正确分配最高概率(0.94)。但是,输出层中所有概率的总和应该为一。上图中显示的ConvNet中有四个主要操作:
卷积
非线性(ReLU)
合并或子采样
分类(全连接层)
这些操作是每个卷积神经网络的基本构建块,因此了解这些工作原理是对ConvNet或CNN有了良好理解的重要一步。
卷积神经网络–体系结构
如上图所述,用于构建卷积神经网络的层。简单的ConvNet是一系列序列,而ConvNet的每一层都通过可区分的功能将一个激活量转换为另一个激活量。我们使用四种主要类型的层来构建我们上面的ConvNet架构:卷积层,ReLU,池化和全连接层。
初始化
用随机值初始化所有过滤器和参数/权重
输入图像 和 卷积层
这将训练图像的原始像素值保存为输入。在上面的示例中,使用了宽度为32,高度为32且具有三个颜色通道R,G,B的图像(鹿)。它经过前向传播步骤,并找到每个类别的输出概率。该层通过使用输入数据的小方块学习图像特征来确保像素之间的空间关系。
假设上面图像的输出概率为[0.2,0.1,0.3,0.4]
特征图的大小由三个参数控制。
深度– 用于卷积运算的滤波器数量。
步幅– 在输入矩阵上过滤矩阵所用的像素数。
padding – 最好输入在边界矩阵周围为零的矩阵。
使用所有4个类的总和来计算输出层的总误差。
总误差= ∑?(目标概率–输出概率)2
连接到输入中局部区域的神经元的输出计算。这可能会导致16个滤镜的体积为[32x32x16]。
整流线性单元(ReLU)层
甲 非线性操作。该层应用逐元素激活功能。在每个卷积操作之后都使用ReLU。它按像素应用,并将特征图中的所有负像素值替换为零。这使卷的大小保持不变([32x32x16])。ReLU是非线性运算。
1


雷达卡



京公网安备 11010802022788号







