李宏毅机器学习笔记07(CNN)

卷积神经网络(Convolutional Neural Network)

1、什么是CNN

  什么卷积、为什么用CNN

2、实现CNN的步骤

  input——>convolution——>max pooling——>...——>flatten——>fully connected network——>output

3、如何用keras搭建一个CNN

4、CNN分析

1、什么是CNN

  1)什么卷积

  1、卷积本质上是“加权求和”,在信号处理中是时间上的“加权求和”,在图像处理中是空间上的“加权求和

        

  2、在信号处理中,系统的响应不仅与当前时刻系统的输入有关,也跟之前若干时刻的输入有关,比如在t3时刻的响应Y(3)=Y(0)+Y(1)+Y(2),但常常系统中不是这样的,因为0时刻的响应不太可能在1时刻仍旧未变化,那么怎么表述这种变化呢,就通过h(t)这个响应函数与x(0)相乘来表述,表述为x(m)×h(t-m),公式里的m指的  t 的变化量

             

   参考:http://muchong.com/html/201001/1773707.html

  2)为什么用CNN

     

  •  机器识图的过程:机器识别图像并不是一下子将一个复杂的图片完整识别出来,而是将一个完整的图片分割成许多个小部分,把每个小部分里具有的特征提取出来(也就是识别每个小部分),再将这些小部分具有的特征汇总到一起,就可以完成机器识别图像的过程了。

    

   

   CNN的参数比全连接神经网络少得多,为什么CNN只用较少的参数就可以用于处理图像呢?这是因为图像具有以下三点特征:

  •  一些模式比整张图片小得多,例如“鸟喙”就比整张图片小得多;
  •  同样的模式可能出现在图像的不同区域,例如“鸟喙”可能出现在图片的左上方也可能出现在图像的中间;
  •  对图像的降采样不会改变图像中的物体。

   CNN的卷积层的设计对应着前两点,池化层的设计对应着第三点。 

                          

2、实现CNN的步骤

  input——>convolution——>max pooling——>...——>flatten——>fully connected network——>output

             

    1、卷积层(CNN实际上是训练局部特征的)

  •   对应Property1:每一个Filter(待训练的参数)代表一个局部特征,假设现在两个特征(Filter1和Filter2)
  •     对应Property2:用Filter1就能探测出在不同位置的同一个flatten,而不需要用不同的Filter

                                                     

    如果图片是彩色的,也就是说它是三通道的

    

3、如何用keras搭建一个CNN

4、CNN分析

猜你喜欢

转载自www.cnblogs.com/xxlad/p/11302699.html
今日推荐