卷积、卷积核、多通道、特征图、特征选择
卷积
卷积其实就是提取图像特征的一个方法,具体描述起来是:将可能不止一个图像分成若干个像素点,通过将卷积核与图像点上的像素灰度值相乘,依次相乘之后得到可能不止一个新的矩阵,将这些矩阵相加称为降维,最后得到一个新的矩阵。
卷积核
就是上图中间那个矩阵,用来选择提取的特征的趋向,根据想要的不同结果改变矩阵中各个元素的值。
多通道、特征图
多通道就是上图中最左侧的矩阵,如果有一个以上,同时进行,那么就是多通道。
也可以看下图,三通道该如何进行:
每个通道跟一个卷积核(这里将卷积核=过滤器)做卷积运算,结果相加后得到一个特征图(所以特征图就是上图的第三个矩阵,下图的倒数第二矩阵)
特征选择
实际上这块不是很懂,去查了一下,有人定义为特征选择后的特征是原来特征的一个子集,还有人说是试图去减少特征数据集中的属性(或者称为特征)的数目,通过属性间的关系,如组合不同的属性得到新的属性,改变原来的特征空间。当这样对每一维进行处理之后,也达到了降维的效果。其实用在卷积这里应该就是通过卷积核对原图像进行处理,在这里相当于filter。
Filter:过滤法,按照发散性或者相关性对各个特征进行评分,设定阈值或者待选择阈值的个数,选择特征。特征选择过程与后续学习器无关,先用特征选择过程对特征进行“过滤”,再用过滤后的特征来训练模型。根据相关性值排序
不同卷积核的作用
锐化
这种卷积核会让中心值与周围的值的差距变得更大,从而达到对比度增大的效果,本来图像的边缘处中心值就和其他值对比度大,经过这样的卷积之后会变得更加明显,也就达到了图像锐化的效果。
模糊
个人理解,这样计算可以把中心值和周围其他值的均等比例平衡,把中心值趋向于其他值,使中心值相对于周围的值之间的差别(对比度)没有那么大,这样就会达到模糊的效果。
边缘检测
这个也叫梯度,其实也是一种锐化方法,只是反过来了,让中心点变得暗,而让边缘的,差别较大的地方变得更加亮,从而达到对比度大的边缘检测的效果。
编程实现
import numpy as np
import torch
from torch import nn
from torch.autograd import Variable
from PIL import Image
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei'