不同领域的常见 OOD(Out-of-Distribution)数据集例子

news2024/9/28 17:31:48

以下是几个来自不同领域的常见 OOD(Out-of-Distribution)数据集例子,这些数据集常用于测试和研究模型在分布变化或分布外数据上的泛化能力:

1. 计算机视觉领域

  • CIFAR-10 vs. CIFAR-10-C / CIFAR-100-C:

    • 描述:CIFAR-10 是一个包含 10 类图像的小型数据集,而 CIFAR-10-C 是对 CIFAR-10 应用了各种噪声、模糊、对比度变化等干扰后的版本,模拟了分布外的数据。
    • 用途:用于评估图像分类模型在面对数据分布变化时的表现,尤其是面对不同环境扰动时的鲁棒性。
  • SVHN vs. MNIST:

    • 描述:SVHN(Street View House Numbers)是一个包含房屋门牌号图像的数据集,MNIST 是手写数字数据集。虽然都涉及数字识别,但图像风格和数据分布完全不同。
    • 用途:评估模型的泛化能力,测试模型在处理不同数据源的数字识别任务时的表现。
  • ImageNet vs. ImageNet-O:

    • 描述:ImageNet 是一个大规模图像分类数据集,而 ImageNet-O 是一个专门构造的 OOD 数据集,包含不属于 ImageNet 原始 1000 类的图像。
    • 用途:测试模型在面对完全新类别图像时的 OOD 检测能力。

2. 自然语言处理(NLP)领域

  • IMDB Sentiment Analysis vs. Amazon Reviews:

    • 描述:IMDB 数据集包含电影评论的情感分析任务,而 Amazon Reviews 包含产品评论。虽然任务相同,但来源和语言风格差异很大。
    • 用途:用于评估情感分析模型在不同领域的泛化能力和稳健性。
  • SQuAD vs. TriviaQA:

    • 描述:SQuAD 是一个问答数据集,TriviaQA 是一个更加开放式、且包含更多嘈杂问题和答案的数据集。
    • 用途:测试问答模型的 OOD 表现,尤其在问题和答案格式发生显著变化时的表现。
  • GLUE vs. ANLI:

    • 描述:GLUE 是一套标准的语言理解基准测试,而 ANLI 是一个挑战性的自然语言推理数据集,包含较多的反例和复杂句子结构。
    • 用途:用于测试自然语言理解模型在面对更复杂和反常数据时的推理能力。

3. 时间序列和金融数据领域

  • Electricity Load Dataset vs. Anomalous Load Patterns:

    • 描述:标准的电力负荷数据通常具有周期性模式,但在异常负荷模式(如节假日或突发事件)下会表现出 OOD 特征。
    • 用途:用于测试时间序列预测模型在异常或未见模式下的表现。
  • Stock Prices vs. Market Crash Data:

    • 描述:股票价格数据在正常市场状态下的模式和在市场崩溃或剧烈波动时的模式完全不同。
    • 用途:评估金融预测模型在应对异常市场状况时的表现。

4. 医疗领域

  • ChestX-ray14 vs. COVID-19 Chest X-ray Dataset:

    • 描述:ChestX-ray14 是一个用于检测各种肺部疾病的 X 光图像数据集,而 COVID-19 X-ray 数据集包含特定的 COVID-19 病例。
    • 用途:测试医学影像分析模型在面对新的疾病类型时的识别和诊断能力。
  • MIMIC-III vs. MIMIC-IV:

    • 描述:MIMIC-III 和 MIMIC-IV 是不同版本的 ICU 病人电子健康记录(EHR)数据集,包含不同的记录格式、特征和患者数据。
    • 用途:评估医疗预测模型在面对更新版本数据(包含新病人和新病历特征)时的泛化能力。

总结

这些 OOD 数据集来自多个领域,每个数据集的设计都旨在模拟模型可能在实际应用中遇到的分布外数据。通过使用这些数据集,可以评估模型在面对未知或变化环境时的稳健性和泛化能力。

2 数学领域

在数学领域,特别是在数据建模、函数拟合和预测任务中,超出范围的数据确实可以被视为一种 OOD(Out-of-Distribution)数据。这类 OOD 数据主要出现在模型需要进行外推(extrapolation)时,即当输入值超出模型训练时见过的范围时。以下是数学领域中关于 OOD 数据的几种典型情况和示例:

