卷积神经网络的最佳解释!

CNN在图像和视频识别,推荐系统和自然语言处理中有着广泛的应用。在这篇文章中举的例子是计算机视觉,但是,基本概念是一致的,可以应用于任何其他用例。


作者 | Harsh Pokharna

编译 | 专知

参与 | Yingying, Xiaowen



添加微信:MLAPython

(姓名-单位-方向)

即可加入机器学习交流群

The best explanation of Convolutional Neural Networks 

on the Internet!


CNN由由可学习权重和偏置的神经元组成。每个神经元接收多个输入,对它们进行加权求和,将其传递给一个激活函数并用一个输出作为响应。整个网络有一个损失函数,在神经网络开发过程中的技巧和窍门仍然适用于CNN。很简单,对吧?


那么,卷积神经网络与神经网络有什么不同呢?

640?wx_fmt=png

和神经网络输入不同,这里的输入是一个多通道图像(在这种情况下是3通道,如RGB)。


在我们深入之前,让我们先了解一下卷积的含义。


卷积



640?wx_fmt=png


我们用5 * 5 * 3的滤波器滑过整个图像,并在滑动过程中与滑过的图像部分点积。

640?wx_fmt=png

每个点积的结果都是标量。


那么,当我们将整个图像与滤波器进行卷积时会发生什么?

640?wx_fmt=png

 

卷积结果的大小28是怎么来的留给读者思考。(提示:有28 * 28个独特的位置,滤波器可以放在图像上)


现在回到CNN



卷积层是卷积神经网络的重要部分。

640?wx_fmt=png


卷积层包含一组独立的滤波器(在所示的例子中是6个)。每个滤波器都与图像独立卷积,最终形成6个形状为28 * 28 * 1的特征图。


假设我们有多个卷积层。然后会发生什么?

640?wx_fmt=png

 

所有这些滤波器都是随机初始化的,并在网络训练过程中学习参数。


下面是训练好的网络的例子。

640?wx_fmt=png

 

看看第一层中的滤波器(在这是5 * 5 * 3的滤波器)。通过反向传播,逐渐调整成为彩色碎片和边缘的斑点。当层次变深时,滤波器与先前一层的输出做点积。所以,他们正在用较小的彩色碎片或边缘制作出更大的碎片。


对于特定的特征图,每个神经元仅与输入图像的一小块连接,并且所有神经元具有相同的连接权重,这就是CNN与神经网络的最大区别。


参数共享和局部连接



参数共享指的是特定特征图中所有神经元的权重共享。


局部连接是每个神经只与输入图像的一个子集连接(不同于全连接的神经网络)

这有助于减少整个系统中的参数数量,并使计算更加高效。


池化层



池化层是CNN的另一个构建块。

640?wx_fmt=png

 其功能是逐步缩小表示空间的大小,以减少网络中的参数和计算量。池化层独立地在每个特征映射上工作。


最常用的方法是最大池化(max pooling)。

640?wx_fmt=png


CNN的典型架构



640?wx_fmt=png

我们已经介绍了卷积层(由CONV表示)和池化层(由POOL表示)。


RELU只是一个应用于神经单元的非线性激活函数。


FC是CNN末端的全连接层。全连接层中的神经元与前一层中的所有激活都有完全连接,如常规神经网络中所见,并以相似的方式工作。


CNN架构有许多变化,但正如我之前提到的,基本概念保持不变。


原文链接:

https://medium.com/technologymadeeasy/the-best-explanation-of-convolutional-neural-networks-on-the-internet-fbb8b1ad5df8


640?wx_fmt=png

卷积神经网络(Convolutional Neural Networks,CNNs)是深度学习中广泛应用的一种神经网络模型,主要用于图像分类、目标检测、语音识别等任务。近年来,CNNs的研究在不断地推进,以下是一些CNNs前沿研究的例子: 1. 神经架构搜索(Neural Architecture Search,NAS):使用神经网络自动搜索最佳的CNNs结构,以获得更高的准确率和更快的速度。目前已经出现了很多NAS方法,如AmoebaNet、ENAS、DARTS等。 2. 轻量级CNNs:针对移动设备等计算资源有限的场景,研究者们提出了一些轻量级CNNs,如MobileNet、ShuffleNet、EfficientNet等,这些模型在保持较高准确率的同时,参数量和计算量都很小。 3. 自注意力机制(Self-Attention):自注意力机制是一种新兴的神经网络模块,可以在输入序列中寻找相关性,并根据相关性来加权计算每个位置的表示,从而达到更好的性能。自注意力机制已经被广泛应用于自然语言处理和计算机视觉领域,如BERT、GPT、ViT等。 4. 对抗攻击和防御:对抗攻击是指在输入中添加一些干扰,从而让神经网络的输出发生误判。针对这个问题,研究者们提出了一些对抗防御方法,如对抗训练、对抗降噪、对抗蒸馏等。 5. 可解释性:CNNs通常被认为是“黑盒子”模型,即我们无法解释它们的内部工作机制。为了让CNNs更具可解释性,研究者们提出了一些方法,如可视化激活、梯度可视化、CAM、Grad-CAM等。这些方法可以帮助我们理解模型的决策过程和学习到的特征。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值