- caffe数据层:
- 在caffe中数据以blob的方式流通的,数据层主要是加载数据,并且将数据进行变化让保存数据的输出.最主要的变换有两种:均值裁剪以及特征缩放.
- 参数:
- bottom用来输入数据,top用来输出数据(如果是数据层的话,有两个top)
- backend: 数据库类型
- batch_size: 训练或者测试的批次的大小,也就是说一次拿多少条数据来训练, 分批次的原因就是一次性读取全部数据既耗时间,又耗内存,权值更新慢.
- transform_param:进行数据预处理的参数, ranform_param参数主要有归一化(scale),去中心化(mean_file或者mean_value),镜像(mirror),随机裁剪(crop_size)
- 归一化: 对数据进行一定的处理使得所有数据都在一定的范围内, 能够有效的防止梯度消失,就拿sigmoid函数来说,如果数据在梯度很小的区域内,进过归一化操作,数据就能转移到更大梯度范围内,学习的速率就会提高
- 为什么要进行尺度变换和偏移?
- 如果只是进行减去均值,除以方差的话,将数据集中子-1,1之间,但是对于激活函数来说,在这个区域内梯度变化不大 ,那么非线性变换的作用就没有体现,就会削弱网络的性能。
- BN的本质就是优化一下方差的大小和均值的位置,使得新的分布更加切合数据的真实分布,保证模型的非线性表达能力。
- 为什么要进行尺度变换和偏移?
- 镜像:
- mirror 是一种数据增强的方法
- 随机裁剪
- 对数据进行随机裁剪,在Test的时候去图片的 中间部分
- 归一化: 对数据进行一定的处理使得所有数据都在一定的范围内, 能够有效的防止梯度消失,就拿sigmoid函数来说,如果数据在梯度很小的区域内,进过归一化操作,数据就能转移到更大梯度范围内,学习的速率就会提高
- bottom用来输入数据,top用来输出数据(如果是数据层的话,有两个top)
- caffe卷积层:
- lr_policy:
- weight_filler : 权值初始化方法、
- lr_policy:
caffe
最新推荐文章于 2024-05-03 15:15:30 发布