CNN/RNN

发布时间 2023-05-05 19:16:47作者: noobwei

神经网络分为两种,前馈型神经网络与后馈型(递归型)神经网络
前馈型神经网络典型的有:卷积神经网络(Convolutional Neural Networks,
CNN);后馈型(递归型)神经网络的典型有:循环神经网络(Recurrent
Neural Network, RNN);LSTM是一种改进之后的循环神经网络,即它属于RNN,也属于递归型神经网络

CNN(Convolutional Neural Network)

https://zhuanlan.zhihu.com/p/30994790

(卷积)它的物理意义大概可以理解为:系统某一时刻的输出是由多个输入共同作用(叠加)的结果。

介绍了基础的卷积

https://zhuanlan.zhihu.com/p/31852747

简单清晰介绍了三个层的原理

卷积神经网络分为三层

image

卷积层

用过滤器对图片进行过滤,拿filter矩阵和灰度图片做卷积处理,不断移动filter并且记录结果,移动filter的步长不同和filter的种类不同都会筛选得到不同的特征结果

池化层

我们假设一张图片的大小为500 * 500,经过50个Filter的卷积层之后,得到的结果为500 * 500 * 50",维度非常大,我们需要减少数据大小,而不会对识别的结果产生影响,即对卷积层的输出做下采样(downsampling),这时候就引入了池化层。

池化层的意义在于从卷积层的结果中提取最显著的输出,实现降采样,减少运算的时间

全连接层

总结前面两层筛选得到的特征,对图像进行分类

经典的CNN结构

AlexNet VGG(许博和陈博做虚假人脸检测用的结构) NIN GoogLeNet ResNet

image

RNN(Recurrent Neural Network)

https://zhuanlan.zhihu.com/p/30844905

image

我们现在这样来理解,如果把上面有W的那个带箭头的圈去掉,它就变成了最普通的全连接神经网络。x是一个向量,它表示输入层的值(这里面没有画出来表示神经元节点的圆圈);s是一个向量,它表示隐藏层的值(这里隐藏层面画了一个节点,你也可以想象这一层其实是多个节点,节点数与向量s的维度相同);

U是输入层到隐藏层的权重矩阵,o也是一个向量,它表示输出层的值;V是隐藏层到输出层的权重矩阵

那么,现在我们来看看W是什么。循环神经网络隐藏层的值s不仅仅取决于当前这次的输入x,还取决于上一次隐藏层的值s。权重矩阵 W就是隐藏层上一次的值作为这一次的输入的权重。

NTU李宏毅老师的课程中有这样一个例子

image
image

假设所有的激活函数为线性,在例子中为简单相加第一次output的结果为4,在绿色neural里面存放的值为2,则第二次绿色neural的结果为2+2+1+1,绿色neural里面存放的新的值就变成6,依次类推,下一次的绿色neural中的值为16,output为32

image

input一样的时候由于hidden layer的内容不同导致最后的output不同

RNN的两种network

image

Bidirection RNN

image

https://cloud.tencent.com/developer/article/1435606

首先前面叙述的单向的网络不能考虑后面的输入这一问题得到了解决。在计算某个输出值时,双向循环网络不仅能考虑forward components计算的激活函数值,也能考虑到backward components计算的激活函数值,即它考虑到了所有位置的输入,并且能在句子的任意位置输出预测值。

对于有大量文本的NLP问题,如果你有完整的句子,想要label句子里的单词,使用LSTM单元的双向循环网络是最为常用的,而且也是首选的方法。

LSTM

image

https://zhuanlan.zhihu.com/p/123857569

LSTM从被设计之初就被用于解决一般递归神经网络中普遍存在的长期依赖问题,使用LSTM可以有效的传递和表达长时间序列中的信息并且不会导致长时间前的有用信息被忽略(遗忘)。与此同时,LSTM还可以解决RNN中的梯度消失/爆炸问题。

LSTM的设计者提出了“长短期记忆”的概念——只有一部分的信息需要长期的记忆,而有的信息可以不记下来。同时,我们还需要一套机制可以动态的处理神经网络的“记忆”,因为有的信息可能一开始价值很高,后面价值逐渐衰减,这时候我们也需要让神经网络学会“遗忘”特定的信息

LSTM共有四个函数层,其中有一个遗忘门,两个记忆门,一个输出门,由神经元的隐藏态(单元状态)贯穿,涵盖了在 时刻前神经网络对于所有输入信息的“概括总结”