全新HuggingFace数据集库发布

NLP初创公司HuggingFace近日发布新版其Datasets库v1.2,包括个文本数据集,可以下载以准备在一行python中使用;涵盖种语言,其中99种包含至少10个数据集;当使用非常大的数据集时(默认情况下是内存映射),高效的预处理可以使用户摆脱内存限制。

谈到HuggingFace,熟悉NLP的朋友们可能无人不知。

HuggingFace是一家领先的NLP创业公司,有超过一千家公司使用他们的产品库,其中包括必应,苹果,Monzo等。

它拥有一个大型的开源社区,尤其是transformers库。transformers是一个基于python的库,它公开了一个API来使用许多著名的transformer架构,如BERT、RoBERTa、GPT-2或DistilBERT等,这些架构可以获得各种NLP任务的SOTA结果,如文本分类、信息抽取、问答和文本生成。

这些架构都通过预训练得到了权重。通过pip命令即可安装:

而本次更新的datasets是一个提供两个主要特性的轻量级库:

一行程序处理:这是用于下载和预处理任何主要公共数据集的一行程序(使用种语言和方言),在HuggingFaceDatasetsHub提供。

使用一个简单的命令,比如:

squad_dataset=load_datasets(“squad”)

即可获得这些数据集中的任何一个,以便在数据采集器中用于训练/评估ML模型(Numpy/Pandas/PyTorch/TensorFlow/JAX)。

高效的数据预处理:简单、快速、可复制的数据数据预处理,可用于上述公共数据集以及用CSV/JSON/text编写的本地数据集。使用简单的命令,比如:tokenized_dataset=dataset.map(tokenize_exemple),,可以有效地准备数据集进行检验和ML模型评估和训练。

Datasets还提供了15个以上的评价指标,旨在让社区容易地添加和共享新的数据集和评价指标。

Datasets还有许多其他有趣的特性:

将用户从RAM内存限制中释放出来,所有数据集都使用一个有效的零序列化开销后端(ApacheArrow)进行内存映射;

智能缓存:永远无需等待数据被多次处理;

使用透明和pythonicAPI(多处理/缓存/内存映射)实现轻量级和快速;

与NumPy、pandas、PyTorch、Tensorflow2和JAX的内置互操作性。

安装和用法

datasets可以从PyPi安装,而且必须在虚拟环境中安装(例如venv或conda):

pipinstalldatasets

如果想要将Datasets与PyTorch(1.0+)、TensorFlow(2.2+)或Pandas等一起使用,还应该安装对应版本的框架和库。

Datasets使用起来非常简单,其中主要的方法有:

1.datasets.list_datasets()列出可用的数据集

2.datasets.load_dataset(dataset_name,**kwargs)实例化一个数据集

3.datasets.list_metrics()列出可用的指标

4.datasets.load_metric(metric_name,**kwargs)实例化一个指标

举一个简单的例子:

更多详细信息,可以查看文档中的快速浏览页面:




转载请注明:http://www.aierlanlan.com/rzgz/5039.html