谈到 Hugging Face,熟悉NLP的朋友们可能无人不知。
Hugging Face是一家领先的 NLP 创业公司,有超过一千家公司使用他们的产品库,其中包括必应,苹果,Monzo等。
它拥有一个大型的开源社区,尤其是transformers库。
transformers 是一个基于 python 的库,它公开了一个 API 来使用许多著名的transformer架构,如 BERT、 RoBERTa、 GPT-2或 DistilBERT等,这些架构可以获得各种 NLP 任务的SOTA结果,如文本分类、信息抽取、问答和文本生成。
这些架构都通过预训练得到了权重。通过pip命令即可安装:
而本次更新的datasets是一个提供两个主要特性的轻量级库:
一行程序处理: 这是用于下载和预处理任何主要公共数据集的一行程序(使用467种语言和方言),在HuggingFace Datasets Hub提供。
使用一个简单的命令,比如:
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 内存限制中释放出来,所有数据集都使用一个有效的零序列化开销后端(Apache Arrow)进行内存映射; 智能缓存: 永远无需等待数据被多次处理; 使用透明和 pythonic API (多处理/缓存/内存映射)实现轻量级和快速; 与 NumPy、 pandas、 PyTorch、 Tensorflow 2和 JAX 的内置互操作性。
安装和用法
datasets可以从 PyPi 安装,而且必须在虚拟环境中安装(例如 venv 或 conda):
pip install datasets
如果想要将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)实例化一个指标
举一个简单的例子:
更多详细信息,可以查看文档中的快速浏览页面:https://huggingface.co/docs/datasets/quicktour.html