如何编写配置文件来告诉 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 以获得相同的结果。