CNN与为什么要做DNN(Deep neural network)(李弘毅 机器学习)

本文介绍了CNN的整体过程,包括卷积、最大池化和展平操作,解释了为何使用这些操作。接着讨论了CNN与全连接网络的区别,强调了权重共享减少计算参数。文章还探讨了深度神经网络(DNN)的重要性,指出更深的网络实现模组化,有助于避免过拟合,有效利用数据。最后,提到了端对端学习的概念。
摘要由CSDN通过智能技术生成

CNN整体过程

1.整体架构
在这里插入图片描述

  1. 卷积操作(convolution):可以进行卷积操作是因为对于图像而言,有些部分区域要比整个图像更加重要。并且相同的部分会出现在不同的区域,我们使用卷积操作可以降低成本。比如,我们识别鸟,鸟嘴部分的信息很重要,通过这个鸟嘴,我们就可以识别出这个是一只鸟。鸟不止一种类型,用很多种类,但鸟嘴都是大同小异的,所以对于鸟嘴的这个特征,我们就可以使用相同的函数进行识别,从而降低了成本。
  2. Max Pooling操作。可以进行池化操作的原因是我们对图像进行subsampling处理,不影响整个图像的处理。比如,我们对像素进行子取样。比如只取原来图像奇数位置的像素,从而得到了一张更小的图片,但是这种处理对描述整个图像是没有什么大影响的,但是却可以大大的减少了参数。
  3. Flatten.这个平坦化的处理就是将我们经过卷积和池化的最终进行进行处理,也就是把矩阵形式拉直变成一个向量进行处理,然后将这个向量作为输入,输入到全连接的网络中去。
卷积

1.首先定义一个卷积核,也就是过滤矩阵。这个卷积核里的值不是人为设定的,是机器学习出来的。我们根据卷积核的大小与输入矩阵对应大小位置进行点乘操作,根据步长移动卷积核,一次进行点乘,得到feature map。
在feature map中,值比较大并且相同的我们认为在原始图像中他们表示的是同一个特征。以下图为例:
在这里插入图片描述
这个我们的输入矩阵是66的。卷积核是33的,步长为1。有两个卷积核。
两个卷积核所以feature map是两层。可以看出,现在的feature map比原来的图像矩阵要小(44<66).我们上面的例子是对于灰度图像。下面我们看一个对于彩色图像的。
在这里插入图片描述
彩色图像有RGB三个通道。所以原始输入图像有三层,每个通道一层。而对应的卷积核也是三层,相当于一个立方体。

Max pooling

Max pool的思路很简单,就是对feature map进行分组,然后在每组中选出一个最大的值作为代表。
在这里插入图片描述
在这里插入图片描述
根据第一幅图用红色方框圈出的最大值,可以对应的第二幅的矩阵的每个元素。比如第一组在filter2下最大值为-1.这样一来,原来6 * 6 的矩阵变成了2 * 2的矩阵。

Flatten

我们将矩阵拉直,输入到全连接网络。
在这里插入图片描述

CNN 与全连接网络

在这里插入图片描述
其实就是输入矩阵拉直成向量,然后filter矩阵的元素作为相应连接到的边的权重。也就是只连接部分边的全连接网络。
在这里插入图片描述
我们可以发现,由于filter是共同的,所以权重是共享的,这样一来,计算参数就会少很多。

CNN学习的过程(存在疑问)

对于输入的图像,经过卷积操作,得到feature map。
对于第k个卷积核、11*11大小的feature map而言,我们首先可以求解
a k a^{k}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值