如何编写配置文件来告诉 AllenNLP 训练器将数据集随机拆分为训练和开发
How to write a configuration file to tell the AllenNLP trainer to randomly split dataset into train and dev
AllenNLP 的官方文档建议在配置文件中指定“validation_data_path”,但是如果想从单一来源构建数据集,然后将其随机拆分为给定的训练和验证数据集怎么办?比例?
AllenNLP 支持吗?非常感谢您的评论。
AllenNLP 尚无此功能,但我们正在努力实现这一目标。
同时,这是我为 VQAv2 reader 做的:https://github.com/allenai/allennlp-models/blob/main/allennlp_models/vision/dataset_readers/vqav2.py#L354
此 reader 支持 Python 切片语法,例如,您可以将 data_path
指定为 "my_source_file[:1000]"
以从 my_source_file
中获取前 1000 个实例.您还可以通过设置 data_path: ["file1", "file2[:1000]", "file3[1000-"]]
来提供多个路径。您可能可以窃取该文件中的前两个块(第 354 到 369 行)并将它们放入您自己的数据集 reader 以获得相同的结果。
AllenNLP 的官方文档建议在配置文件中指定“validation_data_path”,但是如果想从单一来源构建数据集,然后将其随机拆分为给定的训练和验证数据集怎么办?比例?
AllenNLP 支持吗?非常感谢您的评论。
AllenNLP 尚无此功能,但我们正在努力实现这一目标。
同时,这是我为 VQAv2 reader 做的:https://github.com/allenai/allennlp-models/blob/main/allennlp_models/vision/dataset_readers/vqav2.py#L354
此 reader 支持 Python 切片语法,例如,您可以将 data_path
指定为 "my_source_file[:1000]"
以从 my_source_file
中获取前 1000 个实例.您还可以通过设置 data_path: ["file1", "file2[:1000]", "file3[1000-"]]
来提供多个路径。您可能可以窃取该文件中的前两个块(第 354 到 369 行)并将它们放入您自己的数据集 reader 以获得相同的结果。