美文网首页
神经网络基础拾遗

神经网络基础拾遗

作者: 黑恶歌王 | 来源:发表于2019-02-24 17:07 被阅读0次

为什么写这块的文章

虽然我们确实在干一些很高端的工作了,但是实际上基础还是差的很多,这里我们抓紧把神经网络中的一些基础知识补充一下。虽说要不懂就问,但是这个时候说自己什么不会确实也是太虚。

神经网络一些常用的层总结

卷积层:
卷积操作在学信号处理的时候略有的那点知识应该还有印象。这里借鉴一下这篇文章 讲的知识点作为总结和摘抄拿来学习。
因为我们做的方向是计算机视觉,所以比如我们输入图像是苹果,一个过滤器可能专注于发现“红色”这一颜色,而另一个过滤器可能会寻找圆形边缘,另一个过滤器则会识别细细的茎。如果你要清理混乱的地下室,准备在车库搞个大销售,你就能理解把一切按不同的主题分类是什么意思了(玩具、电子产品、艺术品、衣服等等)。 卷积层就是通过将图像分解成不同的特征来做这件事的。特别强大的是,神经网络赖以成名的绝招与早期的 AI 方法(比如 Deep Blue 中用到的)不同,这些过滤器不是人工设计的。他们纯粹是通过查看数据来学习和自我完善。
卷积层创建了不同的、细分的图像版本,每个专用于不同的过滤特征——显示其神经元在哪里看到了红色、茎、曲线和各种其他元素的实例(但都是部分的) 。但因为卷积层在识别特征方面相当自由,所以需要额外的一双眼睛,以确保当图片信息在网络中传递时,没有任何有价值的部分被遗漏。
这里的话根据现有打出的featuremap的图我们也可以看出来(辉夜大小姐!)

过完一层卷积层打印出的所有通道featuremap

池化层

这位老哥说经过卷积后,图像中的这种“卷积”会产生大量的信息,这可能会很快成为一个计算噩梦。进入池化层,可将其全部缩小成更通用和可消化的形式。有很多方法可以解决这个问题,但最受欢迎的是“最大池”(Max Pooling),它将每个特征图编辑成自己的“读者文摘”版本,因此只有红色、茎或曲线的最好样本被表征出来。
那么池化的意思就很明确了,就是找出我们的想要的一些特征信息(实际上通道不变的话只是对大小进行了裁剪,经过实践所得)

激活函数的作用

一直都在强调说激活函数的作用是它们将非线性特性引入到我们的网络中。激活函数最后会将我们这些得到的数据转成对应的正负数。这样可以直接用到分类上(总是想到的是softmax,一般用于分类)。
如果不用激励函数(其实相当于激励函数是f(x) = x),在这种情况下你每一层输出都是上层输入的线性函数,很容易验证,无论你神经网络有多少层,输出都是输入的线性组合,与没有隐藏层效果相当,这种情况就是最原始的感知机(Perceptron)了。
这个文章这么说,正因为上面的原因,我们决定引入非线性函数作为激励函数,这样深层神经网络就有意义了(不再是输入的线性组合,可以逼近任意函数)。最早的想法是sigmoid函数或者tanh函数,输出有界,很容易充当下一层输入(以及一些人的生物解释balabala)。

bn层的不同框架参数问题

Yes, exactly. You have to be a bit careful with the meaning of momentum, since it weights the currently observed value. It’s default value is thus 0.1. You will find the opposite definition in other frameworks, with a default value of 0.9.

上面这个来自于pytorch论坛中师兄翻阅到,意思是其他框架中bn层的这个moment是设置的0.9,只有pytorch框架下列的default

权重

权重这一块主要是

相关文章

网友评论

      本文标题:神经网络基础拾遗

      本文链接:https://www.haomeiwen.com/subject/sqhbyqtx.html