当前位置:网站首页 > R语言数据分析 > 正文

resnet34和resnet50参数量(resnet50比34效果差)



  • Color Jittering:对颜色的数据增强:图像亮度、饱和度、对比度变化(此处对色彩抖动的理解不知是否得当);
  • PCA Jittering:首先按照RGB三个颜色通道计算均值和标准差,再在整个训练集上计算协方差矩阵,进行特征分解,得到特征向量和特征值,用来做PCA Jittering;
  • Random Scale:尺度变换;
  • Random Crop:采用随机图像差值方式,对图像进行裁剪、缩放;包括Scale Jittering方法(VGG及ResNet模型使用)或者尺度和长宽比增强变换;
  • Horizontal/Vertical Flip:水平/垂直翻转;
  • Shift:平移变换;
  • Rotation/Reflection:旋转/仿射变换;
  • Noise:高斯噪声、模糊处理;
  • Label Shuffle:类别不平衡数据的增广;

​ 深度神经网络模型的训练为什么会很困难?其中一个重要的原因是,深度神经网络涉及到很多层的叠加,而每一层的参数更新会导致上层的输入数据分布发生变化,通过层层叠加,高层的输入分布变化会非常剧烈,这就使得高层需要不断去重新适应底层的参数更新。为了训好模型,我们需要非常谨慎地去设定学习率、初始化权重、以及尽可能细致的参数更新策略。

​ Google 将这一现象总结为 Internal Covariate Shift,简称 ICS。 什么是 ICS 呢?

​ 大家都知道在统计机器学习中的一个经典假设是“源空间(source domain)和目标空间(target domain)的数据分布(distribution)是一致的”。如果不一致,那么就出现了新的机器学习问题,如 transfer learning / domain adaptation 等。而 covariate shift 就是分布不一致假设之下的一个分支问题,它是指源空间和目标空间的条件概率是一致的,但是其边缘概率不同。

​ 大家细想便会发现,的确,对于神经网络的各层输出,由于它们经过了层内操作作用,其分布显然与各层对应的输入信号分布不同,而且差异会随着网络深度增大而增大,可是它们所能“指示”的样本标记(label)仍然是不变的,这便符合了covariate shift的定义。由于是对层间信号的分析,也即是“internal”的来由。

那么ICS会导致什么问题?

简而言之,每个神经元的输入数据不再是“独立同分布”。

其一,上层参数需要不断适应新的输入数据分布,降低学习速度。

其二,下层输入的变化可能趋向于变大或者变小,导致上层落入饱和区,使得学习过早停止。

其三,每层的更新都会影响到其它层,因此每层的参数更新策略需要尽可能的谨慎。

到此这篇resnet34和resnet50参数量(resnet50比34效果差)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • arcpy模块(Arcpy模块的特点)2025-05-23 20:27:06
  • oracle怎么写代码(oracle 代码)2025-05-23 20:27:06
  • storey(storey英文怎么读)2025-05-23 20:27:06
  • top18女rapper(top18女rapperSex)2025-05-23 20:27:06
  • ifstream写文件(ifstream.read)2025-05-23 20:27:06
  • github docker镜像(docker镜像库)2025-05-23 20:27:06
  • swagger2配置(swagger2配置登录)2025-05-23 20:27:06
  • orcale默认用户(oracle 用户默认表空间)2025-05-23 20:27:06
  • oven的中文翻译(oevr翻译英文)2025-05-23 20:27:06
  • chronyc 手动同步ip(chronyc 手动同步某节点)2025-05-23 20:27:06
  • 全屏图片