七分钟深入理解——卷积神经网络(CNN)

 

介绍

在过去的几十年中,深度学习由于能够处理大量数据而被证明是一种非常强大的工具。使用隐藏层的兴趣已经超越了传统技术,尤其是在模式识别方面。卷积神经网络是最受欢迎的深度神经网络之一。

七分钟深入理解——卷积神经网络(CNN)_第1张图片

1950年代(即AI的早期)以来,研究人员一直在努力打造一个可以理解视觉数据的系统。在随后的几年中,该领域被称为计算机视觉。2012年,多伦多大学的一组研究人员开发了一个AI模型,该模型超越了最佳的图像识别算法,而且也大大超越了AI,因此计算机视觉发生了巨大的飞跃。

被称为AlexNet(以其主要创建者Alex Krizhevsky命名)的AI系统,以惊人的85%的精度赢得了2012ImageNet计算机视觉大赛。季军在测试中得分仅为74%。

AlexNet的核心是卷积神经网络,一种特殊的神经网络,可以粗略地模仿人类的视觉。多年来,CNN已成为许多计算机视觉应用程序中非常重要的一部分。因此,让我们看一下CNN的工作原理。

CNN的背景

CNN最早是在1980年代左右开发和使用的。当时CNN最多能做的就是识别手写数字。它主要用于邮政部门中以读取邮政编码,个人识别码等。对于任何深度学习模型,要记住的重要一点是,它需要训练大量的数据,并且还需要大量的计算资源。这是当时的CNN的主要缺点,因此CNN仅限于邮政部门,因此未能进入机器学习领域。

七分钟深入理解——卷积神经网络(CNN)_第2张图片

2012年,Alex Krizhevsky意识到是时候重新使用多层神经网络的深度学习分支了。大量数据的可用性,更具体的ImageNet数据集以及数百万个带有标签的图像以及丰富的计算资源,使研究人员能够复兴CNN

CNN到底是什么?

在深度学习中,卷积神经网络(CNN / ConvNet)是一类深度神经网络,最常用于分析视觉图像。现在,当我们想到神经网络时,我们想到的是矩阵乘法,但ConvNet并非如此。它使用一种称为卷积的特殊技术。现在,在数学中,卷积是对两个函数的数学运算,它产生一个第三个函数,该函数表示一个函数的形状如何被另一个函数修改。

七分钟深入理解——卷积神经网络(CNN)_第3张图片

但是,我们真的不需要深入研究数学部分来了解什么是CNNCNN的工作原理。

最重要的是,ConvNet的作用是将图像缩小为易于处理的形式,而又不会丢失对获得良好预测至关重要的功能。

它是如何工作的?

在开始CNN的工作之前,我们先介绍一下什么是图像及其表示方式等基本知识。RGB图像不过是具有三个平面的像素值矩阵,而灰度图像是相同的,但是只有一个平面。看一下这张图片,以了解更多信息。

七分钟深入理解——卷积神经网络(CNN)_第4张图片

为方便理解,我们使用灰度图像来说明CNN的工作方式。

七分钟深入理解——卷积神经网络(CNN)_第5张图片

 

上图显示了卷积。我们采用一个过滤器/内核(3×3矩阵),并将其应用于输入图像以获得卷积特征。该卷积特征将传递到下一层。

七分钟深入理解——卷积神经网络(CNN)_第6张图片

对于RGB颜色,无非是3个通道一起运算,如下面的动态图所示。

七分钟深入理解——卷积神经网络(CNN)_第7张图片 标题

卷积神经网络由多层人工神经元组成。人工神经元是其生物学对应物的粗略模仿,是一种数学函数,可计算多个输入的加权总和并输出激活值。在ConvNet中输入图像时,每一层都会生成多个激活函数,这些激活函数会传递到下一层。

第一层通常提取基本特征,例如水平或对角线边缘。此输出将传递到检测更复杂特征(例如拐角或组合边)的下一层。随着我们深入网络,它可以识别甚至更复杂的特征,例如对象,面部等。最终,提取的就是高级特征,甚至可能我们都无法理解的抽象特征。

七分钟深入理解——卷积神经网络(CNN)_第8张图片

 

基于最终卷积层的激活图,分类层输出一组置信度分数(值在01之间),这些置信度分数指定图像属于的可能性。例如,如果您有一个ConvNet可以检测猫,狗和马,那么最后一层的输出就是输入图像包含其中任何动物的可能性。

七分钟深入理解——卷积神经网络(CNN)_第9张图片

什么是池化层?

与卷积层相似,池化层负责减小卷积特征的空间大小。这是通过减小尺寸来减少处理数据所需的计算能力。平均池化和最大池化有两种类型。

需要注意,这里的右侧图是原始图像,在每个工作区域内找他的最大值,作为处理结果,如左边的结果所示。

七分钟深入理解——卷积神经网络(CNN)_第10张图片

因此,我们在最大池化中所做的就是从内核覆盖的图像的一部分中找到一个像素的最大值。Max Pooling还可以用作噪声抑制器。它完全丢弃了嘈杂的激活,并且还执行了降噪以及降维。

另一方面,平均池化从内核覆盖的图像部分返回所有值平均值。平均池化只是将降维作为一种噪声抑制机制。因此,可以说Max Pooling的性能要比Average Pooling好得多

七分钟深入理解——卷积神经网络(CNN)_第11张图片

局限性

尽管CNN的功能和资源很复杂,但它们提供了深入的结果。归根结底,它只是识别模式和细节,这些细节和细节是如此微弱和不起眼,以至于人眼无法察觉。或者说,我们人类无法理解这些高级特征。或者说,这些特征并不很直观。

总是,当要了解图像的内容时,这些特征可能,就失败了。

让我们看一下这个例子。当我们将下图传递给CNN时,它检测到一个30岁左右的人和一个大概10岁左右的孩子。但是,当我们看同一张图片时,我们开始考虑多种不同的情况。也许是父子俩出门,野餐,或者他们正在露营。也许是在校园里,孩子打进了一球,他父亲很高兴,所以他举起了他。

简单说,它能理解对象,但是不能理解语义。

七分钟深入理解——卷积神经网络(CNN)_第12张图片

在实际应用中,这些局限性是显而易见的。例如,CNN广泛用于管理社交媒体上的内容。但是,尽管经过大量培训的图像和视频资源仍然无法完全阻止和删除不当内容。事实证明,它在Facebook上删除了一幅30000年前的裸露雕像,因为它可能涉嫌传播不当内容。

多项研究表明,在ImageNet和其他流行的数据集上训练的CNN在不同照明条件下从新角度看到物体时,无法检测到物体。

这是否意味着CNN毫无用处?尽管卷积神经网络有局限性,但不可否认的是,它们已经引起了人工智能领域的革命。如今,CNN已用于许多计算机视觉应用程序中,例如面部识别,图像搜索和编辑,增强现实等等。正如卷积神经网络的进步所表明的那样,我们的成就令人瞩目且有用,但我们距离复制人类智能的关键组成部分还很遥远。

来源:

https://www.analyticsvidhya.com/blog/2021/05/convolutional-neural-networks-cnn/#:~:text=In%20deep%20learning%2C%20a%20convolutional,applied%20to%20analyze%20visual%20imagery.&text=It%20uses%20a%20special%20technique%20called%20Convolution.

 

扫描直达:

七分钟深入理解——卷积神经网络(CNN)_第13张图片

七分钟深入理解——卷积神经网络(CNN)_第14张图片

 

你可能感兴趣的:(深度学习,神经网络,python,计算机视觉,机器学习,人工智能)