机器学习一直是当今技术中的热门词。它越来越多地用于各种实际应用,例如图像和语音识别、自动驾驶汽车、医学诊断等。因此了解其在实践中的行为和性能变得非常重要。鲁棒性和不确定性的高质量估计对于许多功能至关重要,尤其是深度学习。
为了解决这个问题并掌握机器学习模型的行为,谷歌的研究人员为每个感兴趣的任务引入了不确定性基线的概念。这些是针对各种任务的标准和最先进的深度学习方法的高质量实现的集合。该集合跨越九个任务的十九个方法,每个任务至少有五个指标。
基线在一般情况下,被定义为一个数字,是用于比较研究合理的和定义的起始点。集合中的每个基线都是一个独立的实验管道,具有可轻松重用和可扩展的成分。管道已在 TensorFlow、PyTorch 和 Jax 中执行,在框架外具有有限的依赖性。每个基线的超参数都经过多次迭代训练,以提供超越结果的结果。
在这项研究中,不确定性基线提供了 83 条基线,其中包含 19 种方法,包括更多最新策略。其中一些方法是 BatchEnsemble、DeepEnsembles、Rank 1 Bayesian Neural Nets,并作为合并社区中各种基准的继任者。每个基线都对其超参数进行调整,以最大限度地提高给定指标集的性能。
基线在三个不同的轴之间变化:
为了能够轻松使用这些基线,它们被有意优化为尽可能最小化和模块化。不是建立新的类抽象,而是使用预先存在的抽象。训练/评估管道包含在用于特定实验的独立 python 文件中,以确保不同基线之间的独立性。它可以在 TensorFlow、PyTorch 或 JAX 中的任何一个中开发。使用 Abseil 定义的简单 python 标志用于管理超参数和其他实验配置值。
未来研究人员的目标是发布超参数调整结果和最终模型检查点,以实现基线的可重复性。还确保存储库已经过广泛的超参数调整,并且其他研究人员可以轻松使用而无需重新训练或重新调整。研究人员希望避免管道实现中的细微差异,这些差异往往会影响基线比较并敦促人们为存储库贡献新方法。
论文:
https://arxiv.org/pdf/2106.04015.pdf
Github:
https://github.com/google/uncertainty-baselines
来源:
https://ai.googleblog.com/2021/10/baselines-for-uncertainty-and.html