信息速览
INFOBOX
| 项 | 值 |
|---|---|
| 全名 | Global Biodiversity Information Facility(全球生物多样性信息网络) |
| 性质 | 政府间国际组织,各国政府资助 |
| 秘书处 | 哥本哈根(GBIF Secretariat) |
| 成立 | 2001 年(作为 OECD 科学论坛的产物) |
| 规模(API 实测 2026-10-23) | 3,983,162,286 条出现记录 |
| 数据集 | 124,867 个 |
| 发布机构 | 3,651 个 |
| 参与节点 | 169 个(国家/地区与组织节点) |
| 物种 | 48,872,354 个(含种下单元) |
| 许可 | CC0 11.9% / CC BY 4.0 71.2% / CC BY-NC 4.0 16.9% |
| 访问方式 | REST API(全开放,免费,无 key) |
| 最大的坑 | 采样强度偏倚——记录密度反映的是"人去哪里采过样",不是"物种住在哪里" |
§0 E-E-A-T 信任声明与免责声明
我们是谁:千方病案医学编辑部,为中文医学 AI 社区整理可训练数据集的结构化说明。
本条目怎么来的:全部数字来自 2026-10-23 对 GBIF 官方 REST API(api.gbif.org/v1)的实际调用,以及 GBIF 官网首页的官方计数。不做全量下载——40 亿条记录不是能下载的量级,GBIF 也不提供全量下载(只提供按切片派生)。
我们不做什么:本条目不提供模型性能数字。§7.7 的口径矩阵不是 benchmark。
已知局限:
- 首页计数(2026-10-23 搜索快照:3,792,419,629 条 / 123,540 数据集 / 2,761 机构)与 API 实时计数(3,983,162,286 / 124,867 / 3,651)有差异,因为 GBIF 的数据每日更新。本篇以 API 为准,因为它是可复现的。
- 分类学与许可分布来自
facet聚合查询,是 GBIF 自己算的,不是我们重算的。 - 我们没有评估任何单条记录的质量。
§1 数据集概览
§1.0 📌 30 秒速览
GBIF 是全世界最大的"物种在某时某地被见过"的记录库。它不产生数据,只汇聚数据——把博物馆标本标签、野外调查表、公民科学 App 的照片,统一成一套叫 Darwin Core 的字段标准。
规模(API 实测 2026-10-23):
| 指标 | 数值 |
|---|---|
| 出现记录 | 3,983,162,286 |
| 数据集 | 124,867 |
| 发布机构 | 3,651 |
| 参与节点 | 169 |
| 物种(含种下单元) | 48,872,354 |
三个必须先知道的形状问题:
- 它记的是"出现",不是"丰度"。一条记录说明"有人在这里见过这个物种",不说明"这里有多少只",更不说明"没见过的地方就没有"。把 GBIF 当"物种分布图"用,是所有错误里最常见的一个。
- 采样强度偏倚是根本性的。记录密集的地方是城市周边、公路沿线、机场附近、大学野外站——因为人去过那里。亚马逊腹地的记录比伦敦市区少几个数量级。这个偏倚无法通过统计方法完全消除,只能通过建模时显式纳入"采样强度"作为协变量来缓解。
- 分类覆盖极度不均。动物界占 77.3%,植物界 16.3%,真菌界只有 1.6%,病毒只有 10 万条(0.0%)。“GBIF 有 48 亿条记录"不等于"每个类群都有足够数据”。
如果你做物种分布模型(SDM)、入侵物种预警、疾病媒介(蜱、蚊)分布、保护规划,GBIF 是起点;如果你要"某物种在某地的种群数量",GBIF 给不了。
§1.1 技术摘要
| 维度 | 值 |
|---|---|
| 出现记录总数 | 3,983,162,286 |
| 有坐标的记录 | 3,804,266,529(95.5%) |
| 有年份的记录 | 3,786,394,884(95.1%) |
| 归属某个分类学门的记录 | 3,080,833,343(77.3%) |
| 数据集 | 124,867 |
| 发布机构 | 3,651 |
| 参与节点 | 169 |
| 物种(含种下) | 48,872,354 |
| 记录标准 | Darwin Core(DwC) |
| 访问方式 | REST API(免费、无 key、无硬限流) |
| 更新频率 | 每日(数据集发布后数小时内可检索) |
95.5% 有坐标这个数字很有迷惑性。它看起来像"空间数据质量很高",但真正决定空间建模质量的是
coordinateUncertaintyInMeters(坐标不确定度)——而这个字段的填充率低得多。一条记录坐标精确到小数点后六位,但不确定度写的是"10 km",那它只能当 10 km 用。
§1.2 战略价值
第一,它是唯一一个把"专业标本"与"公民科学"放在同一个索引里的库。 大英博物馆的一件 1850 年标本,和 iNaturalist 用户昨天拍的一张手机照片,在 GBIF 里是同一张表的相邻两行。这件事的意义在于:它让"1450 年至今的物种分布变化"成为一个可计算的问题。没有任何其他数据源能做到这个时间跨度。
第二,它是疾病生态学的基础设施。 做蜱媒疾病、蚊媒疾病、鼠传疾病的风险建模,第一步是知道媒介物种分布在哪。GBIF 的 Human health 主题页面明确说明有 678 篇论文用它做这类研究。这与本站的医学定位直接相关——它不是"生物学数据集",它是"人畜共患病的地理前提"。
第三,它是入侵物种预警的输入。 GBIF 有 2,113 篇论文用于外来入侵物种研究。原理很直接:某物种在原产地之外的记录开始出现,就是入侵的信号。
第四,它的许可结构在开放数据里算好的,但不是最好的**。71.2% 是 CC BY 4.0(可商用,需署名),11.9% 是 CC0(无条件),16.9% 是 CC BY-NC 4.0(不可商用)。做商业产品必须逐条过滤掉 NC 那部分。
§1.3 同类资源横向对比
| 资源 | 定位 | 与 GBIF 的关系 |
|---|---|---|
| GBIF(本条) | 全球出现记录聚合 | 最大、最全、标准最统一 |
| iNaturalist | 公民科学观测平台 | GBIF 最大的单一数据来源之一;iNaturalist 把自己的"研究级"记录推给 GBIF |
| eBird / Movebank | 鸟类观测 / 动物追踪 | eBird 数据经 GBIF 部分可查;Movebank 是轨迹不是出现点,粒度不同 |
| OBIS(Ocean Biodiversity Information System) | 海洋生物多样性 | 与 GBIF 有大量交换,海洋部分 OBIS 更专 |
| ALA(Atlas of Living Australia) | 澳大利亚国家节点 | 是 GBIF 的节点之一,不是竞争 |
| NCBI Taxonomy / Catalogue of Life | 分类学骨架 | GBIF 用 Backbone Taxonomy(自建,整合 CoL 等),是分类回填的依据 |
| ENA(本站 #133) | 核酸序列 | eDNA 场景下配对使用:序列证据在 ENA,出现记录在 GBIF |
| IUCN Red List | 濒危等级评估 | 24,730 个物种评估引用了 GBIF 数据;两者互补 |
OBIS 那一行值得展开:海洋物种的记录在 GBIF 里覆盖偏差尤其大(因为船上采样成本高)。做海洋物种分布时,OBIS + GBIF 一起查是标准做法,只查 GBIF 会系统性低估海洋覆盖。
§1.4 版本时间轴
| 时间 | 事件 |
|---|---|
| 1999 | OECD 科学论坛提出建立全球生物多样性数据设施的建议 |
| 2001 | GBIF 正式成立,秘书处设哥本哈根 |
| 2007 | 开始大规模采用 Darwin Core 标准 |
| 2013 | 出现记录突破 4 亿 |
| 2017 | 突破 10 亿 |
| 2022 | 突破 20 亿 |
| 2026 | 39.8 亿(API 实测 2026-10-23) |
| 2026-08 | 新版 GBIF.org 网站上线 |
增长曲线值得注意:从 2001 到 2017(16 年)到 10 亿;从 2017 到 2026(9 年)翻了近 4 倍。加速度主要来自公民科学——iNaturalist 一家就贡献了巨量记录。这意味着近年新增数据的质量特征与早期数据完全不同(见 §7.3)。
§1.5 典型应用场景
场景一:物种分布模型(SDM)。 给定一个物种的已知出现点,加上气候/地形图层,预测它的潜在分布。这是 GBIF 最高频的用法,也是采样偏倚问题最尖锐的地方。
场景二:疾病媒介分布建模。 蜱、蚊、蚤、鼠的分布 → 叠加人口密度 → 疾病风险图。这是公共卫生与 GBIF 的交叉点。
场景三:入侵物种早期预警。 监测某物种在原产地之外的首次记录。
场景四:保护规划与红色名录评估。 IUCN 用 GBIF 数据算 AOO(占有面积)与 EOO(发生范围),这是评级的两项关键指标。
场景五:物候变化研究。 用 eventDate 做时间序列,看某物种的开花/迁徙时间是否在提前。这个用法对数据质量要求最高,因为日期误差会直接变成趋势误差。
§2 生物多样性记录的科学前提
§2.1 一条"出现记录"到底是什么
一条 GBIF 记录的核心语义,可以用一句话概括:
某人在某时某地,以某种方式,确认(或推测)看到了某个物种。
这五个要素对应 Darwin Core 的五个核心字段:recordedBy(谁)、eventDate(何时)、decimalLatitude/Longitude(何地)、basisOfRecord(什么方式)、scientificName(什么物种)。
这个语义决定了 GBIF 能回答什么、不能回答什么:
| 能回答 | 不能回答 |
|---|---|
| 这个物种在这个地点出现过 | 这个地点有多少个体 |
| 这个物种的分布北界在哪 | 这个地点是不是它的最适生境 |
| 这个物种的记录在往北移吗 | 这个物种的种群在增长还是衰退 |
| 哪些地区从没被调查过 | 没被调查过的地方有没有这个物种 |
第三行与第四行的区别是理解 GBIF 的关键:记录往北移,可能是物种在迁移,也可能是北方新开了几个野外站。这两者从数据本身分不开,必须引入采样强度作为协变量。
§2.2 为什么需要 Darwin Core 这个标准
在 Darwin Core 之前,每个博物馆的标本数据库字段都不一样:有的叫 collector,有的叫 leg.(拉丁缩写),有的把采集地和采集人写在一个自由文本字段里。
Darwin Core 做的事是把语义固定下来:
| 概念 | Darwin Core 字段 | 常见错误 |
|---|---|---|
| 学名 | scientificName |
写成俗名、写成缩写、写成"sp." |
| 坐标 | decimalLatitude / decimalLongitude |
写成度分秒、写成投影坐标、经纬度颠倒 |
| 日期 | eventDate(ISO 8601) |
写成"May 1987"、写成当地时间+时区 |
| 记录类型 | basisOfRecord(受控词表) |
用自造词 |
| 分类 | kingdom … species 逐级 |
跳过中间层级 |
这个标准的价值不在于"字段多",而在于"字段可比较"。有了它,1850 年的标本和 2026 年的手机照片才能进同一张表。
但它也带来一个问题:Darwin Core 的字段是可选的。一条记录可以只有学名和坐标,其他全空。这就是为什么 GBIF 里同一个字段的填充率会从 0% 到 100% 不等。
§2.3 从记录到可用数据:中间缺了什么
一份 GBIF 记录到"能做模型的样本",中间要补:
- 分类学回填(GBIF 已做):原始记录可能只写了"sp.",GBIF 用 Backbone Taxonomy 尝试回填到种
- 坐标校验(GBIF 部分做):GBIF 会标记"坐标在国界外""坐标在海洋但物种是陆生"等问题,但不删除
- 去重(几乎没做):同一次观测可能被两个数据集收录(如 iNaturalist 与某国家节点)
- 采样强度估计(完全没做):这是使用者必须自己补的
- 伪缺失点生成(完全没做):SDM 需要"背景点",怎么选背景点直接决定结果
- 坐标不确定度筛除(可选):
coordinateUncertaintyInMeters大于某阈值就丢
第 4 与第 5 步是专业门槛所在。同样一份 GBIF 数据,两个人做出的分布模型可能完全不同,差别全在这两步。
§2.4 数据来源:谁在提交,为什么形状是这样
| 来源类型 | 典型机构 | 记录特征 | 占比感觉 |
|---|---|---|---|
| 自然史博物馆 | 大英博物馆、巴黎 MNHN、Smithsonian | 单条质量高、有实物凭证、年代久 | 记录数不大但价值高 |
| 公民科学平台 | iNaturalist、eBird | 记录量大、近十年激增、照片可验证 | 近年增量的主体 |
| 国家监测计划 | 各国环境署、保护区 | 协议统一、重复调查、有阴性记录 | 时间序列最好 |
| 大学与研究机构 | 野外站、分类学实验室 | 质量参差、常带研究项目标签 | 中 |
| eDNA 与自动化传感器 | 新兴 | 增长最快、无实物凭证 | 占比极小但增长猛 |
第二行与第五行的对比是理解 GBIF 未来形状的关键。公民科学让记录量在近十年爆炸式增长,但它带来的是"有人去过的地方记录更密"这个偏倚被进一步放大。eDNA 则是反向的——它能覆盖"人没去过但水/土里有 DNA"的地方,理论上能修正采样偏倚,但目前占比太小。
§2.5 为什么"出现记录"对医学 AI 特别重要
这一条是本站收录 GBIF 的核心理由,值得单独讲。
人畜共患病的第一个前提是"动物在不在那里"。 一个地区有没有蜱、有没有特定鼠种、有没有候鸟停留,决定了这个地区有没有某种传染病的潜在风险。而这些动物分布的公开数据,主要就在 GBIF。
具体到建模:
- 媒介分布 → 莱姆病、蜱传脑炎、登革热、疟疾的风险图
- 宿主分布 → 汉坦病毒、鼠疫、狂犬病的潜在疫区
- 候鸟迁徙路径 → 禽流感跨洲传播的通道
- 土地利用变化 + 物种分布变化 → 新型接触界面的形成(这是"溢出风险"的核心机制)
这些模型的第一层输入,都是 GBIF 的出现点。 没有它,疾病生态学建模只能靠专家画范围图。
§2.6 质量标准的边界:GBIF 保证什么、不保证什么
| GBIF 保证 | GBIF 不保证 |
|---|---|
| 记录符合 Darwin Core 字段定义 | 字段被填写 |
| 学名能映射到 Backbone Taxonomy | 学名是对的(原始鉴定可能错) |
| 坐标是十进制度 | 坐标是准的 |
| 有许可声明 | 许可允许你的用途(NC 不可商用) |
| 记录可追溯到数据集与机构 | 数据集内部没有重复 |
| 分类学随 Backbone 版本更新 | 历史记录的分类已被重新鉴定 |
这张表里最容易被忽略的是第三行与第六行:GBIF 保证"格式是坐标",不保证"坐标是那个标本的真实位置"。历史标本的坐标常常是"某省某县"的中心点,误差几十公里。
§3 数据库规格与通道抉择
§3.0 三条通道
| 通道 | 用途 | 限量 | 说明 |
|---|---|---|---|
Occurrence API(/v1/occurrence/search) |
检索、计数、facet 聚合 | limit=0 只返计数;单次最多 300 条明细 |
做统计与探索用这个 |
下载 API(/v1/occurrence/download/request) |
申请派生数据集(zip + DOI) | 需异步,按量排队 | 做训练集用这个,会给你一个 DOI |
数据集检索(/v1/dataset/search) |
找数据集 | — | 按机构/许可/国家筛 |
关键区别:Occurrence API 的 limit 上限很低(单次 300 条),不适合拉大量明细。要拿几万条以上,必须走下载 API——它会生成一个带 DOI 的 zip,可引用、可复现。
§3.1 检索参数的地图
| 参数 | 作用 | 例 |
|---|---|---|
taxon_key |
按分类学键筛(含子树) | taxon_key=212(鸟纲) |
kingdom_key … species_key |
按分类层级筛 | kingdom_key=1(动物界) |
country |
ISO 国家码 | country=CN |
year |
年份或区间 | year=2020,2026 |
has_coordinate |
是否有坐标 | true |
has_geospatial_issue |
是否有坐标问题 | false |
basis_of_record |
记录类型 | PRESERVED_SPECIMEN |
license |
许可 | CC0_1_0 |
facet |
聚合维度 | facet=license |
limit=0 |
只返计数不返明细 | 计数专用 |
has_geospatial_issue=false这个参数值得单独记。GBIF 会给每条记录打空间质量标记(坐标在国界外、在海洋、在国家中心点等)。做空间建模时把它设为 false,能一次去掉最脏的那批,成本为零。
§3.2 下载预算
| 目标 | 体量 | 做法 |
|---|---|---|
| 全库 | 约 40 亿条,压缩后数 TB | 不现实,也没必要 |
| 一个纲(如鸟纲) | 数亿条 | 下载 API,需要排队 |
| 一个科 | 数百万条 | 下载 API,分钟到小时 |
| 一个国家 | 数百万到数亿 | 下载 API |
| 一个物种 | 数千到数百万 | 下载 API 或 API 分页 |
| 计数与分布 | KB 级 | Occurrence API limit=0 + facet |
最重要的一条经验:先用 limit=0 + facet 把分布摸清楚,再决定下什么。一次 facet 查询能告诉你按 basisOfRecord、按 license、按年份、按国家的分布,成本是几百毫秒。
§3.3 版本机制:没有版本号,只有"每日快照"
与 IMGT 的 202642-7、Alliance 的 9.1.0 不同,GBIF 没有全库版本号。它每天更新索引,记录会增、会改、会删。
唯一能钉住时点的机制是下载 DOI:当你用下载 API 生成一个派生数据集时,GBIF 会分配一个 DOI(如 10.15468/dl.xxxxx),这个 DOI 指向的是一个不可变的快照。
这是 GBIF 最值得称赞的设计。它把"可复现性"从"你自己记下查询条件"升级为"系统给你一个永久标识符"。做数据集时,一定要用下载 DOI,不要用 API 实时查询的结果——后者明天就变了。
§3.4 技术栈与溯源链
- 存储:HBase + Elasticsearch(索引)+ HDFS(原始 DwC-A)
- 分类骨架:GBIF Backbone Taxonomy,整合 Catalogue of Life、ITIS、WoRMS 等
- 校验:坐标质量标记、分类学回填、日期解析
- 溯源:
datasetKey→publishingOrgKey→installationKey,三级可回溯到具体 IPT 实例
installationKey这一层很少人用,但很有用:一个机构可能有多个 IPT 实例(不同项目),出问题时要知道是哪个实例推的数据。
§4 记录结构与字段字典
§4.1 Darwin Core 的核心字段
| 字段 | 含义 | 填充率 | 备注 |
|---|---|---|---|
occurrenceID |
记录唯一标识 | 高 | 由发布机构给 |
scientificName |
学名 | 高 | 可能带作者引证 |
acceptedScientificName |
GBIF 回填的接受名 | 高 | 用它做分析,不要用原始名 |
taxonKey / speciesKey |
GBIF 分类键 | 高 | 跨数据集 join 的唯一可靠键 |
decimalLatitude / decimalLongitude |
坐标 | 95.5% | WGS84 |
coordinateUncertaintyInMeters |
坐标不确定度 | 低 | 空间建模关键 |
eventDate |
采集日期 | 中 | ISO 8601;95.1% 至少到年 |
basisOfRecord |
记录类型 | 高 | 受控词表 |
country / countryCode |
国家 | 高 | ISO 3166 |
locality |
地点描述 | 中 | 自由文本 |
recordedBy |
采集者 | 中 | 自由文本,不做规范化 |
identifiedBy |
鉴定者 | 低 | 分类质量的关键线索 |
license |
许可 | 高 | CC0 / CC BY / CC BY-NC |
datasetKey |
所属数据集 | 必填 | 溯源起点 |
issues |
质量问题标记 | 必填 | 空格分隔的标记列表 |
§4.2 basisOfRecord:四种记录类型,四种可信度
| 值 | 含义 | 特征 | 可信度 |
|---|---|---|---|
PRESERVED_SPECIMEN |
保存的标本 | 有实物、可复核 | 最高 |
MATERIAL_SAMPLE |
材料样本(含 eDNA) | 有实物但常无形态鉴定 | 高(但鉴定依赖分子) |
HUMAN_OBSERVATION |
人类观测 | 无实物、可能有照片 | 中 |
MACHINE_OBSERVATION |
机器观测(相机陷阱、声学) | 无实物、算法识别 | 中低(取决于算法) |
OBSERVATION |
未区分的人类观测 | 老数据常见 | 中 |
LIVING_SPECIMEN |
活体(动物园、植物园) | 不代表野生分布 | 用于分布建模时必须排除 |
FOSSIL_SPECIMEN |
化石 | 古分布 | 时间尺度不同 |
OCCURRENCE |
未指定 | 低 |
LIVING_SPECIMEN这一行是个陷阱。动物园里的大熊猫、植物园里的外来树种,记录的坐标是园子,不是物种的自然分布。做分布建模时如果不过滤它,会得到"大熊猫分布在城市中心"的荒谬结果。
实操上,这八类可以归成三档处置:
| 档位 | 包含类型 | 处置 |
|---|---|---|
| 直接保留 | PRESERVED_SPECIMEN、MATERIAL_SAMPLE、FOSSIL_SPECIMEN |
直接进训练集;化石类只在做古分布时才进来 |
| 保留但分层 | HUMAN_OBSERVATION、MACHINE_OBSERVATION、OBSERVATION |
保留,但把类型作为一个协变量,或在下游做敏感性分析(只用标本 vs 全部) |
| 默认排除 | LIVING_SPECIMEN、OCCURRENCE |
分布建模必须排;OCCURRENCE 因为"未指定"意味着连采集方式都不知道,质量无法判断 |
为什么 MATERIAL_SAMPLE 值得单独说:这一类里混着 eDNA 样本(水样、土样、擦拭样)。它的坐标是取样点,代表"这个点存在该物种的遗传物质",这在语义上比"看到一只个体"更接近"物种存在",但它无法给出个体数量、年龄、行为。做 eDNA 与目击记录混合的分布模型时,最好把两者作为两个来源分别建模再集成,而不是简单堆在一起——因为两者的检出概率完全不同。
为什么 MACHINE_OBSERVATION 要单独警惕:相机陷阱和声学监测的物种识别依赖算法,算法在训练集覆盖不足的物种上会系统性漏检或误判。**同一批红外相机数据,用两版识别模型跑出来的物种清单可能差三成。**如果下游任务对稀有物种敏感,必须确认提供方声明了识别模型的版本与准确率;没声明的,按最低可信度处理。
§4.3 分类构成:77.3% 是动物
API kingdom_key 聚合(2026-10-23):
| 界 | 记录数 | 占比 |
|---|---|---|
| Animalia 动物界 | 3,080,833,343 | 77.3% |
| Plantae 植物界 | 650,843,115 | 16.3% |
| Bacteria 细菌界 | 107,105,738 | 2.7% |
| Fungi 真菌界 | 63,427,821 | 1.6% |
| Chromista 色藻界 | 48,239,450 | 1.2% |
| Archaea 古菌界 | 10,338,340 | 0.3% |
| Protozoa 原生生物界 | 2,946,887 | 0.1% |
| Viruses 病毒 | 100,158 | 0.0% |
这张表的含义比数字本身重要:
- 动物界的记录量大,主要来自观鸟。鸟类是唯一一个"业余爱好者能做得比专业学者好"的类群,eBird 与 iNaturalist 的数据让鸟类记录占了动物界的相当比例。
- 真菌只占 1.6%,这是真正的短板。真菌的物种数估计有 200-380 万种,但记录量极少——因为真菌要显微镜或测序才能鉴定,且子实体出现有时间窗。
- 病毒只有 10 万条。这里的"病毒记录"指的是病毒作为生物样本被采集的记录(如从蝙蝠取样),不是"感染病例"。做病毒分布研究不能靠 GBIF。
§4.4 许可结构:只有 11.9% 是 CC0
API facet=license(2026-10-23):
| 许可 | 记录数 | 占比 | 商用 | 需署名 |
|---|---|---|---|---|
| CC BY 4.0 | 2,837,223,383 | 71.2% | ✅ | ✅ 必须 |
| CC BY-NC 4.0 | 671,710,452 | 16.9% | ❌ 不可 | ✅ |
| CC0 1.0 | 474,228,451 | 11.9% | ✅ | ❌ 不必须 |
这张表对商业化是决定性的:
- 想做商用产品,只能用 CC0(11.9%)+ CC BY(71.2%)= 83.1%,但这 83.1% 里 CC BY 部分必须逐条署名——40 亿条记录的署名义务在工程上是个真问题。
- 做开源/学术研究,三种都能用,但 NC 部分要遵守"非商业"。
署名的工程问题值得展开:CC BY 要求"署名原作者"。GBIF 的做法是在数据集级别给 citation(如"Gross J, Oboyski P (2026). Essig Museum of Entomology. Version 121.465…")。所以正确做法是按
datasetKey分组署名,不是按记录署名——124,867 个数据集,署名清单是可行的;40 亿条记录,不可行。
§4.5 issues 字段:GBIF 自己的质量标记
GBIF 会给每条记录打质量标记,写在 issues 字段里。常见标记:
| 标记 | 含义 |
|---|---|
COORDINATE_INVALID |
坐标无效(超出范围) |
COORDINATE_OUT_OF_RANGE |
坐标与声明国家不符 |
COUNTRY_COORDINATE_MISMATCH |
坐标落在该国境外 |
ZERO_COORDINATE |
坐标是 (0,0) |
GEODETIC_DATUM_ASSUMED_WGS84 |
未声明基准,假定 WGS84 |
TAXON_MATCH_FUZZY |
学名模糊匹配(可能不是同一个物种) |
TAXON_MATCH_HIGHERRANK |
只匹配到较高层级(如只到属) |
RECORDED_DATE_INVALID |
日期无效 |
FIRST_OF_YEAR / FIRST_OF_MONTH |
日期只精确到年/月 |
FIRST_OF_MONTH这个标记对物候研究是致命的。如果一条记录写"1987-05-01",而实际只精确到"1987 年 5 月",GBIF 会把它标成FIRST_OF_MONTH。做物候趋势时如果把这类记录当精确日期用,会引入系统性偏差。
§4.6 一个容易忽略的事实:同一观测可能有多条记录
GBIF 的去重是有限的。同一次观测可能在以下情况出现多次:
- iNaturalist 的记录被某国家节点(如 ALA)再发布一次
- 一个标本同时存在于两个博物馆的数据库(重复登记)
- eDNA 样本的多次测序产出被拆成多条记录
GBIF 有一个 occurrenceID 层面的去重,但不同机构给的 occurrenceID 不同,所以去重不彻底。做统计时如果不去重,会高估记录数(通常高估 1-5%,具体取决于类群)。
§5 检索、抽样与泄漏分析
§5.0 GBIF 上能做的五类检索
一、拿全库计数(不下载任何明细)
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0" | jq '.count'
二、按分类 + 时间 + 空间筛
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0&taxon_key=212&year=2020,2026&has_coordinate=true&has_geospatial_issue=false" | jq '.count'
三、facet 聚合看分布(这是探索阶段最有用的一招)
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0&facet=license&facetLimit=10" | jq '.facets'
四、按数据集筛(做溯源时用)
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0&dataset_key=<UUID>"
五、申请可引用的下载(拿 DOI)
# 需要 POST 一个 JSON 查询体到 /v1/occurrence/download/request
# 返回一个 downloadKey,之后可查状态、拿 DOI
第三条是效率最高的一招:一次请求拿全部 facet 分布,几百毫秒,比下载任何数据都划算。
§5.1 抽样策略:GBIF 的核心难点不是抽样,是"伪缺失"
大多数数据集的抽样问题是"怎么抽训练集"。GBIF 的问题更根本:SDM 需要"出现点"和"背景点(pseudo-absence)",而背景点怎么选直接决定模型结论。
| 背景点策略 | 做法 | 问题 |
|---|---|---|
| 随机全图 | 在整个研究区随机撒点 | 会大量落在"从没人去过"的地方,模型学到"没人去过=没有物种" |
| 目标组背景 | 用同类群的记录点当背景 | 最推荐:控制采样偏倚 |
| 缓冲区 | 出现点周围一定半径内撒点 | 适合小尺度 |
| 分层随机 | 按生境/海拔分层 | 计算量大但偏差最小 |
“目标组背景”(target-group background)是当前最被认可的做法,原理是:用同一批调查者记录的其他物种的位置当背景,这样"人去哪采样"这个偏倚在出现点和背景点之间是对称的。不知道这一点,做出来的模型基本不可信。
具体怎么做。假设要建模的是某种蜱。不要用全图随机点,而是在同一批采集者的全部记录里,剔除目标种之后的那些记录作为背景。这些记录的坐标同样集中在"有人去过的地方"——于是"采样机会"这个变量在出现点集和背景点集里分布一致,模型学到的就只剩环境差异。GBIF 上的可行做法是:先按 datasetKey 或 recordedBy 圈定调查项目范围,再在该范围内取背景。
这个做法有代价:目标组背景要求你事先知道"谁在调查这些类群"。如果目标种由业余观察者零散记录,而背景种来自系统性调查,两者的采样机制不同,目标组背景反而会引入新偏倚。判断标准很简单——出现点和背景点的记录日期分布、采集者分布应该大体重合;如果出现点集中在夏季而背景点全年均匀,说明两者不是同一套调查产出的,不能用。
§5.1.1 采样强度的量化:把"努力"变成一列数字
目标组背景是概念,落地要变成一列数值。最常用的是网格采样强度:把研究区切成固定大小的格子(赤道附近 0.5° 约 55 公里,高纬要按经度收缩校正),每格统计"全部记录数"或"全部物种数",作为该格的采样努力量,作为协变量或偏倚层的输入。
注意三件事:
- 用"全部记录数"而不是"目标种记录数"。后者本身就是因变量,放进去就是循环论证。
- 网格要覆盖研究区外围。只统计研究区内的格子,边缘格的强度会被系统性低估,模型在边界处的预测会失真。
- 时间维度要分开统计。一个格子在 1900-1950 年记录很多、之后为零,说明调查停了,不是物种消失了。做时间序列时必须逐年重算强度,不能用一个全时期的总数。
这一步做与不做,是"能发论文"和"只能算练习"的分界(见 §6.1 第 5 步)。绝大多数失败的 SDM 不是模型选错,而是根本没把采样努力当成变量。
§5.2 四类真实泄漏,按危害排序
第一类:空间自相关(最严重)
相邻地点的环境条件几乎相同,物种分布也几乎相同。如果随机划分训练/测试点,测试点周围的训练点会"泄漏"答案,模型分数虚高。
正确做法:空间分块交叉验证(spatial block CV),按经纬度网格分组,测试块的邻居不能进训练集。
第二类:同一采集事件跨侧(隐蔽)
一次野外调查会记录几十个物种。如果按记录随机划分,同一次调查的记录会跨侧——模型学到的是"这次调查的地点",而不是物种-环境关系。
正确做法:按 eventID 或(采集者+日期+地点)分组。
第三类:数据集重复(中等)
同一批数据被两个机构各发布一次(§4.6)。如果不去重,同一观测会跨侧。
第四类:时间泄漏(做趋势研究时)
用 2000-2020 训练、2021-2026 测试,看似合理。但如果训练集里已经包含了 2021 年之后才被重新鉴定的记录,就泄漏了未来信息。
§5.3 结构泄漏:从元数据本身推断出的信息
datasetKey 泄漏采样项目:同一数据集的记录来自同一批调查,风格一致。做物种分类模型时,模型可能靠"元数据风格"认数据集,而不是认物种特征。
recordedBy 泄漏采集者专长:某位采集者只采某类群。如果训练集里"采集者 A = 只采鸟",测试集里出现 A 的记录,模型可以直接猜"这是鸟"。
basisOfRecord 泄漏记录年代:PRESERVED_SPECIMEN 多来自早期,HUMAN_OBSERVATION 多来自近十年。这个字段实际编码了时间。
处置方式:做物种分类任务时,移除 recordedBy、datasetKey,并把 basisOfRecord 做分层而非直接输入。
§5.4 一个不该做的划分:按国家切
看似合理(“用其他国家数据训练,预测本国”),实际引入严重偏倚:
- 发达国家的记录密度远高于发展中国家
- 不同国家的调查协议不同(有的用网格调查,有的用机会记录)
- 分类学专长分布不均(某些类群只有少数国家有专家)
结果:模型学到的是"哪个国家",而不是"什么生境有什么物种"。如果任务真的是跨国泛化,正确做法是在同一生境类型内跨国家配对。
§6 AI 就绪指南
§6.1 最小可用 Pipeline
# 1. 先摸清分布(几百毫秒)
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0&taxon_key=<K>&facet=basisOfRecord&facetLimit=20&facet=year&facetLimit=100" | jq '.facets'
# 2. 用 facet 结果决定筛选条件,再申请下载(拿 DOI)
# POST /v1/occurrence/download/request
# body 里写 predicate(taxonKey / year / hasCoordinate / hasGeospatialIssue / basisOfRecord / license)
# 3. 下载 zip,解包,通常是 occurrence.txt(TSV)+ meta.xml + eml.xml
unzip <downloadKey>.zip
# 4. 关键筛选(按顺序,每步都要记录数量)
# a. 去掉 basisOfRecord = LIVING_SPECIMEN / FOSSIL_SPECIMEN
# b. 去掉 hasGeospatialIssue = true
# c. 去掉 coordinateUncertaintyInMeters > 你的阈值
# d. 按 license 过滤(商用必须去 NC)
# 5. 采样强度估计(必须做,否则 SDM 不可信)
# 常用:按 0.5° 网格统计"全部记录数"作为采样强度协变量
# 6. 空间分块交叉验证
第 5 步是分水岭:做了这一步的模型能发论文,没做的只能算练习。
§6.2 DataLoader 与批组织
做分类模型时,按物种分层但要控制每物种上限:
# 错误:按记录随机抽 → 得到"全是鸟"的数据集
# 正确:每物种最多 N 条,且按 basisOfRecord 分层
per_species_cap = 500
做 SDM 时,按空间块组织:
# 用 0.5° 网格做 groups,GroupKFold
groups = (df.lat // 0.5).astype(str) + "_" + (df.lon // 0.5).astype(str)
§6.3 评价指标:为什么不能只看 AUC
SDM 最常用的指标是 AUC,但它有个致命缺陷:AUC 对背景点的选择极度敏感。同一份出现点,换一种背景点策略,AUC 可以从 0.7 变到 0.95。
必须报告:
- AUC(但要说明背景点策略)
- TSS(true skill statistic,对类别不平衡更稳健)
- Boyce 指数(只用出现点,不需要背景点——这是最诚实的指标)
- 按物种分组的表现(不要只报平均)
只报平均 AUC 的论文,结论可信度有限。
§6.4 MLOps:用下载 DOI 钉住快照
dataset:
source: GBIF
download_doi: "10.15468/dl.xxxxx" # ← 这一行是全部
download_key: "0001234-260101120000000"
record_count: 1234567
filters:
taxon_key: 212
year: "1990,2026"
has_coordinate: true
has_geospatial_issue: false
license: ["CC0_1_0", "CC_BY_4_0"]
download_doi 是 GBIF 给的最好礼物:它指向一个不可变快照,任何人用这个 DOI 都能拿到完全一样的数据。不要用 API 实时查询的结果做训练集——明天就变了。
§6.5 六个坑点
坑点 1:把 count 当"物种数量"
- 症状:
occurrence/search?limit=0返回 39.8 亿,以为"有 39.8 亿个物种"。 - 原因:
count是记录数,不是物种数。物种数要去/v1/species/search?limit=0。 - 解决:记录数 39.8 亿,物种数 4,887 万。
- 参考:这两个数字差 81 倍,混用会得出荒谬结论。
坑点 2:limit=0 在 GBIF 是"只返计数",在 ENA 是"返回全部"
- 症状:从 ENA 过来的人习惯
limit=0拉全部,在 GBIF 上只拿到count没有results。 - 原因:两个 API 的
limit=0语义相反。 - 解决:GBIF 要明细用
limit=300(上限)+offset分页,或走下载 API。
坑点 3:LIVING_SPECIMEN 会污染分布建模
- 症状:模型预测某物种分布在城市中心。
- 原因:动物园、植物园、水族馆的记录都标
LIVING_SPECIMEN,坐标是园区。 - 解决:分布建模时
basisOfRecord排除LIVING_SPECIMEN与FOSSIL_SPECIMEN。
坑点 4:coordinateUncertaintyInMeters 填充率低,但它是关键
- 症状:以为 95.5% 有坐标就等于空间质量高。
- 原因:坐标有值不代表精确。历史标本的坐标常是"县中心点"。
- 解决:优先用
coordinateUncertaintyInMeters有值且小于阈值的记录;没有这个字段的,按basisOfRecord分层加权。
坑点 5:issues 字段是一串空格分隔的标记
- 症状:
df.issues == 'COORDINATE_INVALID'筛不到东西。 - 原因:一条记录可能有多个标记,字段是
"COORDINATE_INVALID TAXON_MATCH_FUZZY"。 - 解决:用
str.contains而不是==。
坑点 6:CC BY-NC 的记录不能商用,但混在同一张表里
- 症状:拿 GBIF 数据做了个商业产品,被指出侵权。
- 原因:16.9% 的记录是 CC BY-NC 4.0。
- 解决:下载时在 predicate 里只选
CC0_1_0与CC_BY_4_0;或全部保留但按license分表。
§6.6 反模式清单
| 反模式 | 为什么错 | 正确做法 |
|---|---|---|
| 把 GBIF 当"物种分布图" | 记录密度 = 采样密度 | 显式建模采样强度 |
| 随机划分训练测试 | 空间自相关泄漏 | 空间分块 CV |
| 随机选背景点 | 学到"没人去=没物种" | 目标组背景 |
不排除 LIVING_SPECIMEN |
动物园/植物园污染 | 按 basisOfRecord 过滤 |
| 用实时 API 结果做训练集 | 每天变 | 用下载 DOI 钉快照 |
| 全量数据混用三种许可 | NC 不可商用 | 按 license 分表 |
§7 质量评估、DAIMS 与口径交叉核对
§7.1 记录级质量
| 维度 | 状态 | 证据 |
|---|---|---|
| 字段标准 | ✅ 强制 Darwin Core | 提交时校验 |
| 分类学回填 | ✅ 自动 | Backbone Taxonomy |
| 坐标校验 | ⚠️ 标记但不删 | issues 字段 |
| 日期解析 | ⚠️ 部分 | FIRST_OF_YEAR/FIRST_OF_MONTH 标记 |
| 去重 | ❌ 有限 | 跨机构 occurrenceID 不同 |
| 鉴定质量 | ❌ 不评估 | identifiedBy 填充率低 |
| 采样强度 | ❌ 不提供 | 使用者自算 |
| 阴性记录 | ⚠️ 极少 | 大多数调查不报"没看到" |
结论:GBIF 是格式高度规范、语义高度可疑的库。它把"长什么样"管得很好,把"对不对"留给使用者。
§7.2 抽样声明:本条目数字的边界
| 数字 | 来源 | 时点 |
|---|---|---|
| 3,983,162,286 记录 | occurrence/search?limit=0 的 count |
2026-10-23 API 实测 |
| 124,867 数据集 | dataset/search?limit=0 |
2026-10-23 |
| 3,651 发布机构 | organization/search?limit=0 |
2026-10-23 |
| 169 参与节点 | node/search?limit=0 |
2026-10-23 |
| 48,872,354 物种 | species/search?limit=0 |
2026-10-23 |
| 95.5% 有坐标 | has_coordinate=true 的 count / 总数 |
2026-10-23 |
| 界级分布 | kingdom_key 逐个查询 |
2026-10-23 |
| 许可分布 | facet=license |
2026-10-23 |
一个必须点明的差异:GBIF 官网首页(2026-10-23 搜索快照)写的是 3,792,419,629 条 / 123,540 数据集 / 2,761 机构,与我们 API 查到的 3,983,162,286 / 124,867 / 3,651 不一致。原因:
- 首页数字是缓存快照,可能滞后数天
- “Publishing institutions”(2,761)与我们查的
organization(3,651)口径不同:前者只算当前有在架数据集的机构,后者算全部登记机构本篇一律用 API 实时值,因为它可复现;引用首页时单独标注。
§7.3 三个必须知道的生物学效度问题
一、采样强度偏倚无法消除,只能缓解。 这不是数据缺陷,是数据的本质——出现记录只能来自"人去过的地方"。任何声称"已消除采样偏倚"的模型都在夸大。
二、近年数据的质量特征与早期完全不同。 iNaturalist 时代(2015 后)的记录多为照片验证、坐标来自手机 GPS(精度 5-10 m)、无实物凭证;博物馆时代的记录有实物凭证、坐标常为县中心点。混在一起用时必须分层,否则模型会学到"年代"而不是生物学。
三、分类学在变。 GBIF Backbone 每年更新,物种会被拆分、合并、改名。用 2020 年的分类键和 2026 年的分类键做 join,会对不上。 做长期数据集时,要么固定一个 Backbone 版本,要么做名称映射表。
§7.4 偏倚清单(可核查)
| 偏倚类型 | 证据 | 影响 |
|---|---|---|
| 采样强度偏倚 | 记录集中在城市/公路/野外站周边 | 最严重,SDM 的第一误差源 |
| 分类学偏倚 | 动物 77.3% / 真菌 1.6% / 病毒 0.0% | 冷门类群的模型不可用 |
| 记录类型偏倚 | 近年 HUMAN_OBSERVATION 激增 | 时间序列不连续 |
| 地理偏倚 | 北美/欧洲记录密度远高于非洲/南美 | 全球模型偏向温带 |
| 时间偏倚 | 2015 后记录量爆炸 | 早期记录稀疏,趋势估计不稳 |
| 观察者偏倚 | 观鸟者远多于观虫者 | 鸟类数据质量与数量都最好 |
| 语言偏倚 | 非英语国家的 locality 更难解析 |
地名标准化失败率高 |
§7.5 数据完整性核查表
- 下载 DOI 存在:没有 DOI 就不是可复现的数据集
- record 数与申请时一致:下载的 occurrence.txt 行数 = 申请返回的 count
datasetKey分布:如果集中在少数数据集,说明这个"物种数据集"其实是"某个项目数据集"basisOfRecord分布:动物/植物比例是否符合预期coordinateUncertaintyInMeters填充率:低于 30% 说明空间精度存疑license分布:商用前必查issues标记率:COORDINATE_INVALID比例超过 1% 要警惕
§7.6 DAIMS 24 项逐项评分
| # | 维度 | 评分 | 说明 |
|---|---|---|---|
| 1 | 数据集标识 | ✅ | datasetKey + 下载 DOI |
| 2 | 版本 | ✅ | 下载 DOI 指向不可变快照 |
| 3 | 标题 | ✅ | 每个数据集必有 |
| 4 | 描述 | ✅ | EML 元数据 |
| 5 | 作者/贡献者 | ✅ | recordedBy + 机构 + citation |
| 6 | 许可 | ✅ | 逐记录声明(11.9% CC0 / 71.2% BY / 16.9% NC) |
| 7 | 数据来源 | ✅ | 三级溯源到 IPT 实例 |
| 8 | 采集方法 | ⚠️ | basisOfRecord 有,但协议描述常缺 |
| 9 | 时间覆盖 | ✅ | eventDate,95.1% 有年份 |
| 10 | 地理覆盖 | ✅ | 95.5% 有坐标 |
| 11 | 物种覆盖 | ✅ | 48,872,354 个物种 |
| 12 | 变量定义 | ✅ | Darwin Core 标准 |
| 13 | 单位 | ✅ | 十进制度、ISO 日期 |
| 14 | 缺失值标记 | ✅ | 空值 + issues 双重标记 |
| 15 | 划分建议 | ❌ | 无 |
| 16 | 泄漏说明 | ❌ | 无(空间自相关需自处理) |
| 17 | 预处理记录 | ⚠️ | 分类回填有记录,其余无 |
| 18 | 测量偏倚 | ❌ | 无(采样强度偏倚需自建) |
| 19 | 外部验证 | ❌ | 无 |
| 20 | 基线模型 | ❌ | 无 |
| 21 | 评价指标 | ❌ | 无 |
| 22 | 伦理审批 | ⚠️ | 敏感物种坐标模糊化机制 |
| 23 | 个人隐私 | ✅ | 无人类个体数据;公民科学记录者有署名但可 opt-out |
| 24 | 可复现性 | ✅ | 下载 DOI 是全文最强的一项 |
合计 14.0 / 24 = 58.3%
这个分数在参考型库里并列最高(与 BV-BRC 同分 58.3%),原因很明确:GBIF 在"可复现性"这一点上做得比大多数库都好——下载 DOI 机制是为数不多的"系统级可复现"设计。但它在第 15–21 项(划分、泄漏、预处理、偏倚、验证、基线、指标)依然空白,因为档案型资源不负责这些。
与本站其他库对比:GBIF 58.3% = BV-BRC 58.3% > IMGT 52.1% > Alliance 47.9% > MGI 45.8% > ENA 43.8%。这个梯度基本反映了"离成品数据集有多远":GBIF 最接近(有 DOI 快照、有逐记录许可),ENA 最远(80 PB 无版本)。
§7.7 口径交叉核对矩阵(不是模型性能验证)
| 概念 | 口径 A(首页快照) | 口径 B(API 实时) | 该用哪一个 |
|---|---|---|---|
| 出现记录 | 3,792,419,629 | 3,983,162,286 | 用 B(可复现);引首页时标日期 |
| 数据集 | 123,540 | 124,867 | 用 B |
| 发布机构 | 2,761(当前有在架数据的) | 3,651(全部登记) | 两个都对,口径不同:讲"活跃发布方"用 2,761;讲"登记机构"用 3,651 |
| 物种数 | 首页未列 | 48,872,354(含种下单元) | 用 B;如果要"仅物种级"需另查 |
| 参与节点 | 169(首页未列) | 169 | 一致 |
第三行是这篇最需要小心的地方。“2,761” 与 “3,651” 差 890 家,不是错误——前者是"此刻有数据在架"的机构数,后者是"曾登记过"的机构数。一个机构可以登记后暂停发布。讲"GBIF 有多少家机构参与"时,两个数字都能用,但必须说明是哪个口径。
§8 生态位与相邻资源
§8.1 GBIF 在网络里的位置
GBIF 不是一个机构在维护,是169 个国家/组织节点的联合体。每个节点负责本国数据的动员(digitization + publishing),GBIF 秘书处负责标准、索引、API。
这个结构决定了数据形状:北欧国家的记录密度极高(数字化投入大),非洲与南美部分国家极少。这不是生物学差异,是数字化的历史差异。
§8.2 与本站已收条目的关系
| 本站条目 | 关系 |
|---|---|
| ENA(#133) | eDNA 场景配对:序列证据在 ENA,出现记录在 GBIF |
mgx-datasets / MGnify |
宏基因组的物种组成 → 与 GBIF 的形态学记录互为验证 |
complex-portal(#135) |
无关(蛋白复合物) |
rnacentral / rfam |
无关(非编码 RNA) |
cpic / tcmsp |
无关 |
| 疾病生态学相关(如媒介分布) | GBIF 是媒介物种分布的第一数据源 |
§8.3 为什么一个"生物库"会被医学数据集站收录
这个问题必须正面回答,否则读者会觉得收录错了。
理由是一句话:人畜共患病的风险图,第一层是动物分布。
- 蜱在不在这个县 → 莱姆病风险
- 按蚊在不在这个流域 → 疟疾风险
- 候鸟在不在这个湿地停留 → 禽流感输入风险
- 鼠密度变化 + 土地利用变化 → 汉坦病毒溢出风险
这些"动物在不在"的判断,公开数据只有 GBIF 这一份系统化的。 一个做医学 AI 的团队要做"气候变化下的传染病风险预测",绕不开 GBIF。
同时它也是一个校准样本:GBIF 让我们看到一个"格式极其规范、语义极其可疑"的库长什么样。这对理解"数据可信"这件事本身有价值。
§9 许可、伦理与合规
§9.1 三层许可结构
GBIF 的许可有三个层次,必须分清:
| 层次 | 内容 | 约束 |
|---|---|---|
| GBIF 平台本身 | 网站与 API 的使用条款 | 宽松:免费、可商用、建议署名 |
| 数据集级许可 | 每个数据集声明一个 CC 许可 | 这是有约束力的那一层 |
| 记录级许可 | 每条记录继承数据集的许可 | 实际差异在此体现(11.9% CC0 / 71.2% BY / 16.9% NC) |
正确做法:按数据集级许可处理,按记录级统计。因为许可在数据集层面声明,但同一个"物种数据集"可能跨越三种许可的数据集。
§9.2 CC BY-NC 的边界
16.9% 的记录是 CC BY-NC 4.0。"非商业"的边界在实践中很模糊:
- 学术研究:明确可以
- 企业内部研究:多数解读认为可以(不产生商业产品)
- 产品里嵌入了模型权重:多数解读认为不可以(模型是产品的一部分)
- SaaS 服务:明确不可以
保守做法:做商业产品时只用 CC0 + CC BY。
§9.3 敏感物种的坐标保护
GBIF 对濒危与敏感物种有坐标模糊化机制:
- 某些物种的精确坐标被模糊到 0.1° 或更大
- 某些记录被完全隐藏
- 机制由发布机构选择,GBIF 不强制
这意味着:同一物种在不同数据集里的空间精度可能差 100 倍。做保护规划时,如果只看精确坐标的记录,会系统性低估保护需求。
§9.4 公民科学记录的伦理
近年增长的记录主要来自公民科学,这带来两个伦理问题:
- 观察者的隐私:
recordedBy有姓名,虽然可以 opt-out,但历史记录已公开。做数据集时应考虑是否需要匿名化。 - 数据的可撤回性:iNaturalist 用户删除照片后,GBIF 的索引会更新,但已下载的副本不会。做长期数据集时要考虑这个不可撤回性。
§9.5 引用规范
正确引用方式(两层):
# 1. 引用数据(用下载 DOI)
GBIF.org (23 October 2026) GBIF Occurrence Download https://doi.org/10.15468/dl.xxxxx
# 2. 引用具体数据集(按 datasetKey 分组署名)
Gross J, Oboyski P (2026). Essig Museum of Entomology.
Version 121.465. Berkeley Natural History Museums.
Occurrence dataset https://doi.org/10.15468/0saucj
不要只写"数据来自 GBIF"——那既不满足 CC BY 的署名要求,也无法复现。
§10 复用边界与跨条目协作手册
§10.1 决策树:什么时候该用 GBIF
你要的是...
├─ 物种在某地的分布点
│ └─ 用 GBIF(+ OBIS 补海洋)
├─ 物种在某地的种群数量
│ └─ 不要用 GBIF。用专项调查(如 BBS、EBCC)
├─ 物种的 DNA 序列
│ └─ 不要用 GBIF。用 ENA / GenBank
├─ 疾病的病例数据
│ └─ 不要用 GBIF。用 WHO / CDC / 各国监测系统
├─ 疾病媒介的分布
│ └─ 用 GBIF(媒介物种)+ 专项监测数据
├─ 入侵物种的首次记录
│ └─ 用 GBIF
└─ 保护优先级排序
└─ 用 GBIF + IUCN Red List
§10.2 与 ENA 的配对(eDNA 场景)
eDNA 研究的标准链路是:
- 水/土/空气样本 → 测序 → ENA 存原始读段
- 序列比对到参考库(如 MIDORI、SILVA)→ 得到物种列表
- 物种列表 + 采样点坐标 → 与 GBIF 的形态学记录比对
第 3 步的意义:eDNA 与形态学记录如果一致,可信度大增;如果不一致(eDNA 检出但从未有人见过),可能是新分布记录,也可能是污染。两者必须配对使用,不能只看一边。
§10.3 与 OBIS 的分工(海洋场景)
海洋物种的记录在 GBIF 里覆盖偏差极大。标准做法是 OBIS + GBIF 合并:
- OBIS 的海洋覆盖更系统(专门的海洋调查计划)
- GBIF 的沿海与河口覆盖更好
- 两者都用 DwC 标准,可以按
taxonKeyjoin
注意去重:OBIS 的数据也大量同步到 GBIF,合并时要按 occurrenceID 去重。
§10.4 许可梯度:与本站其他库的对照
| 库 | 许可 | 可否商用 | 可否改作 |
|---|---|---|---|
| GBIF | 逐记录:CC0 11.9% / CC BY 71.2% / CC BY-NC 16.9% | ⚠️ 83.1% 可以 | ✅ |
| IMGT(#129) | CC BY 4.0(统一) | ✅ | ✅ |
| IPD-IMGT/HLA(#125) | CC BY-ND | ✅ | ❌ 不可改作 |
| ENA(#133) | Terms of Use,不额外限制 | ✅ | ✅ |
| MGI(#126) | CC BY 4.0(图片除外) | ✅ | ✅(图片不行) |
GBIF 是这张表里唯一"混合许可"的。其他库是"一个库一个许可",GBIF 是"一个库三种许可,逐条不同"。这在工程上是最麻烦的一种——你必须按
license字段分表,而不是按数据源分。
§10.5 三个"不要做"
一、不要把 GBIF 当"物种分布真值"。 它是"人类观察到的分布"。两者差得很远,尤其在采样稀疏地区。
二、不要用随机交叉验证报 SDM 分数。 空间自相关会让 AUC 虚高 0.1-0.2。必须空间分块。
三、不要在商用产品里混用 NC 数据。 16.9% 的记录不可商用,混进去整包都有风险。
§10.6 一句话总结
GBIF 是"人类见过什么物种、在哪里见过"的全球账本,不是"物种住在哪里"的地图。 它的价值在于时间跨度(1450 年至今)与规模(40 亿条),它的风险在于记录密度等于人类活动密度。所有从 GBIF 出发的建模工作,本质都是在回答同一个问题:怎么把"人去过的地方"和"物种在的地方"分开。答不好这个问题,模型再漂亮也是错的。
附录 A:本篇数字速查
| 问题 | 答案 |
|---|---|
| 有多少条出现记录? | 3,983,162,286 |
| 有多少个数据集? | 124,867 |
| 有多少家发布机构? | 3,651(全部登记)/ 2,761(当前有在架数据) |
| 有多少个参与节点? | 169 |
| 有多少个物种? | 48,872,354(含种下单元) |
| 有坐标的比例? | 95.5% |
| 有年份的比例? | 95.1% |
| 哪个界最多? | 动物界 77.3%,植物界 16.3% |
| 哪个界最少? | 病毒 0.0%(100,158 条) |
| 许可怎么分布? | CC BY 4.0 71.2% / CC BY-NC 16.9% / CC0 11.9% |
| 能商用吗? | 83.1% 可以(CC0 + CC BY),16.9% 不行 |
| 有版本号吗? | 无全库版本;下载 DOI 可钉住快照 |
| 有 API 吗? | 有,全开放,免费,无 key |
| 最大的坑是什么? | 采样强度偏倚——记录密度 = 人类活动密度 |
| 拿来做什么最合适? | SDM、疾病媒介分布、入侵预警、保护规划 |
附录 B:五个可复制的查询
# 1. 全库计数
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0" | jq '.count'
# 2. 物种数(注意与记录数不是一回事)
curl -s "https://api.gbif.org/v1/species/search?limit=0" | jq '.count'
# 3. 许可分布(商用前的第一步)
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0&facet=license&facetLimit=10" \
| jq -r '.facets[0].counts[] | "\(.name)\t\(.count)"'
# 4. 界级分布
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0&kingdom_key=1" | jq '.count'
# 5. 干净数据(有坐标、无空间问题、排除活体)
curl -s "https://api.gbif.org/v1/occurrence/search?limit=0&taxon_key=212&has_coordinate=true&has_geospatial_issue=false" | jq '.count'
最后更新:2026-10-23
数字口径:GBIF REST API 实时计数(2026-10-23);首页快照另标
本篇不做全量下载——40 亿条记录不是能下载的量级
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- ena — 共享标签:公共卫生与流行病学 / 基因组学与多组学 / 多模态 / 微生物组
- bv-brc — 共享标签:公共卫生与流行病学 / 基因组学与多组学 / 微生物组
- impc — 共享标签:公共卫生与流行病学 / 基因组学与多组学
- alphamissense — 共享标签:公共卫生与流行病学 / 基因组学与多组学
- gmrepo-v3 — 共享标签:公共卫生与流行病学 / 基因组学与多组学 / 微生物组
- card-db — 共享标签:公共卫生与流行病学 / 基因组学与多组学 / 微生物组
- hmp — 共享标签:基因组学与多组学 / 微生物组
- ckb — 共享标签:公共卫生与流行病学 / 基因组学与多组学
- mgnify — 共享标签:基因组学与多组学 / 微生物组
- curatedmetagenomicdata — 共享标签:基因组学与多组学 / 微生物组
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

