談到 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