1. 函数拟合与数值分析

  • 多项式拟合

    • 描述:在 0 到 10 范围内进行多项式拟合训练,然后在 10 到 15 范围内测试模型。
    • 是否算 OOD:算 OOD 数据,因为测试点的输入超出了训练数据的范围,模型需要进行外推,且外推性能可能会显著下降。
    • 用途:评估多项式模型在未知数据点上的预测能力。
  • 数值微分和积分

    • 描述:训练模型在已知范围内近似某个函数的导数或积分,然后在超出范围的区间进行估计。
    • 是否算 OOD:算 OOD 数据,因为估计过程需要基于未见过的函数行为进行推断,属于典型的外推场景。
    • 用途:测试数值方法在超出已知点区域时的稳定性和准确性。

2. 动态系统与微分方程

  • ODE(常微分方程)求解

    • 描述:在已知的初始条件和时间区间内求解 ODE,然后将求解过程扩展到更远的时间范围。
    • 是否算 OOD:算 OOD 数据,因为在超出训练区间的时间点,系统的状态可能无法通过简单延续已知模式来准确描述。
    • 用途:验证 ODE 求解器的长期稳定性和对未见条件的鲁棒性。
  • 时变参数系统

    • 描述:在固定参数下训练模型预测系统行为,然后在参数变化或时间演化下进行测试。
    • 是否算 OOD:算 OOD 数据,因为系统的参数变化使得测试条件与训练时存在显著分布差异。
    • 用途:测试系统建模方法在参数漂移或时间演化下的适应能力。

3. 优化与数值方法

  • 约束优化问题

    • 描述:在某个特定约束范围内训练优化算法(如搜索最优解),然后在放宽或改变约束的情况下进行测试。
    • 是否算 OOD:算 OOD 数据,因为测试时的约束条件变化使得问题的搜索空间超出了训练的范围。
    • 用途:验证优化算法在变化条件下的泛化能力。
  • 插值与外推

    • 描述:在已有数据点之间进行插值,然后尝试在这些点之外进行预测(外推)。
    • 是否算 OOD:插值数据不算 OOD,而外推数据算 OOD,因为外推超出了已知数据点的范围,是一种高风险的预测。
    • 用途:测试插值方法的外推能力和可靠性。

总结

在数学建模、函数拟合、动态系统分析等领域中,超出训练数据范围的数据被视为 OOD 数据。这类 OOD 数据因为超出了模型的已知范围,因此测试的是模型的外推能力,这通常是模型泛化性最为薄弱的环节。通过测试超出范围的数据,可以更好地理解和评估模型在实际应用中的局限性和稳健性。

3 gnn领域

在图神经网络(Graph Neural Networks, GNNs)领域,OOD(Out-of-Distribution)数据同样是一个非常重要的研究方向,因为图数据的分布通常具有复杂的结构和动态性,超出训练数据分布的情况经常会发生。以下是 GNN 领域中常见的 OOD 数据集和场景,这些例子说明了如何在图数据的不同方面识别和处理 OOD 情况:

1. 节点分类中的 OOD 场景

  • Cora, CiteSeer, PubMed 数据集的扩展

    • 描述:这些是常用的图数据集,通常用于节点分类任务。OOD 情况可能出现在节点特征超出训练数据分布或节点之间新增了未见过的连接时。
    • 是否算 OOD:如果节点特征或连接结构在测试数据中不同于训练数据,例如新增了噪声节点、孤立节点或新的边连接,这些就属于 OOD 数据。
    • 用途:评估 GNN 在面对新特征和结构变化时的鲁棒性和泛化能力。
  • 异构图节点分类(Heterogeneous Graphs)

    • 描述:异构图包含多种类型的节点和边,训练数据可能只覆盖部分类型的节点或特征,而测试数据中可能包含新的节点类型或新的关系。
    • 是否算 OOD:算 OOD 数据,因为测试数据中的新节点类型或关系超出了训练时的分布范围。
    • 用途:验证 GNN 对于不同类型节点和关系的识别能力,尤其是在网络类型复杂多样时的泛化表现。

2. 图分类中的 OOD 场景

  • MUTAG vs. 新的化合物图数据

    • 描述:MUTAG 是一个常见的图分类数据集,包含不同化学分子的图表示。训练时模型可能见过某些类型的化学结构,但在测试时可能会遇到新的化合物结构。
    • 是否算 OOD:当测试图的化学结构或分子特征未曾在训练数据中出现时,这些数据就是 OOD 数据。
    • 用途:评估 GNN 在新结构、新化学键类型上的分类准确性。
  • Protein-Protein Interaction Networks

    • 描述:用于图分类或链路预测的 PPI 网络通常训练在特定物种上,但在测试时可能需要预测其他物种的蛋白质相互作用。
    • 是否算 OOD:算 OOD 数据,因为不同物种的蛋白质结构和交互模式可能与训练数据显著不同。
    • 用途:测试 GNN 在生物数据上的跨物种泛化能力。

