Repolode
mlcommons

mlcommons/croissant

基于 schema.org 与 JSON-LD 的机器学习数据集高层元数据格式,将文件、结构与 ML 语义统一描述在一个文件中。

Star
915
Fork
128
未关闭 Issue
226
最近提交
17天前

这是什么?

Croissant 是一种面向机器学习数据集的高层元数据格式,把四个层面整合进同一个 JSON-LD 文件:包括负责任 ML 相关信息在内的数据集元数据、原始资源文件的描述、将原始数据组织为记录和字段的结构,以及数据通常在 ML 中如何被使用的语义。它面向已有数据集,目的是让数据集更容易被查找、加载和配套工具支持。

该格式基于 schema.org 的 Dataset 词汇表扩展而来,因此 Croissant 文件可以被网络搜索引擎索引。Python 包 mlcroissant 可以从本地路径或 URL 读取 Croissant 文件、打印元数据并遍历记录。Kaggle、Hugging Face、OpenML 和 Dataverse 等平台已经提供 Croissant 元数据,TensorFlow Datasets 也提供了 CroissantBuilder 用于加载这类数据集。

规范由 MLCommons 协会数据集工作组下的任务组开发。实现与示例采用 Apache 2.0 许可证,规范文档则以 CC BY-ND 4.0 发布。

核心功能

  • 01将元数据、资源文件、记录结构和 ML 语义整合进一个 JSON-LD 文件。
  • 02基于 schema.org 的 Dataset 词汇表,使数据集保持可被网络搜索的能力。
  • 03提供 Python 包 mlcroissant,用于加载和检查 Croissant 数据集。
  • 04支持从本地文件或远程 URL 读取,包括 Hugging Face 的 API 地址。
  • 05与 TensorFlow Datasets 集成,提供 CroissantBuilder。

适用场景

  • 以标准化、机器可读的元数据发布机器学习数据集。
  • 将 Croissant 文件描述的数据集加载到 TensorFlow 或 PyTorch 流程中。
  • 通过搜索引擎和数据集目录提升数据集的可发现性。
  • 开发解析或生成通用格式数据集元数据的工具。

快速上手

  1. 1

    安装 mlcroissant Python 包(需要 Python 3.10+)

    pip install mlcroissant
  2. 2

    加载示例数据集并打印其元数据和记录

使用前须知

  • Croissant 仍由社区开发中,mlcroissant 的接口可能会变化。
  • 示例工作流中加载部分数据集需要 TensorFlow Datasets,这是额外的依赖。

标签

常见问题

croissant 是什么?
基于 schema.org 与 JSON-LD 的机器学习数据集高层元数据格式,将文件、结构与 ML 语义统一描述在一个文件中。 Croissant 是一种面向机器学习数据集的高层元数据格式,把四个层面整合进同一个 JSON-LD 文件:包括负责任 ML 相关信息在内的数据集元数据、原始资源文件的描述、将原始数据组织为记录和字段的结构,以及数据通常在 ML 中如何被使用的语义。它面向已有数据集,目的是让数据集更容易被查找、加载和配套工具支持。
croissant 可以免费使用吗?用的什么许可证?
croissant 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
croissant 还在维护吗?
活跃维护中。croissant 最近一次提交是在 2026年10月5日。
croissant 适合用来做什么?
以标准化、机器可读的元数据发布机器学习数据集。 将 Croissant 文件描述的数据集加载到 TensorFlow 或 PyTorch 流程中。 通过搜索引擎和数据集目录提升数据集的可发现性。 开发解析或生成通用格式数据集元数据的工具。
croissant 怎么安装和运行?
安装 mlcroissant Python 包(需要 Python 3.10+): pip install mlcroissant 加载示例数据集并打印其元数据和记录
在哪里获取 croissant?
源代码和安装说明在 GitHub 上:https://github.com/mlcommons/croissant

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目