在 Hugging Face Hub 上分享您的开放 ML 数据集!
如果您正在进行数据密集型研究或机器学习项目,您需要一种可靠的方式来共享和托管您的数据集。像 Common Crawl、ImageNet、Common Voice 等公共数据集对开放的机器学习生态系统至关重要,但它们的托管和共享可能具有挑战性。
Hugging Face Hub 使数据集的托管和共享变得无缝,受到许多领先研究机构、公司和政府机构的信任,包括 Nvidia、Google、Stanford、NASA、THUDM 和 Barcelona Supercomputing Center。
通过在 Hugging Face Hub 上托管数据集,您可以立即获得可最大限度地发挥工作影响的功能
慷慨的限制
支持大型数据集
Hub 可以托管 TB 级别的数据集,具有很高的每个文件和每个存储库的限制。如果您有数据要共享,Hugging Face 数据集团队可以帮助您建议最佳的数据上传格式,以供社区使用。🤗 Datasets 库使得上传和下载文件,甚至从头开始创建数据集变得容易。🤗 Datasets 还支持数据集流式传输,使得处理大型数据集无需下载整个数据集。这对于计算资源较少的研究人员处理您的数据集,或者选择大型数据集的一小部分进行测试、开发或原型设计来说,是无价的。
Hugging Face Hub 可以托管机器学习研究中经常创建的大型数据集。
注意:Xet 团队目前正在进行后端更新,将每个文件限制从当前的 50 GB 增加到 500 GB,同时提高存储和传输效率。
数据集查看器
除了托管数据,Hub 还提供强大的探索工具。借助数据集查看器,用户可以直接在浏览器中探索和交互托管在 Hub 上的数据集。这为其他人提供了一种无需先下载即可查看和探索数据的简便方法。
Hugging Face 数据集支持多种模态(音频、图像、视频等)和文件格式(CSV、JSON、Parquet 等),以及压缩格式(Gzip、Zip 等)。有关更多详细信息,请查看数据集文件格式页面。
Infinity-Instruct 数据集的数据集查看器。
数据集查看器还包含一些功能,使数据集探索更加容易。
全文搜索
内置的全文搜索是数据集查看器最强大的功能之一。数据集中的任何文本列都可以立即进行搜索。
Arxiver 数据集包含 63.4k 行转换为 Markdown 格式的 arXiv 研究论文。通过使用全文搜索,可以轻松找到包含特定作者(如 Ilya Sutskever)的论文。
排序
数据集查看器允许您通过单击列标题来对数据集进行排序。这使得在数据集中找到最相关的示例变得容易。
下面是 HelpSteer2 数据集中按 `helpfulness` 列降序排序的数据集示例。
第三方库支持
Hugging Face 很幸运能与领先的开源数据工具进行第三方集成。通过在 Hub 上托管数据集,它使数据集立即兼容用户最熟悉的工具。
以下是 Hugging Face 开箱即用支持的一些库
库 | 描述 | PyPi 月下载量 (2024) |
---|---|---|
Pandas | Python 数据分析工具包。 | 2.58 亿 |
Spark | 分布式环境中的实时、大规模数据处理工具。 | 2900 万 |
数据集 | 🤗 Datasets 是一个用于访问和共享音频、计算机视觉和自然语言处理 (NLP) 数据集的库。 | 1700 万 |
Dask | 并行分布式计算库,可扩展现有的 Python 和 PyData 生态系统。 | 1200 万 |
Polars | 基于 OLAP 查询引擎的 DataFrame 库。 | 850 万 |
DuckDB | 内存中 SQL OLAP 数据库管理系统。 | 600 万 |
WebDataset | 用于大型数据集 I/O 流水线的库。 | 87.1 万 |
Argilla | 重视高质量数据的 AI 工程师和领域专家协作工具。 | 40 万 |
这些库中的大多数都允许您用一行代码加载或流式传输数据集。
以下是 Pandas、Polars 和 DuckDB 的一些示例
# Pandas example
import pandas as pd
df = pd.read_parquet("hf://datasets/neuralwork/arxiver/data/train.parquet")
# Polars example
import polars as pl
df = pl.read_parquet("hf://datasets/neuralwork/arxiver/data/train.parquet")
# DuckDB example - SQL queries
import duckdb
duckdb.sql("SELECT * FROM 'hf://datasets/neuralwork/arxiver/data/train.parquet' LIMIT 10")
您可以在数据集文档中找到有关集成库的更多信息。除了上面列出的库,还有许多社区支持的工具支持 Hugging Face Hub,例如 Lilac 和 Spotlight。
SQL 控制台
SQL 控制台提供了一个完全在浏览器中运行的交互式 SQL 编辑器,无需任何设置即可实现即时数据探索。主要功能包括:
- 一键式:一键打开 SQL 控制台查询数据集
- 可共享和可嵌入的结果:共享和嵌入有趣的查询结果
- 完整的 DuckDB 语法:使用完整的 SQL 语法以及用于正则表达式、列表、JSON、嵌入等的内置函数
在每个公共数据集上,您都应该看到一个新的 SQL 控制台 徽章。只需单击一下,即可打开 SQL 控制台来查询该数据集。
安全
虽然数据集的可访问性很重要,但保护敏感数据也同样关键。Hugging Face Hub 提供强大的安全功能,帮助您在与合适受众共享数据时保持对数据的控制。
访问控制
Hugging Face Hub 支持针对谁有权访问数据集的独特访问控制选项。
- 公共:任何人都可以访问数据集。
- 私人:只有您和您组织中的人员可以访问数据集。
- 受限:通过两种选项控制数据集的访问权限
- 自动批准:用户必须提供所需信息(如姓名和电子邮件)并同意条款才能获得访问权限
- 手动批准:您审核并手动批准/拒绝每个访问请求
有关受限数据集的更多详细信息,请参阅受限数据集文档。对于更细粒度的控制,企业计划功能允许组织创建资源安全组、使用SSO等。
内置安全扫描
除了访问控制,Hugging Face Hub 还提供多种安全扫描器
特性 | 描述 |
---|---|
恶意软件扫描 | 每次提交和访问时扫描文件是否存在恶意软件和可疑内容 |
秘密扫描 | 阻止包含硬编码秘密和环境变量的数据集 |
Pickle 扫描 | 扫描 pickle 文件并显示 PyTorch 权重的经过验证的导入 |
ProtectAI | 使用 Guardian 技术阻止包含 pickle、Keras 和其他漏洞的数据集 |