3. 链路预测中的 OOD 场景

  • 社交网络中新增节点与边的预测

    • 描述:在社交网络中,GNN 被用来预测用户之间的潜在连接(链路预测)。训练数据可能包括过去的连接模式,而测试时新增了用户或边。
    • 是否算 OOD:新增的节点或边以及变化的网络结构算 OOD 数据,因为它们的特征或连接模式未见于训练数据。
    • 用途:评估 GNN 在新用户、新连接上的预测准确性,测试其对变化网络环境的适应性。
  • 知识图谱补全

    • 描述:知识图谱(如 Freebase, YAGO)通常用于链路预测任务,训练数据包含部分已知的实体和关系,测试时可能需要预测未见过的关系类型或新的实体对。
    • 是否算 OOD:新增的实体或未见过的关系类型是 OOD 数据,因它们在训练时从未出现。
    • 用途:测试 GNN 对新知识的推理能力和泛化性能。

4. 动态图中的 OOD 场景

  • 时变图数据(Dynamic Graphs)
    • 描述:动态图模型在时间演化的网络中进行训练和预测,例如交通网络、社交网络随时间的变化。测试数据可能包含训练时未见过的突发事件(如交通事故、新社交潮流)。
    • 是否算 OOD:突发性变化、未见过的时变模式算 OOD 数据,因为它们在训练数据中没有反映出来。
    • 用途:评估 GNN 在动态环境下的鲁棒性和对未来状态的预测能力。

总结

在 GNN 领域,OOD 数据可以来源于节点特征、图结构、新的连接模式等方面的变化。这些 OOD 情况模拟了真实世界中网络数据不断变化和拓展的场景,是测试 GNN 在复杂环境中泛化能力的关键。通过使用这些 OOD 场景,研究人员可以更好地理解和改进 GNN 在面对分布外数据时的性能表现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2174232.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SAP已知事务码查询关联角色

运维期间客户就出现没有某些事务码的权限,要求添加; 想要添加事务码就必须知道这个事务码属于哪个角色;使用SUIM-角色-按菜单中的事务分配,输入事务码,点击执行就可以查看 找到相关的角色之后,用SU01添加至…

【iOS】计算器的仿写

计算器 文章目录 计算器前言简单的四则运算UI界面事件的逻辑小结 前言 笔者应组内要求,简单实现了一个可以完成简单四则运算的计算器程序。UI界面则是通过最近学习的Masonry库来实现的,而简单的四则运算内容则是通过栈来实现一个简单的四则运算。 简单…

只需要两步制作GIF动态图,方便快捷,制作动态表情包的利器!

推荐阅读:Python制作进度条,18种方式全网最全!(不全去你家扫厕所!) 在日常生活中肯定会接触到gif,例如在写文章的时候,有时需要将自己的代码的运行结果展示出来,如果放一…

面试遇到的质量体系10个问题(深度思考)

在某大型公司的招聘面试中关于质量体系本身及建设实践方面的10个问题,这些问题都是偏理论性强一些,但是可以通过这些问题来了解大型公司对质量体系的一些想法和预期的内容,本期先抛出来这10个问题,不附答案,目的就是让…

浏览器用户行为集群建设-数仓建模-数据计算

项目介绍 该项目旨在将集群构建--数仓建模--数据计算通路进行模拟,以达到熟悉整个数据流程的效果。 该项目模拟浏览器后台数据集群身份,收集用户浏览器访问数据传入数据集群,并进行数仓建模,以此基础进行相关计算和看数。 该项…

浅谈域攻防渗透之道-凭据获取

静时修止动修观,历历情人挂眼前;若把此心以学道,即身成佛有何难? 前言 通过提权得到了⼀个⾼权限的⽤户身份,例如获取到了 SYSYEM 权限后,就可以抓当前机器上各类密码:机器密码、浏览器密码、…

asynDriver-2

操作理论 初始化 在初始化中,端口驱动注册每个通信端口以及所有支持的接口。 用户代码创建一个asynUser, 它是访问asynDriver功能的"句柄",通过调用: pasynManager->createAsynUser(processCallback,timeoutCallback); 一个…

