『cs231n』卷积神经网络工程实践技巧_上
概述
数据增强
思路:在训练的时候引入干扰,在测试的时候避免干扰。
翻转图片增强数据。
随机裁切图片后调整大小用于训练,测试时先图像金字塔制作不同尺寸,然后对每个尺寸在固定位置裁切固定大小进入训练,最后对所有结果取平均值。
对颜色信息进行主成分分析并重建
迁移学习
三种网络训练思路:
中量数据的训练思路:先训练附加层,收敛后整体整体微调(funetuning)
值得注意:少量低相似度数据处理方式,虽然不乐观,但可以尝试不同层提取特征后组合处理(感觉和之前看的腾讯的检测文档边缘工程案例相似:基于 TensorFlow 在手机端实现文档检测)
实际上预训练模型不是特例,几乎大型计算机视觉任务都会使用预先训练好的模型加速。
卷积网络架构
感受野大小探讨
双层3*3卷积核感受野大小为5*5
三层3*3卷积核感受野大小为7*7,有意思的是这等价于单层7*7大小的卷积核
对比同感受野不同卷积结构优劣
需学习参数多层小卷积核网络更少
运算量也是多层小卷积核结构更少
[思路]:尝试把大的单层卷积分解为小的多层卷积
[问题]:3*3是最小的了,如何分解它提升效率?
分解思路一:1*1瓶颈层
尝试1*1卷积核引入提升效率,不过由于1*1的卷积核无法顾及周边信息,所以只能作为一个辅助,上图的瓶颈结构从输入输出上来看等价于单层3*3网络
对比需学习参数,我们发现还是复杂但小的结构更少
分解思路二:不对称卷积网络
另一种分解3*3卷积网络的方法,效果同样不错
这个看起来很蹩脚的网络架构(不对称卷积网络)主要由Google使用,它自家的Inception有复杂的不对称网络&特征拼接结构(如上图),有意思的是我学习tensorflow时尝试写过Inception3的最终层结构,的确是个脑洞大开的东西,看了这节课才算明白了人家为什么这么设计。注意,上图同时也使用了1*1瓶颈层。
总结:
『cs231n』卷积神经网络工程实践技巧_上的更多相关文章
- 『cs231n』卷积神经网络工程实践技巧_下
概述 计算加速 方法一: 由于计算机计算矩阵乘法速度非常快,所以这是一个虽然提高内存消耗但是计算速度显著上升的方法,把feature map中的感受野(包含重叠的部分,所以会加大内存消耗)和卷积核全部 ...
- 『cs231n』卷积神经网络的可视化与进一步理解
cs231n的第18课理解起来很吃力,听后又查了一些资料才算是勉强弄懂,所以这里贴一篇博文(根据自己理解有所修改)和原论文的翻译加深加深理解,其中原论文翻译比博文更容易理解,但是太长,而博文是业者而非 ...
- Stanford CS231n实践笔记(课时22卷积神经网络工程实践技巧与注意点 cnn in practise 上)
本课主要2个实践内容: 1.keras中数据集丰富,从数据集中提取更多特征(Data augmentation) 2.迁移学习(Tranform learning) 代码:https://github ...
- 『cs231n』循环神经网络RNN
循环神经网络 循环神经网络介绍摘抄自莫凡博士的教程 序列数据 我们想象现在有一组序列数据 data 0,1,2,3. 在当预测 result0 的时候,我们基于的是 data0, 同样在预测其他数据的 ...
- 『cs231n』通过代码理解风格迁移
『cs231n』卷积神经网络的可视化应用 文件目录 vgg16.py import os import numpy as np import tensorflow as tf from downloa ...
- 『cs231n』计算机视觉基础
线性分类器损失函数明细: 『cs231n』线性分类器损失函数 最优化Optimiz部分代码: 1.随机搜索 bestloss = float('inf') # 无穷大 for num in range ...
- 『TensorFlow』通过代码理解gan网络_中
『cs231n』通过代码理解gan网络&tensorflow共享变量机制_上 上篇是一个尝试生成minist手写体数据的简单GAN网络,之前有介绍过,图片维度是28*28*1,生成器的上采样使 ...
- 【cs231n】卷积神经网络
较好的讲解博客: 卷积神经网络基础 深度卷积模型 目标检测 人脸识别与神经风格迁移 译者注:本文翻译自斯坦福CS231n课程笔记ConvNet notes,由课程教师Andrej Karpathy授权 ...
- 『cs231n』通过代码理解gan网络&tensorflow共享变量机制_上
GAN网络架构分析 上图即为GAN的逻辑架构,其中的noise vector就是特征向量z,real images就是输入变量x,标签的标准比较简单(二分类么),real的就是tf.ones,fake ...
随机推荐
- json-lib-2.4-jdk15.jar所需全部JAR包.rar java jsoup解析开彩网api接口json数据实例
json-lib-2.4-jdk15.jar所需全部JAR包.rar java jsoup解析开彩网api接口json数据实例 json-lib-2.4-jdk15.jar所需全部JAR包.rar ...
- bootstrap实战教程
bootstrap实战教程 bootstrap介绍 简介 Bootstrap 是最受欢迎的 HTML.CSS 和 JS 框架,用于开发响应式布局.移动设备优先的 WEB 项目.全球数以百万计的网站都是 ...
- 在线js调试工具JSbin、jsFiddle
在线js调试工具JSbin.jsFiddle JS Bin - Collaborative JavaScript Debugginghttp://jsbin.com/?html,output这个在线j ...
- 处理内容有&特殊字符thinkphp返回xml无法解析的问题<![CDATA[xxx]]>
处理内容有&特殊字符thinkphp返回xml无法解析的问题<![CDATA[xxx]]> // xml 转义特殊字符 如&'" <![CDATA[&quo ...
- 使用Astah画UML类图经验总结
从学习需求工程与UML开始,就开始接触到Astah这款软件,但是当时完全是为了对UML各种图的了解加深才使用了这款软件.当时画图,都是完全凭借自己想,并没有考虑实际情况,而且画的图都是很简单的,甚至有 ...
- 静默文件安装安装WebLogic
一. 本文演示静默文件方式安装 •在Windows上 –打开命令行窗口 –filename.exe -mode=silent -silent_xml=file_path •在 ...
- sqlserver 判断各种不存在
判断数据库是否存在 if exists (select * from dbo.sysobjects where name = '数据库名') --drop database [数据库名] 判断表是否存 ...
- 微信小程序新闻列表功能(读取文件、template模板使用)
微信小程序新闻列表功能(读取文件.template) 不忘初心,方得始终.初心易得,始终难守. 在之前的项目基础上进行修改,实现读取文件内容作为新闻内容进行展示. 首先,修改 post.wxml 文件 ...
- [Linux 003]——用户和用户组以及 Linux 权限管理(一)
嗬!没想到吧!学习 Linux 的第三天,我们已经开始接触用户管理,用户组管理,以及权限管理这几个逼格满满的关键字.这几个关键字对于前端程序猿的我来说真的是很高大上有木有,以前尝试学 Linux 的时 ...
- C# 判断网络文件是否存在
#region 判断网络文件是否存在 //bool result = false;//下载结果 //string fileUrl = "http://localhost:7070/FileU ...