配置HF镜像
注意:如果无法访问HuggingFace可以访问它的国内镜像站,方法如下:
先安装依赖:
pip install -U huggingface_hub
然后在代码的头部加入下面的环境变量设置,记得一定要加载代码的最前面,在import datastes之前。
import os
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'
加载数据
HuggingFace对于AI模型训练所需要的数据集进行了规范并且提供了数据加载的工具,对模型的迁移的微调都带来了很大的方便。
比如下面的代码是加载HF上的一个别人已经训练好的数据的数据集:
from datasets import load_dataset
ds = load_dataset("whalning/Chinese-disease-question-classification")
这个数据集位于:
https://hf-mirror.com/datasets/whalning/Chinese-disease-question-classification
接下来可以打印一下,观察数据集的结构
print(ds)
输出结果如下:
DatasetDict({
train: Dataset({
features: ['text', 'label'],
num_rows: 32000
})
})
从中可以看出,这个数据集包含 text和label两列,共有32000条数据。
我们在训练模型时,可以对数据进行打乱和选取部分的操作。比如下面这样:
# 'train'代表
train_ds = ds["train"].shuffle().select(range(2000))
print(train_ds)
其中:
- train:代表取出train数据集
- shuffle(): 代表对数据进行打乱,这样有利于训练提升准确度
- select:代表选择的数据量。
输出结果如下:
Dataset({
features: ['text', 'label'],
num_rows: 2000
})
我们也可以通过将HF上的数据保存到本地磁盘,这样就不用每次都联机加载。
ds = load_dataset("whalning/Chinese-disease-question-classification")
ds.save_to_disk("data")
由于我们有时候得到的数据集没有validation和test数据集,所以我们可以从train数据集中取出一部分当作这两个集合的数据。比如:
# 从本机已经下载的磁盘路径加载数据
dataset=load_dataset(path="./data/")
print(dataset)
# 取出 3000 个数据作为训练集合
dataset["train"]=dataset["train"].shuffle().select(range(3000))
# 取出 500 个数据作为测试集合
dataset["test"]=dataset["train"].shuffle().select(range(500))
标签:HuggingFace,dataset,train,关于,数据,ds,加载
From: https://www.cnblogs.com/imeric/p/18526737/guan-yuhuggingface-shu-ju-de-jia-zai