卷积神经网络
前言
学会变通,才能开启新的道路。——Hoohoo
大家好,因为最近在学SLAM14,但是由于一些原因,可能是分类过于多,我决定先把CV的前瞻课程学好——也就是深度学习这块,其实一直有了解,只是断断续续,也没有给自己一个确切的目标,毕竟现在搞视觉不带点深度学习的东西没办法搞了就。
当然深度学习其实是蛮简单的,知乎上有一篇文章:《神经网络15分钟入门!足够通俗易懂了吧》十分不错,希望有兴趣的可以去看下,当时我看的时候,脑子里浮现的就俩字,“就这?”,当然不是来质疑作者的噱头,而是震惊神经网络就这吗?直到后来,系统地看了《深度学习入门——基于python的理论与实现》,这本书很好,而且字也蛮大,看得很快,会比较有成就感,发现神经网络还真就这。
我也结合了《深度学习之TensorFlow——入门、原理与进阶实战》,看了上面那两个资料后,就会发现这本书学起来非常快,因为tf封装了许多内容,比如Loss这里,你直接调用就好了,而我当时抓耳挠腮纠结了许久原理以及求导。
但是因为我个人是有一定的python基础和机器学习基础,所以学起来觉得并没有那么难,就像是之前问过一个同学的,学学原理,发现现有的框架里封装的函数直接给你实现了,不用你搞那么多,毕竟有轮子我就不造了。
我会写一个大概的合集,来介绍目前的一些神经网络,但是是基础的神经网络,毕竟我看的书才YOLO2,现在YOLO5都出来了,而且这本书采用的是tf1… 我决定使用Pytorch,毕竟工业界用的比较多的是tf,而我们学生家家就乖乖用PyTorch吧。
不过没关系,就这样开始吧。
学习笔记
全连接网络的局限性
如果说有很多个输入节点,而且隐藏层一多,那么会导致参数过多。
比如三个全连接层的网络,输入784的话,隐藏层节点为100,即为(784 * 100 * 100 * 100 *100 * 10)…
太多了,可以参考下图。
而且全连接网络忽视了图像的形状,比如,我们一张有色彩的图片,一般是三通道的,但是全连接网络会将其压缩成1 chanel。所以全连接层无法利用与性状有关的信息。
卷积网络
卷积层
卷积层的输入输出数据称为 特征图(feature map)
输入: 输入特征图
输出: 输出特征图
卷积运算
卷积运算相当于图像处理中的滤波运算。
卷积运算非常好理解,除了我画得比较丑。
多层卷积就多层卷积就一对一,二对二进行卷积运算,然后叠加在一起成为一个。
如果想成为多个,就输入多个滤波器。
有几个滤波器,输出几个卷积。