卷积神经网络
CNN
对为什么使用卷积的个人理解:使用卷积能减少初始观测范围,利于抓住局部特征,更符合人对事物(尤其图像)的判断能力,所以弹性变小,加上参数共享,所以能增大bias,再慢慢扩大观测范围


Simplification
fully connected will lead to overfitting
对于图像来说,layer中的neuron只需要看部分pattern,就能判断对象
way1: Receptive felid(allow fold)

3 * 3 * 3

stride:步长 overlap:重叠 padding:补丁(空缺值)
way2 parameter sharing
针对weight相同的neuron(检测功能相同)
同样的参数(下图中两个neuron称为filter)

得到Convolutional Layer
may larger model bias(for images, no more flexibility(overfiting))
another insight
用很多filter抓pattern

设filter的数值已知,得到feature map,channel大小为filter数量

叠加Convolutional Layers

由于每一层卷积层都在把观测范围扩大(浓缩到一个点上),实际上递增每层都在观察更大范围的图片。
两种方法的不同角度
法一:对于一个Receptive field,有很多neuron在监守,对于很多Receptive field有相同参数的不同neuron监守,称之为filter。这些nueron组成Convolutional layer
法二:在一个Convolutional layer来说,有很多filter,把每个filter在image中移动与对应矩阵相乘(元素相乘),得到feature map,其中有几个filter就有多少channel,接下来的layer中filter根据前面的channel增加维度。
其他常用寄巧
Pooling(子采样) 属于intervation function(没有要根据data学任何东西,如softmax,Relu)
比如拿走奇数列和偶数行像素...也能看出来图片
Max(Min) Pooling

在filter处理后找到划定组中的对应值,剔除其他值

下围棋为什么用CNN(Alpha Go)
把现状看做图像,用-1 0 1代表白 无 黑
用48个channel(评判角度)
很多可以看局部看棋局
同一情况可以出现在棋盘左上角或右下角
CNN is not invariant to scaling and rotation
Q&A
Q:filter是寻找特征的,但是channel在图像中是RGB但是在Alpha go上是这个位置是不是被叫吃,这不是filter的任务吗?
A:channel是提供不同信息的通道,这里是为卷积核提供一些基础信息的

浙公网安备 33010602011771号