1.加载自定义数据
load_dataset有以下参数,具体可参考 源码
def load_dataset(
path: str,
name: Optional[str] = None,
data_dir: Optional[str] = None,
data_files: Union[Dict, List] = None,
split: Optional[Union[str, Split]] = None,
cache_dir: Optional[str] = None,
features: Optional[Features] = None,
download_config: Optional[DownloadConfig] = None,
download_mode: Optional[GenerateMode] = None,
ignore_verifications: bool = False,
save_infos: bool = False,
script_version: Optional[Union[str, Version]] = None,
**config_kwargs,
) -> Union[DatasetDict, Dataset]:
path
:参数path表示数据集的名字或者路径。可以是如下几种形式(每种形式的使用方式后面会详细说明)- 数据集的名字,比如imdb、glue
- 数据集文件格式,比如json、csv、parquet、txt
- 数据集目录中的处理数据集的脚本(.py)文件,比如“glue/glue.py”
name
:参数name表示数据集中的子数据集,当一个数据集包含多个数据集时,就需要这个参数,比如glue数据集下就包含"sst2"、“cola”、"qqp"等多个子数据集,此时就需要指定name来表示加载哪一个子数据集data_dir
:数据集所在的目录data_files
:数据集文件cache_dir
:构建的数据集缓存目录,方便下次快速加载
2.划分训练集、测试集
3.加载&划分csv
# 加载csv数据-示例
from datasets import load_dataset
# 加载
local_csv_dataset = load_dataset("csv",data_files="./dataset/winequality-white.csv",sep=';')
local_csv_dataset
- 分割方式1,split="train[:80%]
# 分割方式1
local_csv_dataset = load_dataset("csv",data_files="./dataset/winequality-white.csv",sep=';',split="train[:80%]")
local_csv_dataset
- 分割方式2,先
split="train"
,再train_test_split(test_size=0.1)
注意:load_dataset时一定要加split="train"
,否则会报错AttributeError: 'DatasetDict' object has no attribute 'train_test_split'
# 分割方式2
local_csv_dataset = load_dataset("csv",data_files="./dataset/winequality-white.csv",sep=';',split="train")
dataset = local_csv_dataset.train_test_split(test_size=0.1)
dataset
提供一个winequality-white.csv的示例样本,长度100,在文章最后
4.加载&划分图片img数据集
下载好的图片,文件名即类别名,按文件夹存放,我的文件结构如下:
使用方法:load_dataset()
- path:用imagefolder方式
- data_dir:数据集目录,可以是划分好的train和test;也可以是一个训练目录,下面有类别的目录和文件就行,再进行划分
【法1】load划分好的train和test,data_dir写到cat_vs_dog
# 加载csv数据-示例
from datasets import load_dataset
cat_dog_dataset = load_dataset(path="imagefolder",data_dir="huggingface/cat_vs_dog/")
cat_dog_dataset
【法2】load一个训练目录,我的train下放了cat和dog文件夹
# 加载csv数据-示例
from datasets import load_dataset
cat_dog_dataset2 = load_dataset(path="imagefolder",data_dir="huggingface/cat_vs_dog/train/",split="train")
cat_dog_dataset2
# 划分数据集
cat_dog_dataset2 = cat_dog_dataset2.train_test_split(test_size=0.1)
cat_dog_dataset2
4.1 查看单张图片&标签
# 查看单张图片
image = cat_dog_dataset2['train']["image"][0]
label = cat_dog_dataset2['train']["label"][0]
print('label:',label)
image
4.2 图片转tensor
# 图片转tensor
from torchvision import transforms
image = cat_dog_dataset2['train']["image"][0]
img_tensor = transforms.ToTensor()(image)
img_tensor
附件
winequality-white.csv的示例样本,长度100,原数据4898行,原链接
"fixed acidity";"volatile acidity";"citric acid";"residual sugar";"chlorides";"free sulfur dioxide";"total sulfur dioxide";"density";"pH";"sulphates";"alcohol";"quality"
7;0.27;0.36;20.7;0.045;45;170;1.001;3;0.45;8.8;6
6.3;0.3;0.34;1.6;0.049;14;132;0.994;3.3;0.49;9.5;6
8.1;0.28;0.4;6.9;0.05;30;97;0.9951;3.26;0.44;10.1;6
7.2;0.23;0.32;8.5;0.058;47;186;0.9956;3.19;0.4;9.9;6
7.2;0.23;0.32;8.5;0.058;47;186;0.9956;3.19;0.4;9.9;6
8.1;0.28;0.4;6.9;0.05;30;97;0.9951;3.26;0.44;10.1;6
6.2;0.32;0.16;7;0.045;30;136;0.9949;3.18;0.47;9.6;6
7;0.27;0.36;20.7;0.045;45;170;1.001;3;0.45;8.8;6
6.3;0.3;0.34;1.6;0.049;14;132;0.994;3.3;0.49;9.5;6
8.1;0.22;0.43;1.5;0.044;28;129;0.9938;3.22;0.45;11;6
8.1;0.27;0.41;1.45;0.033;11;63;0.9908;2.99;0.56;12;5
8.6;0.23;0.4;4.2;0.035;17;109;0.9947;3.14;0.53;9.7;5
7.9;0.18;0.37;1.2;0.04;16;75;0.992;3.18;0.63;10.8;5
6.6;0.16;0.4;1.5;0.044;48;143;0.9912;3.54;0.52;12.4;7
8.3;0.42;0.62;19.25;0.04;41;172;1.0002;2.98;0.67;9.7;5
6.6;0.17;0.38;1.5;0.032;28;112;0.9914;3.25;0.55;11.4;7
6.3;0.48;0.04;1.1;0.046;30;99;0.9928;3.24;0.36;9.6;6
6.2;0.66;0.48;1.2;0.029;29;75;0.9892;3.33;0.39;12.8;8
7.4;0.34;0.42;1.1;0.033;17;171;0.9917;3.12;0.53;11.3;6
6.5;0.31;0.14;7.5;0.044;34;133;0.9955;3.22;0.5;9.5;5
6.2;0.66;0.48;1.2;0.029;29;75;0.9892;3.33;0.39;12.8;8
6.4;0.31;0.38;2.9;0.038;19;102;0.9912;3.17;0.35;11;7
6.8;0.26;0.42;1.7;0.049;41;122;0.993;3.47;0.48;10.5;8
7.6;0.67;0.14;1.5;0.074;25;168;0.9937;3.05;0.51;9.3;5
6.6;0.27;0.41;1.3;0.052;16;142;0.9951;3.42;0.47;10;6
7;0.25;0.32;9;0.046;56;245;0.9955;3.25;0.5;10.4;6
6.9;0.24;0.35;1;0.052;35;146;0.993;3.45;0.44;10;6
7;0.28;0.39;8.7;0.051;32;141;0.9961;3.38;0.53;10.5;6
7.4;0.27;0.48;1.1;0.047;17;132;0.9914;3.19;0.49;11.6;6
7.2;0.32;0.36;2;0.033;37;114;0.9906;3.1;0.71;12.3;7
8.5;0.24;0.39;10.4;0.044;20;142;0.9974;3.2;0.53;10;6
8.3;0.14;0.34;1.1;0.042;7;47;0.9934;3.47;0.4;10.2;6
7.4;0.25;0.36;2.05;0.05;31;100;0.992;3.19;0.44;10.8;6
6.2;0.12;0.34;1.5;0.045;43;117;0.9939;3.42;0.51;9;6
5.8;0.27;0.2;14.95;0.044;22;179;0.9962;3.37;0.37;10.2;5
7.3;0.28;0.43;1.7;0.08;21;123;0.9905;3.19;0.42;12.8;5
6.5;0.39;0.23;5.4;0.051;25;149;0.9934;3.24;0.35;10;5
7;0.33;0.32;1.2;0.053;38;138;0.9906;3.13;0.28;11.2;6
7.3;0.24;0.39;17.95;0.057;45;149;0.9999;3.21;0.36;8.6;5
7.3;0.24;0.39;17.95;0.057;45;149;0.9999;3.21;0.36;8.6;5
6.7;0.23;0.39;2.5;0.172;63;158;0.9937;3.11;0.36;9.4;6
6.7;0.24;0.39;2.9;0.173;63;157;0.9937;3.1;0.34;9.4;6
7;0.31;0.26;7.4;0.069;28;160;0.9954;3.13;0.46;9.8;6
6.6;0.24;0.27;1.4;0.057;33;152;0.9934;3.22;0.56;9.5;6
6.7;0.23;0.26;1.4;0.06;33;154;0.9934;3.24;0.56;9.5;6
7.4;0.18;0.31;1.4;0.058;38;167;0.9931;3.16;0.53;10;7
6.2;0.45;0.26;4.4;0.063;63;206;0.994;3.27;0.52;9.8;4
6.2;0.46;0.25;4.4;0.066;62;207;0.9939;3.25;0.52;9.8;5
7;0.31;0.26;7.4;0.069;28;160;0.9954;3.13;0.46;9.8;6
6.9;0.19;0.35;5;0.067;32;150;0.995;3.36;0.48;9.8;5
7.2;0.19;0.31;1.6;0.062;31;173;0.9917;3.35;0.44;11.7;6
6.6;0.25;0.29;1.1;0.068;39;124;0.9914;3.34;0.58;11;7
6.2;0.16;0.33;1.1;0.057;21;82;0.991;3.32;0.46;10.9;7
6.4;0.18;0.35;1;0.045;39;108;0.9911;3.31;0.35;10.9;6
6.8;0.2;0.59;0.9;0.147;38;132;0.993;3.05;0.38;9.1;6
6.9;0.25;0.35;1.3;0.039;29;191;0.9908;3.13;0.52;11;6
7.2;0.21;0.34;11.9;0.043;37;213;0.9962;3.09;0.5;9.6;6
6;0.19;0.26;12.4;0.048;50;147;0.9972;3.3;0.36;8.9;6
6.6;0.38;0.15;4.6;0.044;25;78;0.9931;3.11;0.38;10.2;6
7.4;0.2;0.36;1.2;0.038;44;111;0.9926;3.36;0.34;9.9;6
6.8;0.22;0.24;4.9;0.092;30;123;0.9951;3.03;0.46;8.6;6
6;0.19;0.26;12.4;0.048;50;147;0.9972;3.3;0.36;8.9;6
7;0.47;0.07;1.1;0.035;17;151;0.991;3.02;0.34;10.5;5
6.6;0.38;0.15;4.6;0.044;25;78;0.9931;3.11;0.38;10.2;6
7.2;0.24;0.27;1.4;0.038;31;122;0.9927;3.15;0.46;10.3;6
6.2;0.35;0.03;1.2;0.064;29;120;0.9934;3.22;0.54;9.1;5
6.4;0.26;0.24;6.4;0.04;27;124;0.9903;3.22;0.49;12.6;7
6.7;0.25;0.13;1.2;0.041;81;174;0.992;3.14;0.42;9.8;5
6.7;0.23;0.31;2.1;0.046;30;96;0.9926;3.33;0.64;10.7;8
7.4;0.24;0.29;10.1;0.05;21;105;0.9962;3.13;0.35;9.5;5
6.2;0.27;0.43;7.8;0.056;48;244;0.9956;3.1;0.51;9;6
6.8;0.3;0.23;4.6;0.061;50.5;238.5;0.9958;3.32;0.6;9.5;5
6;0.27;0.28;4.8;0.063;31;201;0.9964;3.69;0.71;10;5
8.6;0.23;0.46;1;0.054;9;72;0.9941;2.95;0.49;9.1;6
6.7;0.23;0.31;2.1;0.046;30;96;0.9926;3.33;0.64;10.7;8
7.4;0.24;0.29;10.1;0.05;21;105;0.9962;3.13;0.35;9.5;5
7.1;0.18;0.36;1.4;0.043;31;87;0.9898;3.26;0.37;12.7;7
7;0.32;0.34;1.3;0.042;20;69;0.9912;3.31;0.65;12;7
7.4;0.18;0.3;8.8;0.064;26;103;0.9961;2.94;0.56;9.3;5
6.7;0.54;0.28;5.4;0.06;21;105;0.9949;3.27;0.37;9;5
6.8;0.22;0.31;1.4;0.053;34;114;0.9929;3.39;0.77;10.6;6
7.1;0.2;0.34;16;0.05;51;166;0.9985;3.21;0.6;9.2;6
7.1;0.34;0.2;6.1;0.063;47;164;0.9946;3.17;0.42;10;5
7.3;0.22;0.3;8.2;0.047;42;207;0.9966;3.33;0.46;9.5;6
7.1;0.43;0.61;11.8;0.045;54;155;0.9974;3.11;0.45;8.7;5
7.1;0.44;0.62;11.8;0.044;52;152;0.9975;3.12;0.46;8.7;6
7.2;0.39;0.63;11;0.044;55;156;0.9974;3.09;0.44;8.7;6
6.8;0.25;0.31;13.3;0.05;69;202;0.9972;3.22;0.48;9.7;6
7.1;0.43;0.61;11.8;0.045;54;155;0.9974;3.11;0.45;8.7;5
7.1;0.44;0.62;11.8;0.044;52;152;0.9975;3.12;0.46;8.7;6
7.2;0.39;0.63;11;0.044;55;156;0.9974;3.09;0.44;8.7;6
6.1;0.27;0.43;7.5;0.049;65;243;0.9957;3.12;0.47;9;5
6.9;0.24;0.33;1.7;0.035;47;136;0.99;3.26;0.4;12.6;7
6.9;0.21;0.33;1.8;0.034;48;136;0.9899;3.25;0.41;12.6;7
7.5;0.17;0.32;1.7;0.04;51;148;0.9916;3.21;0.44;11.5;7
7.1;0.26;0.29;12.4;0.044;62;240;0.9969;3.04;0.42;9.2;6
6;0.34;0.66;15.9;0.046;26;164;0.9979;3.14;0.5;8.8;6
8.6;0.265;0.36;1.2;0.034;15;80;0.9913;2.95;0.36;11.4;7
9.8;0.36;0.46;10.5;0.038;4;83;0.9956;2.89;0.3;10.1;4
6;0.34;0.66;15.9;0.046;26;164;0.9979;3.14;0.5;8.8;6