基于单片机语音智能导盲仪仿真设计

文章目录 前言资料获取设计介绍设计程序具体实现截图设计获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们…

VulnHub-SickOs1.1靶机笔记

SickOs1.1靶机笔记 概述 Vulnhub的靶机sickos1.1 主要练习从互联网上搜取信息的能力,还考察了对代理使用,目录爆破的能力,很不错的靶机 靶机地址: 链接: https://pan.baidu.com/s/1JOTvKbfT-IpcgypcxaCEyQ?pwdytad 提取码: yt…

AFSim仿真系统 --- 系统简解_02(向导模块)

向导 向导是AFSIM的集成开发环境。它提供了视觉和基于文本的工具,以简化场景的开发和执行。 向导支持嵌入式执行基于文本的WSF应用程序,例如任务和传感器图,并提供快捷方式以方便启动其他WSF视觉应用程序,如Warlock和Mystic。 核…

图解IRF

FW1 配置思路 ① 配置IRF优先级 确认设备的主次 ② 设置批量操作的接口方便后续操作 interface range name fw-irf interface GigabitEthernet1/0/2 to GigabitEthernet1/0/3 ③ 接口 showdown 关闭接口 ④ 创建的IRF 1/1 成员的对应的接口的是 GE1/0/2 GE/1/0/3 ⑤ 开放IRF对…

Mathematica线性优化-单纯形/改善单纯形/内点法

引言 Mathematica提供了多种工具和函数来实现线性优化,这些工具可以处理从简单的线性规划问题到复杂的多变量优化问题,最近运筹学作业要熟悉线性优化的编程方法,我们就使用mathematica进行:所有运行代码都在文章上面的资源中&…

Python | Leetcode Python题解之第435题无重叠区间

题目: 题解: class Solution:def eraseOverlapIntervals(self, intervals: List[List[int]]) -> int:if not intervals:return 0intervals.sort(keylambda x: x[1])n len(intervals)right intervals[0][1]ans 1for i in range(1, n):if intervals…

c++速成 01 数据类型与基本运算符

文章目录 前言整型整型短整型长整型无符号整型 浮点型单精度双精度长双精度 变量命名规则:局部变量 全局变量基本运算符算术运算符:赋值运算符比较运算符逻辑运算符位运算符杂项运算符运算符间的优先级 前言 写在前面:本笔记参考b站视频【《…

从零开始手写STL库:Stack

从零开始手写STL库–Stack的实现 Gihub链接:miniSTL 文章目录 从零开始手写STL库–Stack的实现一、stack是什么?二、stack要包含什么函数总结 一、stack是什么? 栈是一种后进先出(LIFO,Last In First Out&#xff09…

前端常用动画 直接可以用的代码加详细流程和案例 能应付90%的开发场景

前端项目,特别是Toc的项目,一定少不了各种动效和动画效果。 葫芦七兄弟: CSS 动画 优点:兼容性强;浏览器针对的流畅度优化;语法简单;某些属性(如 transform 和 opacity)…

CSS 的背景样式

1.1 背景颜色 1.2 背景图片 1.3 背景平铺 1.4 背景图片位置 1.4.1 方位名词 1.4.2 精确单位 1.4.3 混合单位 1.5 背景图像固定 1.6 背景复合写法 1.7 背景色半透明 1.8 总结

Json-Rpc框架(Muduo库快速上手)

阅读导航 引言一、Muduo库简介二、Muduo库常见接口1. TcpServer类基础介绍2. EventLoop类基础介绍3. TcpConnection类基础介绍4. TcpClient类基础介绍5. Buffer类基础介绍 三、Muduo库使用示例⭕英译汉服务器⭕英译汉客户端 引言 在上一篇文章中,我们简要介绍了在项…

业务资源管理模式语言19

相关模式: 如果你考虑类“Resource Maintenance”和“Part used in maintenance”,那么是“Transaction-Transaction Line Item”模式的一个特例[Coa 97]。如果你考虑类“Part”和“Part used in maintenance”,那么是“Item Line Item”模式…

力扣 简单 104.二叉树的最大深度

文章目录 题目介绍解法 题目介绍 解法 如果知道了左子树和右子树的最大深度 l 和 r,那么该二叉树的最大深度即为max(l,r)1,而左子树和右子树的最大深度又可以以同样的方式进行计算。因此我们可以用递归的方法来计算二叉树的最大深度。具体而言&#xff…