9 卷积神经网络
以前的图像识别技术
早期图片识别技术
根据距离思想
-
特征提取
-
索引技术
-
相关反馈
显式反馈:通过正例负例来判断
隐式反馈:通过用户行为习惯来判断
-
重排序
全局特征提取:全局特征丢失图片细节,例如整张图片都是红色,他就会搜索所有红色图片,不论图中显示的对象类别
中期图片识别技术
根据视觉词袋思想
-
特征提取
-
向量化
局部特征转变为视觉关键字,查找视觉词典里最近的关键字,把局部特征向量转变为视觉字典的一个序号
-
索引技术
-
后处理
局部特征提取:利用词袋库强调细节信息
经典CNN
卷积神经网络具有卷积计算,前向反馈,局部感知,权值共享
-
早期尝试
LeNet:5层,使用MNIST数据集,最早用于手写数字的CNN
-
历史突破
AlexNet
-
发展和演化
网络层数加深:VGGNet
增强卷积模块功能:NIN,GoogleNet,Inception V3,V4
增加新的功能单元:Inception V2,BN
融合:ResNet
AlexNet
网络:
在两个GPU上运行,分成两组,8层
-
卷积层1:
- 卷积核大小11×11,数量48个,步长4
- 激活函数relu
- 池化kernel size=3,stride=2
- 标准化
-
卷积层2:
-
卷积核大小5×5,数量128个,步长1
-
激活函数relu
-
池化kernel size=3,stride=2
-
标准化
-
-
卷积层3:
-
卷积核大小3×3,数量192个,步长1
-
激活函数relu
-
-
卷积层4:
-
卷积核大小3×3,数量192个,步长1
-
激活函数relu
-
-
卷积层5:
- 卷积核大小3×3,数量128个,步长1
- 激活函数relu
- 池化kernel size=3,stride=2
-
全连接层6
- 2048个神经元
- dropout
-
全连接层7
- 2048个神经元
- dropout
-
全连接层8
- 1000个神经元
详情
- 分组卷积
- 第一次使用relu
- 数据增强
- dropout=0.5,效果最好
- batch_size=128
- SGD momentum=0.9
- learning-rate=1e-2
- L2 weight-decay=5e-4
常见的数据增强方式
- 对颜色的数据增强
- 色彩饱和度,亮度,对比度
- 加噪声(高斯噪声)
- 水平翻转,垂直翻转
- 随机旋转,随即裁剪
VGGNet
深度增加:AlexNet 8层,VGGNet 最深19层
小卷积核:3×3,对网络最后的分类有很大的作用
详情
- 3×3 conv-filter
- conv-stride =1
- pad=1,same
- 2×2 pool-filter
- pool-stride=2
GoogleNet/Inception
goole提出的,共有v1,v2,v3,v4 共4个模型
-
使用Inception模块
可以并行执行多个具有不同尺度的卷积运算或池化操作,将多个卷积核卷积的结果拼凑成一个非常深得特征图
-
Bottlenck
在同一层使用不同尺寸的卷积核会导致参数过多,可以在原来的Inception结构中加入1*1卷积核,起到降维作用
-
批处理归一化
让数据符合正态分布,有利于提高收敛速度,防止梯度消失或爆炸,加快训练速度
ResNet
微软提出的神经网络
-
使用了恒等映射
传统神经网络训练出的函数为F(x),添加恒等映射后,函数变为F(x)+x
这相当是在对x作修正,修正的幅度是F(x),F(x)在数学上成为残差,因此该网络也叫残差网络
-
避免网络层数增加,训练效果下降

