Inception 模型
https://blog.csdn.net/xxiaozr/article/details/71481356
inception v1:
去除了最后的全连接层,使用全局平均池化层来代替,因为全连接层的参数很多,基本上占据了百分之九十的参数,而且全连接层会带来过拟合的问题。
采用了inception module。
Hebbian 原理:神经反射活动的持续和重复会导致神经元连接稳定性的持久提升,当两个神经元细胞A和B距离很接近,并且A参与了对B的重复持续的兴奋,那么某些代谢变化会导致A将作为能使B兴奋的细胞。即,一起发射的神经元会连在一起。
inception module 一共有四个分支
1*1的卷积层使用低成本进行跨通道的特征变换,在同一个空间位置但是在不同通道的卷积核的输出结果相关性极高,一个1*1的卷积就可以将这些空间位置相同但属于不同通道的连接在一起。1*1卷积所连接的节点的相关性是最高的。
在inception module中,1*1卷积的比例最高,但靠后的module中卷积的空间集中度逐渐降低,捕获更大面积的特征, 3*3,5*5的比例增大。
四个分支最后通过一个聚合操作合并(在输出通道的维度上)
inception中间节点的分类效果也比较好,因此还采用了辅助分类器,将中间某一层的输出用作分类,并按一个较小的权重加到最终的分类结果中。相当于做了模型融合,同时给网络加了反向传播的梯度信号,提供了额外的正则化。
Inception v2:
卷积神经网络经过卷积后得到的是一系列的特征图,如果min-batch sizes为m,那么网络某一层输入数据可以表示为四维矩阵(m,f,p,q),m为min-batch sizes,f为特征图个数,p、q分别为特征图的宽高。在cnn中我们可以把每个特征图看成是一个特征处理(一个神经元),因此在使用Batch Normalization,mini-batch size 的大小就是:m*p*q,于是对于每个特征图都只有一对可学习参数:γ、β。说白了吧,这就是相当于求取所有样本所对应的一个特征图的所有神经元的平均值、方差,然后对这个特征图神经元做归一化。
虽然使用随机梯度的mini-batch可以简化梯度下降的算法,但它需要十分小心的超参数和比较小的合适的学习率,在模型的初始化方面敏感。
softmax函数存在饱和问题,当|x|增大时,梯度趋于0,导致梯度消失,学习缓慢,这个问题可以使用RLU,小心的初始化和小的学习率来解决,但是我们确信,如果输入的非线性数据分布更平缓,将不会饱和,学习会加速。
batch-normalization 有正则化的作用,可以减少dropout 的使用,减少梯度对模型参数和初始值的依赖。
检验的时候认为γ和β都是训练是算下来的
Inception v3:
将两个较大的二维卷积拆成两个较小的一维卷积,例如将3*3拆成1*3和3*1,一方面减少参数减轻过拟合,一方面则加了一层非线性扩展模型表达能力,非对称的卷积结构拆分结果比对称的拆分为几个相同的小卷积核效果更好,可以处理更多更丰富的空间特征,增加特征多样性。
卷积网络从输入到输出,应该让图片尺寸逐渐减小,输出通道数逐渐增加,即让空间结构简化,将空间信息转化为高阶抽象的特征信息。
inception module使用多个分支提取不同抽象程度的高阶特征的思路很有效,可以丰富网络的表达能力。
Inception 模型的更多相关文章
- CNN卷积神经网络_深度残差网络 ResNet——解决神经网络过深反而引起误差增加的根本问题,Highway NetWork 则允许保留一定比例的原始输入 x。(这种思想在inception模型也有,例如卷积是concat并行,而不是串行)这样前面一层的信息,有一定比例可以不经过矩阵乘法和非线性变换,直接传输到下一层,仿佛一条信息高速公路,因此得名Highway Network
from:https://blog.csdn.net/diamonjoy_zone/article/details/70904212 环境:Win8.1 TensorFlow1.0.1 软件:Anac ...
- Inception模型和Residual模型卷积操作的keras实现
Inception模型和Residual残差模型是卷积神经网络中对卷积升级的两个操作. 一. Inception模型(by google) 这个模型的trick是将大卷积核变成小卷积核,将多个卷积核 ...
- (原)ubuntu16在torch中使用caffe训练好的模型
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5783006.html 之前使用的是torch,由于其他人在caffe上面预训练了inception模型 ...
- 学习笔记TF022:产品环境模型部署、Docker镜像、Bazel工作区、导出模型、服务器、客户端
产品环境模型部署,创建简单Web APP,用户上传图像,运行Inception模型,实现图像自动分类. 搭建TensorFlow服务开发环境.安装Docker,https://docs.docker. ...
- 论文阅读笔记四十二:Going deeper with convolutions (Inception V1 CVPR2014 )
论文原址:https://arxiv.org/pdf/1409.4842.pdf 代码连接:https://github.com/titu1994/Inception-v4(包含v1,v2,v4) ...
- tensorflow-Inception-v3模型训练自己的数据代码示例
一.声明 本代码非原创,源网址不详,仅做学习参考. 二.代码 # -*- coding: utf-8 -*- import glob # 返回一个包含有匹配文件/目录的数组 import os.pat ...
- 第十四节,卷积神经网络之经典网络Inception(四)
一 1x1卷积 在架构内容设计方面,其中一个比较有帮助的想法是使用 1×1 卷积.也许你会好奇,1×1 的卷积能做什么呢?不就是乘以数字么?听上去挺好笑的,结果并非如此,我们来具体看看. 过滤器为 1 ...
- Deep Dream 模型
本节的代码参考了TensorFlow 源码中的示例程序https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/ ...
- 2 (自我拓展)部署花的识别模型(学习tensorflow实战google深度学习框架)
kaggle竞赛的inception模型已经能够提取图像很好的特征,后续训练出一个针对当前图片数据的全连接层,进行花的识别和分类.这里见书即可,不再赘述. 书中使用google参加Kaggle竞赛的i ...
随机推荐
- vue监听滚动事件 实现某元素吸顶或者固定位置显示
https://blog.csdn.net/wang1006008051/article/details/78003974 1.监听滚动事件 利用VUE写一个在控制台打印当前的scrollTop, 首 ...
- NeuroNER+brat工具学习
1.Brat:http://brat.nlplab.org/ 能够进行直觉标注.命名实体识别.关系标注.分块.共存标注.二元关系标注等(药物与药物).时间标注. 但是这个安装好麻烦啊... 2.
- Entity Framework学习初级篇1--EF基本概况《转》
最近在学习研究微软的EF,通过这时间的学习研究,感觉这个EF目前来说还不是很完善,半成品.不过,据说在.Net4.0中,微软将推荐使用此框架,并会有所改善.而且,现在基本上所有数据库均提供了对EF的支 ...
- H5页面分享微信自定义分享title和img
前端开发H5 需分享到朋友圈和发给好友,想自定义分享的title和图表还有简短一句话,还需调用微信的api 首先需获取到微信的appId,timestamp,nonceStr,signature 微信 ...
- sift拟合详解
1999年由David Lowe首先发表于计算机视觉国际会议(International Conference on Computer Vision,ICCV),2004年再次经David Lowe整 ...
- 27.给input边框和背景颜色设置全透明
给input边框和背景颜色设置全透明,但是里面的字不会消失 1.让背景颜色变透明(二选一) background-color:rgba(0,0,0,0); background:rgba(0,0,0, ...
- MySQL.ERROR 1133 (42000): Can't find any matching row in the user table
ERROR 1133 (42000): Can't find any matching row in the user table 今天在执行 grant all privileges on cac ...
- ES6学习之 解构赋值
最近看了一个vue的项目,发现作者大量使用了ES6的语法,包括async, Promise, Set, Map还有一些解构赋值, 才发现自己对于ES6的语法缺乏了总结和运用,看得有点艰难,所以重新学习 ...
- 记dynamic的一个小坑 -- RuntimeBinderException:“object”未包含“xxx”的定义
from:http://blog.csdn.net/feiyun0112/article/details/39697955 创建一个控制台程序和一个类库, 在控制台创建一个匿名对象,然后再在类库中访问 ...
- arcgis api for javascript 添加图层时设置标注,自定义符号
<!DOCTYPE html> <html> <head> <meta charset="gb2312"> <meta nam ...