机器学习之卷积神经网络CNN
卷积神经网络CNN(入门认知) CNN的目的:特征提取 层次:卷积层 .池化层 .输出层 卷积层 :利用局部特征(卷积核),去计算出目标的 整体特征情况。 上图中的 各种X ,我们可以提取其中的几个特征作为卷积核。下图中选择红框框起来的作为特征。 所以我们可以得到三个 卷积核(也称为过滤器) : 卷积运算: 矩阵对应位子的乘法运算,然后选择平均值填入 feature map 图中。(如下图所示) 将目标与卷积核分别进行卷积运算,就可以 一个feature map,比如这里三个卷积核,最后会有三层的 feature map被得到。 所以经过卷积运算,可以将目标数据缩小,上图中9x9 的目标,卷积后 变成 7x7了。完整动态图见下方 激励层Relu: 获取特征图中 关联性大的数据,将关联性小的 都直接设置为0 数学公式是:f(X)=max(0,X) 池化层pooling (采样):压缩数据 虽然进行卷积操作已经使得数据变小了一点,但是还是不够小。需要使用到池化层,池化的方法有 最大池化(取最大值)和平均池化(取最小值)。下图所示的就是最大池化,在2x2的池化窗口中,选择一个最大的数值 填入到新的 特征图(feature mao)中。 为什么可以这样压缩?因为CNN想要的是知道有没有匹配的特征,不需要知道这个特征在那个位置匹配,所以这样压缩还是可以知道有匹配的数据以及其程度。 1