Uncertainty Baselines: Google推出深度学习不确定性和鲁棒性基准

RayRay
Uncertainty BaselinesTensorFlowTPU模型数据集Github开源项目

uncertainty-baselines

Uncertainty Baselines简介

Google近日推出了Uncertainty Baselines项目,这是一个旨在为深度学习中的不确定性和鲁棒性研究提供高质量基准实现的开源项目。随着深度学习在现实世界中的应用越来越广泛,模型的不确定性和鲁棒性越来越受到关注。Uncertainty Baselines项目的目标是为研究人员提供一个模板,让他们能够快速开始新的想法和应用的研究,并与其他不确定性和鲁棒性研究人员进行交流。

项目动机

虽然GitHub上已有许多不确定性和鲁棒性的实现,但它们通常都是为特定论文而设计的一次性实验,而且许多论文甚至没有代码。目前还没有清晰的示例让不确定性研究人员可以快速使用来原型化他们的工作。每个人都必须实现自己的基线。事实上,即使在标准任务上,每个项目在实验设置上也略有不同,无论是架构、超参数还是数据预处理。这使得与基线进行适当比较变得困难。

Uncertainty Baselines项目通过以下三种方式来解决这个问题:

  1. 在标准任务上提供标准方法和最先进方法的高质量实现。
  2. 对代码库中的其他文件的依赖性最小化。基线应该易于分叉,而不依赖于其他基线和通用模块。
  3. 规定不确定性和鲁棒性基准测试的最佳实践。

主要特点

Uncertainty Baselines项目具有以下主要特点:

  1. 高质量实现: 提供了19种方法在9个任务上的高质量实现,每个任务至少有5个指标。

  2. 易于使用和扩展: 每个基线都是一个独立的实验流水线,具有易于重用和扩展的组件。

  3. 多框架支持: 实现了TensorFlow、PyTorch和JAX三个主流深度学习框架的版本。

  4. 超参数优化: 每个基线的超参数都经过了大量迭代调优,以提供更好的结果。

  5. 标准化评估: 定义了跨数据集使用的标准化指标,包括参数数量、测试准确率、校准误差、负对数似然等。

  6. 可重现性: 提供了超参数调优结果和最终模型检查点,以增强可重现性。

  7. 模块化设计: 优化了基线的模块化和最小化,便于研究人员使用和构建。

项目结构

Uncertainty Baselines项目的主要组成部分包括:

基线

baselines/目录包含了所有基线,按训练数据集组织。例如,baselines/cifar/determinstic.py是一个在CIFAR-10上获得96.0%测试准确率的Wide ResNet 28-10模型。

数据集

ub.datasets模块包含了遵循TensorFlow Datasets API的数据集。它们添加了最小的逻辑,如默认数据预处理。

模型

ub.models模块包含了遵循tf.keras.Model API的模型。

使用方法

要安装最新的开发版本,运行:

pip install "git+https://github.com/google/uncertainty-baselines.git#egg=uncertainty_baselines"

注意,安装uncertainty_baselines不会自动安装任何后端。对于TensorFlow,你需要安装TensorFlow (tensorflowtf-nightly)、TensorFlow Addons (tensorflow-addonstfa-nightly)和TensorBoard (tensorboardtb-nightly)。

使用数据集

import uncertainty_baselines as ub # 加载CIFAR-10,保留10%用于验证 dataset_builder = ub.datasets.Cifar10Dataset(split='train', validation_percent=0.1) train_dataset = dataset_builder.load(batch_size=FLAGS.batch_size) for batch in train_dataset: # 对数据批次应用代码

使用模型

import uncertainty_baselines as ub model = ub.models.wide_resnet(input_shape=(32, 32, 3), depth=28, width_multiplier=10, num_classes=10, l2=1e-4)

评估指标

Uncertainty Baselines定义了跨数据集使用的以下指标:

  1. 参数数量: 训练后模型进行预测所需的参数数量。

  2. 测试准确率: 在测试集上的准确率。

  3. 测试校准误差: 在测试集上的预期校准误差(ECE)。

  4. 测试负对数似然: 在测试集上的负对数似然(以纳特为单位)。

  5. 训练/测试运行时间: 训练运行时间是训练模型的总挂钟时间,包括任何中间测试集评估。测试运行时间指在GPU/TPU上运行正向传播所需的时间。

Uncertainty Baselines评估指标

未来发展

Uncertainty Baselines项目已被多个研究项目使用。未来,项目团队计划发布更多超参数调优结果和最终模型检查点,以进一步增强可重现性。他们也希望避免管道实现的微小差异影响基线比较,并鼓励研究人员为存储库贡献新方法。

Uncertainty Baselines为不确定性和鲁棒性研究提供了一个强大的基础,有望推动这一重要领域的进展。随着深度学习在现实世界中的应用不断扩大,提高模型的可靠性和鲁棒性将变得越来越重要。通过提供标准化的基准和最佳实践,Uncertainty Baselines为研究人员探索新想法和应用铺平了道路。

编辑推荐精选

TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

Keevx

Keevx

AI数字人视频创作平台

Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。

即梦AI

即梦AI

一站式AI创作平台

提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作

扣子-AI办公

扣子-AI办公

AI办公助手,复杂任务高效处理

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

蛙蛙写作

蛙蛙写作

AI小说写作助手,一站式润色、改写、扩写

蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。

AI辅助写作AI工具蛙蛙写作AI写作工具学术助手办公助手营销助手AI助手
问小白

问小白

全能AI智能助手,随时解答生活与工作的多样问题

问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。

热门AI助手AI对话AI工具聊天机器人
Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
下拉加载更多