覆盖范围和可见性
拥有一个具有强大功能的安全平台很有价值,但研究的真正影响来自于接触到正确的受众。覆盖范围和可见性对于共享数据集的研究人员至关重要——它有助于最大化研究影响,实现可复现性,促进协作,并确保有价值的数据能够造福更广泛的科学界。
Hugging Face Hub 拥有超过 500 万活跃的构建者,为研究人员提供了强大的社区参与和可见性工具。以下是您可以期待的:
更好的社区参与
- 每个数据集内置的讨论标签,促进社区参与
- 将组织作为分组和协作多个数据集的中心场所
- 数据集使用和影响的指标
更广泛的覆盖范围
- 接触广泛活跃的研究人员、开发者和实践者社区
- 优化 SEO 的 URL,使您的数据集易于发现
- 与模型、数据集和库的更广泛生态系统集成
- 您的数据集与相关模型、论文和演示之间的清晰链接
改进的文档
- 可定制的 README 文件,提供全面的文档
- 支持详细的数据集描述和适当的学术引用
- 相关研究论文和出版物的链接
Hub 使提问和讨论数据集变得容易。
如何在 Hugging Face Hub 上托管我的数据集?
现在您了解了在 Hub 上托管数据集的好处,您可能想知道如何开始。以下是一些全面的资源来指导您完成整个过程
如果您想共享大型数据集,以下页面将非常有用
- 存储库限制和建议提供了关于共享大型数据集时需要考虑的一些事项的一般指导。
- 大型上传的技巧和窍门页面提供了一些关于如何将大型数据集上传到 Hub 的指导。
如果您需要进一步帮助将数据集上传到 Hub,或者想要上传特别大的数据集,请联系datasets@huggingface.co。