文章目录

  • 一、CNN(卷积神经网络)
  • 二、ResNet(残差网络)
  • 总结



一、CNN(卷积神经网络)

普通神经网络是由输入层、隐藏层、输出层组成,当参数过多,训练就会变的很慢,这个时候就可以减少参数

神经网络的输入特征的伪代码表示 神经网络的输入维度_卷积核

  • 输入层:输入的不是一个特征,一个维度,而是一个长方体的矩阵(三维的)
  • 卷积层:提取特征。

    举例:输入一个数据维度是7x7x3,7x7表示图像h=7,w=7,有三个通道。Filter W0表示先随机初始化一组权重参数,这里强调一下,输入数据维度通道数与Filter W0维度数是一样的,这里都是3,Filter W0中 3x3x3的矩阵我们称作**卷积核。**计算是卷积核与通道对应位置相乘,然后所有值相加,卷积核里面的下标小数字代表权重值。而卷积核不只有一个,而是可以有多个进行特征提取,也就可以得到多个特征。最后输出3x3x2,3代表h,3代表w,2代表特征图,一共有两个特征图。

    卷积不止做一次,而是第一次卷积得到特征后,再进行卷积。
  • 步长为1与2,输出特征图也不同,当步长较小的时候,滑动的比较慢,得到的特征也就是细粒度的,但是时间比较长;当步长较大时,得到的特征是粗粒度的。通常情况,步长取值为1。
  • 卷积核与步长也是同样的,卷积核越小,提取的特征越是细粒度,卷积核越大,提取的特征是粗粒度的。
  • 边缘填充就如之前图,输入矩阵上面的**+pad 1**,可以看到,输入矩阵四周灰度部分都是0,弥补边界特征能够充分利用。例如对于文本,10个词与15个词的维度不同,就可以进行填充。
  • 卷积核个数与特征图个数一样,卷积核数值每一个都不同。

神经网络的输入特征的伪代码表示 神经网络的输入维度_机器学习_02


神经网络的输入特征的伪代码表示 神经网络的输入维度_cnn_03


神经网络的输入特征的伪代码表示 神经网络的输入维度_卷积核_04


池化层就是将特征维度变小,进行压缩。也就是重要特征留下,不重要的特征删掉。

二、ResNet(残差网络)

神经网络的输入特征的伪代码表示 神经网络的输入维度_算法_05

  • 深层网络面对问题就是随着网络层数加深,一些学的差的数据拉低了整体学习准确率。
  • 解决方案:使用残差网络。若学到了A->B->C,而B这里学的不好,直接把B去掉,A与C就连接不上了,因此从A到C加一条线,就可以连接上了。

总结

这一节内容还是很重要的,下面将讲解RNN,LSTM等。