【李宏毅】CNN

Convolutional Neural Network

CNN常常被用在图像处理(image processing)上

Why CNN for image?

当我们用一般的fully connected neural network来做图像处理的时候,往往我们会需要太多的参数,举例来说:

我们有一张100 x 100 的彩色图片(RGB),把它拉成一个vector的时候,它就有100 x 100 x 3(RGB)的pixel(每个pixel需要有三个value来描述它(RGB))

input vector:100 x 100 x 3 = 30000维

hidden layer(假设有 1000 个neuron),则第一个hidden layer的参数就有30000 x 1000(太多)

CNN把一些不需要的参数拿掉,可以简化neural network的架构,比一般DNN简单。

1. some patterns are much smaller than the whole image.

大部分的pattern比整张图像要小,只要看一部分的图像就可以确定这件事情。

比如一只鸟,侦测有没有鸟嘴的存在,仅需要看鸟嘴的部分。

2. The same patterns appear in different regions

同一个特征出现在图片的不同地方可以使用同一组参数进行侦测,无需重新设计。

3. Subsampling the pixels will not change the object

The Whole CNN:

怎么根据图像的性质来使用CNN的:

CNN的各个部分:

1. Convolution

黑白图:

有一个 6 x 6 的黑白的image,0代表无墨水,1代表有墨水。我们有很多个3 x 3 的filter,每个filter相当于fully connected neural network中的一个neuron,每个filter都侦测一个pattern, pattern比整个image小。

每个filter和image对应的部分做内积,filter每次挪动的距离叫做步长,自己设定,由此image的维度由6 x 6变成4 x 4, 同时验证了property2,同一个pattern出现在image不同的地方我们可以用同一个filter来侦测。

           

彩色图:

convolution是fully connected 把一些weight拿掉:

                 

2. max pooling

选择每个框里面最大的(最小的等)。4 x 4 变成 2 x 2

                     

通过一次convolution和max pooling就可以得到一个较小的image。

            

3. Flatten

把image拉直放到fully connected neural network里

围棋也可以用CNN,可以达到更好的效果,因为它有图像的一下特点,没有用到max pooling(因为围棋的特性)。

         

 

参考文章:

https://medium.com/@RaghavPrabhu/understanding-of-convolutional-neural-network-cnn-deep-learning-99760835f148

对于彩色图像:n x n x 3(RGB)

对于灰度图像:n x n x 1

CNN模型用来训练和测试,每个输入图像经过一系列的卷积层(有filter(kernals)),池化层(pooling),全连接层并且应用softmax function来分类一个对象(用介于0-1之间的概率值)。

 

参考文章:https://blog.csdn.net/v_july_v/article/details/51812459

激活函数:sigmoid:实际梯度下降中,sigmoid容易饱和、造成终止梯度传递,且没有0中心化。

ReLU:优点是收敛快,求梯度简单

参考文章:https://blog.csdn.net/ruiyiin/article/details/77113973

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值