主页

ResNet

ResNet参考: (知乎:我是小将): https://zhuanlan.zhihu.com/p/31852747 https://blog.csdn.net/wspba/article/details/56019373 TF官方的ResNet代码详解: https://zhuanlan.zhihu.com/p/32194105 https://zhuanlan.zhihu.com/p/270

模型训练经验

1. 模型训练经验 ==weights和bias的初始化对训练影响很大==; ==batch_size先拿小的试一下,比如16,8,1等,调大了收敛太慢==; ==学习率不宜过大,初始可设置为1e-3==; 网络不收敛 数据问题(根本) 数据少,数据分布差,数据质量差;数据预处理:归一化等;可以先简化数据,数据弄成“弱智”般的最简单的数据,收敛后再慢慢加数据复杂度;2. 学习率过大3. b

学习率设置

理想loss值曲线理想情况下曲线应该是滑梯式下降[绿线]: 曲线 初始时 上扬 [红线]: Solution:初始 学习率过大 导致 振荡,应减小学习率,并 从头 开始训练 。 曲线 初始时 强势下降 没多久 归于水平 [紫线]: Solution:后期 学习率过大 导致 无法拟合,应减小学习率,并 重新训练 后几轮 。 曲线 全程缓慢 [黄线]: Solution:

Network in Network

设计思想 使用mlpconv网络替代传统的convolution层 不用FC层 减了少参数个数,进而网络层数可以加深,加快训练速度; 由于参数过多,网络过大,GPU显存不够限制了网络层的增加,从而限制了模型的泛化能力; 核心结构mlpconv mlpconv = conv + 1×1conv + 1×1conv(2层的mlp) 1×1卷积核作用: 实现通道间的信息交互和整合(加了1*1

VGG

核心思想 网络越深越好; 但网络深不好训练->用3*3的卷积核; 核心结构: 两个连续的3×3卷积相当于5×5的感受野,3个相当于7*7: 减少了参数,有更多的relu层,增加了更多的非线性; 输入及预处理 输入:224*224 预处理:除以255或者减去128(即精度定点,因为arm等平台计算浮点数计算量较大,而减去128之后数据就是unit8的形式了) 训练:SGD+momen

CNN基本概念

CNN特性 ==FC:全局信息,global信息能减少误检;====conv:局部信息== conv特性:平移不变性; CNN的强大之处在于它的多层结构能自动学习特征,并且可以学习到多个层次的特征:较浅的卷积层感知域较小,学习到一些局部区域的特征;较深的卷积层具有较大的感知域,能够学习到更加抽象一些的特征。这些抽象特征对物体的大小、位置和方向等敏感性更低,从而有助于识别性能的提高。 卷积核的多个

markdown常见语法

更改字体颜色设置代码高亮如c++ 1using namespace std; cin>>2;单行代码——用一个上点号

hexo+Github Pages搭建网站

一、网站雏形搭建 安装Git Bash1git version (检查安装是否成功) 安装NodeJs1node -v (检查安装是否成功) 安装hexo1sudo npm i -g hexo (安装hexo的命令) 初始化hexo新建一个文件夹,用于保存博客内容,然后在该文件夹下右键选择git bash执行以下命令: 1hexo init 初始化之后会出现如图示文件: 主要文件的意思

stack使用总结

c++ stl栈stack介绍C++ Stack(堆栈) 是一个容器类的改编,为程序员提供了堆栈的全部功能,主要操作包括堆栈初始化、元素入栈、取栈顶元素、元素出栈、判断堆栈是否非空和取得当前堆栈大小等。 c++ stl栈stack的头文件为:#include c++ stl栈stack的成员函数介绍(5种) empty() 堆栈为空则返回真 pop() 移除栈顶元素 push(i) 在栈顶增加

list使用总结

1234567891011//list元素访问;指定位置插入某元素 list<int>::iterator iter = a.begin();int n;//访问lsit的第n个元素,n不能超过list的末尾,即iter!= a.end() for(int i=0; i < n-1; ++i) ++it