machine-learning - 不同的随机权重初始化导致不同的性能
问题描述
我正在大脑的 EM 数据集上训练 3D U-Net。目标是分割其中的神经元。在实验过程中,我注意到,网络的不同随机初始化会导致不同的性能。我根据平均交叉联合来评估性能,我观察到差异高达 5%。
我使用均匀分布的 xavier 初始化,并使用 1e-4 的恒定学习率。
编辑:我在问如何避免这样的行为?
解决方案
正如罗伯托所说,不同的随机初始化总是导致不同的结果权重。这是非常明显的,因为初始状态限制了可能的系统轨迹。
如果您阅读介绍 Xavier init 的论文,您会发现众所周知,随机 init 对最终性能有很大的 init 影响(有一篇论文表明,使用随机 init 进行的数百次训练运行都以不同的方式结束局部最小值,但我现在找不到)。这就是我们使用 Xavier init 之类的启发式算法的原因:与其他形式的随机初始化相比,它们往往会导致更好的局部最小值。
通常,一个人执行多次训练运行(例如 10 次)并采用最佳架构,在文章中,有时也会报告平均值。
推荐阅读
- squarespace - 提交后如何用表单数据注入内容页面?
- mysql - 多表连接需要几个小时,有没有更好的方法?
- c# - Dot Net Core 3.0 上的 Dapper 数据序列化问题
- python-3.x - 切片熊猫系列
- php - 从特定数字开始更改表中所有行的 id 值
- ios - 试图将来自 API 的 JSON 对象中的字符串值解析为 Int 的结构
- r - ggplot 轴类别标签中化学式的正确显示
- python - 将 matplotlib 轴更改为数据点的范围(数量)而不是数据点的长度
- versioning - 为什么 certbot “版本” 域证书文件夹
- linux - 两个 docker 容器(nginx 和一个 web 应用程序)不能一起工作(linux)