第一步:
卷积运算: ==> feature map
Line up the feature and the image patch
Multiply each image pixel by the corresponding feature pixel
Add them up
Divide by the total number of pixels in the feature
卷积核 ==卷积运算(笛卡尔积)==> feature map: 原核中包含卷积核的特征,提取出来 形成 feature map, 颜色越低越平坦
用不同的卷积核, 会得到不同的 feature map
相对于将对应的特征在原图中提取出来
若提取出来的图片是 乱码, 那么就说明原图中不包含卷积核中的特征
那么,图片越大, 所获得是 feature map 也就越大, 运算量 以及运算时间也会非常大, 所以我们需要对其进行 数据预处理 ==》 池化操作
第二步:
Pool 池化(下采样:把得到的 feature map 进行缩小) : Shrinking the image stack
pich a window size
Pick a stride
Walk your window across your filtered images
From each window, take the maximum value.
将一个 指定大小的 框, 会一个数字进行表示,”池化操作“, 此时就意味着会牺牲一部分信息, 是在我们可接受范围内的。
池化操作: 1, 将这个 框 中的最大值,来代替整个区域(max pooling 比较常用)2,也可以将 框内的所有数据的平均值来代替整个区域 在图像的边缘区域,一般采取 补零 来进行 池化操作(zero pedding)
池化操作之后,依旧保留了原来图片的数据特征
第三步:
Rectified Linear Units (ReLUsh) 修正线性单元激活函数 (将小于 0 的点 全部替换为 0)对后面的运算存在很大的好处
但是我们需要 给神经网络一个初始参数: 这些参数是没有办法通过 学习 来进行得到的,需要认为给其进行设定,形成一个框架,对其进行训练,优化, 找到 损失函数最小值, 是神经网络所做的事情
搭框架完全是经验,但是 有很多的经验总结
卷积核的尺寸: Size of features
卷积核的数目: Number of features
池化的步长: Window stride
池化的大小: window size
全连接层神经元的数量: Fully Connected Number of neurons
卷积神经网络input: A two-dimensional array of pixelsprocessor: CNN (box)output: what the picture is?计算机可以看到的是数字化的矩阵 识别出 图片的 特征,发现其与原图的相似性 比如;一个图片存在三个特征,将这三个特征提取出来, 成为 "卷积核" 或者 "特征提取器"CNN 的三个操作第一步: 卷积运算: ==> feature map Line up the feature and