From 0ef4b5e0d40697fac83d52c8e7ba0c015eeaa589 Mon Sep 17 00:00:00 2001 From: Alessandro Suglia Date: Wed, 21 Oct 2020 08:53:49 +0200 Subject: [PATCH] New version of CompGuessWhat?! with refined annotations --- CONTRIBUTING.md | 2 +- datasets/compguesswhat/compguesswhat.py | 33 +- datasets/compguesswhat/create_dummy_data.py | 9 +- datasets/compguesswhat/dataset_infos.json | 397 +----------------- .../0.2.0/dummy_data.zip | Bin 0 -> 26133 bytes .../0.2.0/dummy_data.zip | Bin 0 -> 7306 bytes 6 files changed, 37 insertions(+), 404 deletions(-) create mode 100644 datasets/compguesswhat/dummy/compguesswhat-original/0.2.0/dummy_data.zip create mode 100644 datasets/compguesswhat/dummy/compguesswhat-zero_shot/0.2.0/dummy_data.zip diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b9e22aa5127..46fc51babb7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -86,7 +86,7 @@ *For the dummy data*: ```bash - RUN_SLOW=1 pytest tests/test_dataset_common.py::LocalDatasetTest::test_load_dataset_all_configs_ + RUN_SLOW=0 pytest tests/test_dataset_common.py::LocalDatasetTest::test_load_dataset_all_configs_ ``` 6. If all tests pass, your dataset works correctly. Awesome! You can now follow steps 6, 7 and 8 of the section [*How to contribute to 🤗Datasets?*](#how-to-contribute-to-🤗Datasets). If you experience problems with the dummy data tests, you might want to take a look at the section *Help for dummy data tests* below. diff --git a/datasets/compguesswhat/compguesswhat.py b/datasets/compguesswhat/compguesswhat.py index 87f3e82522d..13165b2e28b 100644 --- a/datasets/compguesswhat/compguesswhat.py +++ b/datasets/compguesswhat/compguesswhat.py @@ -19,7 +19,7 @@ def __init__(self, data_url, splits, gameplay_scenario, **kwargs): **kwargs: keyword arguments forwarded to super. """ super(CompguesswhatConfig, self).__init__( - version=datasets.Version("0.1.0", "First CompGuessWhat?! release"), **kwargs + version=datasets.Version("0.2.0", "Second CompGuessWhat?! release"), **kwargs ) assert gameplay_scenario in ( "original", @@ -73,7 +73,7 @@ class Compguesswhat(datasets.GeneratorBasedBuilder): ), ] - VERSION = datasets.Version("0.1.0") + VERSION = datasets.Version("0.2.0") def _info(self): if self.config.gameplay_scenario == "original": @@ -88,14 +88,27 @@ def _info(self): "timestamp": datasets.Value("string"), "status": datasets.Value("string"), "image": { + # this is the image ID in GuessWhat?! which corresponds to the MSCOCO id "id": datasets.Value("int32"), "file_name": datasets.Value("string"), "flickr_url": datasets.Value("string"), "coco_url": datasets.Value("string"), "height": datasets.Value("int32"), "width": datasets.Value("int32"), - "vg_id": datasets.Value("int32"), - "vg_url": datasets.Value("string"), + # this field represents the corresponding image metadata that can be found in VisualGenome + # in the file image_data.json + # We copy it over so that we avoid any confusion or possible wrong URL + # Please use the original image files to resolve photos + "visual_genome": { + "width": datasets.Value("int32"), + "height": datasets.Value("int32"), + "url": datasets.Value("string"), + "coco_id": datasets.Value("int32"), + # this is the actual VisualGenome image ID + # because we can't rely store it as an integer we same it as string + "flickr_id": datasets.Value("string"), + "image_id": datasets.Value("string"), + }, }, "qas": datasets.features.Sequence( { @@ -203,7 +216,12 @@ def _split_generators(self, dl_manager): datasets.SplitGenerator( name=split_name, gen_kwargs={ - "filepath": os.path.join(dl_dir, full_split_name, self.VERSION.version_str, split_filename) + "filepath": os.path.join( + dl_dir, + full_split_name, + self.VERSION.version_str, + split_filename, + ) }, ) ) @@ -224,6 +242,11 @@ def _extract_game_tuple(data): del game["questioner_id"] ### + if "visual_genome" in game["image"]: + # We need to cast it to string so that we avoid issues with int size + game["image"]["visual_genome"]["image_id"] = str(game["image"]["visual_genome"]["image_id"]) + game["image"]["visual_genome"]["flickr_id"] = str(game["image"]["visual_genome"]["flickr_id"]) + return game["id"], game """Yields examples.""" diff --git a/datasets/compguesswhat/create_dummy_data.py b/datasets/compguesswhat/create_dummy_data.py index 52ec9a4a716..e60669e12f4 100644 --- a/datasets/compguesswhat/create_dummy_data.py +++ b/datasets/compguesswhat/create_dummy_data.py @@ -12,7 +12,12 @@ required=True, help="Data path containing the CompGuessWhat?! datasets (files with 'jsonl.gz' extension)", ) -parser.add_argument("--examples", type=int, default=5, help="Number of games to consider in the dummy dataset") +parser.add_argument( + "--examples", + type=int, + default=5, + help="Number of games to consider in the dummy dataset", +) original_data_files = { "train": "compguesswhat.train.jsonl.gz", "valid": "compguesswhat.valid.jsonl.gz", @@ -74,7 +79,7 @@ def main(args): with open(dataset_info_path, encoding="utf-8") as in_file: dataset_info = json.load(in_file) - dataset_version = dataset_info["default"]["version"]["version_str"] + dataset_version = dataset_info["compguesswhat-original"]["version"]["version_str"] print(f"Creating dummy data for CompGuessWhat?! {dataset_version}") diff --git a/datasets/compguesswhat/dataset_infos.json b/datasets/compguesswhat/dataset_infos.json index 2fed1a5e329..16419fb8b4b 100644 --- a/datasets/compguesswhat/dataset_infos.json +++ b/datasets/compguesswhat/dataset_infos.json @@ -1,396 +1 @@ -{ - "compguesswhat-original": { - "description": "\n CompGuessWhat?! is an instance of a multi-task framework for evaluating the quality of learned neural representations,\n in particular concerning attribute grounding. Use this dataset if you want to use the set of games whose reference\n scene is an image in VisualGenome. Visit the website for more details: https://compguesswhat.github.io\n ", - "citation": " @inproceedings{suglia2020compguesswhat,\n title={CompGuessWhat?!: a Multi-task Evaluation Framework for Grounded Language Learning},\n author={Suglia, Alessandro, Konstas, Ioannis, Vanzo, Andrea, Bastianelli, Emanuele, Desmond Elliott, Stella Frank and Oliver Lemon},\n booktitle={Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics},\n year={2020}\n }\n ", - "homepage": "https://compguesswhat.github.io/", - "license": "", - "features": { - "id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "target_id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "timestamp": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "status": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "image": { - "id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "file_name": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "flickr_url": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "coco_url": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "height": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "width": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "vg_id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "vg_url": { - "dtype": "string", - "id": null, - "_type": "Value" - } - }, - "qas": { - "feature": { - "question": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "answer": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "id": { - "dtype": "int32", - "id": null, - "_type": "Value" - } - }, - "length": -1, - "id": null, - "_type": "Sequence" - }, - "objects": { - "feature": { - "id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "bbox": { - "feature": { - "dtype": "float32", - "id": null, - "_type": "Value" - }, - "length": 4, - "id": null, - "_type": "Sequence" - }, - "category": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "area": { - "dtype": "float32", - "id": null, - "_type": "Value" - }, - "category_id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "segment": { - "feature": { - "feature": { - "dtype": "float32", - "id": null, - "_type": "Value" - }, - "length": -1, - "id": null, - "_type": "Sequence" - }, - "length": -1, - "id": null, - "_type": "Sequence" - } - }, - "length": -1, - "id": null, - "_type": "Sequence" - } - }, - "supervised_keys": null, - "builder_name": "compguesswhat", - "config_name": "compguesswhat-original", - "version": { - "version_str": "0.1.0", - "description": "First CompGuessWhat?! release", - "datasets_version_to_prepare": null, - "major": 0, - "minor": 1, - "patch": 0 - }, - "splits": { - "train": { - "name": "train", - "num_bytes": 125184123, - "num_examples": 46277, - "dataset_name": "compguesswhat" - }, - "validation": { - "name": "validation", - "num_bytes": 25732027, - "num_examples": 9716, - "dataset_name": "compguesswhat" - }, - "test": { - "name": "test", - "num_bytes": 25729944, - "num_examples": 9619, - "dataset_name": "compguesswhat" - } - }, - "download_checksums": { - "https://www.dropbox.com/s/l0nc13udml6vs0w/compguesswhat-original.zip?dl=1": { - "num_bytes": 106008376, - "checksum": "a75567d024fd3992ee5d4d370db7b6d071384c89a0a76ec9c94bc0f4968a54fe" - } - }, - "download_size": 106008376, - "dataset_size": 176646094, - "size_in_bytes": 282654470 - }, - "compguesswhat-zero_shot": { - "description": "\n CompGuessWhat?! is an instance of a multi-task framework for evaluating the quality of learned neural representations,\n in particular concerning attribute grounding. Use this dataset if you want to use the set of games whose reference\n scene is an image in VisualGenome. Visit the website for more details: https://compguesswhat.github.io\n ", - "citation": " @inproceedings{suglia2020compguesswhat,\n title={CompGuessWhat?!: a Multi-task Evaluation Framework for Grounded Language Learning},\n author={Suglia, Alessandro, Konstas, Ioannis, Vanzo, Andrea, Bastianelli, Emanuele, Desmond Elliott, Stella Frank and Oliver Lemon},\n booktitle={Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics},\n year={2020}\n }\n ", - "homepage": "https://compguesswhat.github.io/", - "license": "", - "features": { - "id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "target_id": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "status": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "image": { - "id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "file_name": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "coco_url": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "height": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "width": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "license": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "open_images_id": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "date_captured": { - "dtype": "string", - "id": null, - "_type": "Value" - } - }, - "objects": { - "feature": { - "id": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "bbox": { - "feature": { - "dtype": "float32", - "id": null, - "_type": "Value" - }, - "length": 4, - "id": null, - "_type": "Sequence" - }, - "category": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "area": { - "dtype": "float32", - "id": null, - "_type": "Value" - }, - "category_id": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "IsOccluded": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "IsTruncated": { - "dtype": "int32", - "id": null, - "_type": "Value" - }, - "segment": { - "feature": { - "MaskPath": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "LabelName": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "BoxID": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "BoxXMin": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "BoxXMax": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "BoxYMin": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "BoxYMax": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "PredictedIoU": { - "dtype": "string", - "id": null, - "_type": "Value" - }, - "Clicks": { - "dtype": "string", - "id": null, - "_type": "Value" - } - }, - "length": -1, - "id": null, - "_type": "Sequence" - } - }, - "length": -1, - "id": null, - "_type": "Sequence" - } - }, - "supervised_keys": null, - "builder_name": "compguesswhat", - "config_name": "compguesswhat-zero_shot", - "version": { - "version_str": "0.1.0", - "description": "First CompGuessWhat?! release", - "datasets_version_to_prepare": null, - "major": 0, - "minor": 1, - "patch": 0 - }, - "splits": { - "nd_valid": { - "name": "nd_valid", - "num_bytes": 13697867, - "num_examples": 5343, - "dataset_name": "compguesswhat" - }, - "nd_test": { - "name": "nd_test", - "num_bytes": 36729751, - "num_examples": 13836, - "dataset_name": "compguesswhat" - }, - "od_valid": { - "name": "od_valid", - "num_bytes": 14235784, - "num_examples": 5372, - "dataset_name": "compguesswhat" - }, - "od_test": { - "name": "od_test", - "num_bytes": 33384663, - "num_examples": 13300, - "dataset_name": "compguesswhat" - } - }, - "download_checksums": { - "https://www.dropbox.com/s/gd46azul7o7iip4/compguesswhat-zero_shot.zip?dl=1": { - "num_bytes": 10076701, - "checksum": "38a2fb6e51d6f2f5e3eed9ff6cb6275b0eb29db18d95a562acdd0fc44801bac7" - } - }, - "download_size": 10076701, - "dataset_size": 98048065, - "size_in_bytes": 108124766 - } -} \ No newline at end of file +{"compguesswhat-original": {"description": "\n CompGuessWhat?! is an instance of a multi-task framework for evaluating the quality of learned neural representations,\n in particular concerning attribute grounding. Use this dataset if you want to use the set of games whose reference\n scene is an image in VisualGenome. Visit the website for more details: https://compguesswhat.github.io\n ", "citation": " @inproceedings{suglia2020compguesswhat,\n title={CompGuessWhat?!: a Multi-task Evaluation Framework for Grounded Language Learning},\n author={Suglia, Alessandro, Konstas, Ioannis, Vanzo, Andrea, Bastianelli, Emanuele, Desmond Elliott, Stella Frank and Oliver Lemon},\n booktitle={Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics},\n year={2020}\n }\n ", "homepage": "https://compguesswhat.github.io/", "license": "", "features": {"id": {"dtype": "int32", "id": null, "_type": "Value"}, "target_id": {"dtype": "int32", "id": null, "_type": "Value"}, "timestamp": {"dtype": "string", "id": null, "_type": "Value"}, "status": {"dtype": "string", "id": null, "_type": "Value"}, "image": {"id": {"dtype": "int32", "id": null, "_type": "Value"}, "file_name": {"dtype": "string", "id": null, "_type": "Value"}, "flickr_url": {"dtype": "string", "id": null, "_type": "Value"}, "coco_url": {"dtype": "string", "id": null, "_type": "Value"}, "height": {"dtype": "int32", "id": null, "_type": "Value"}, "width": {"dtype": "int32", "id": null, "_type": "Value"}, "visual_genome": {"width": {"dtype": "int32", "id": null, "_type": "Value"}, "height": {"dtype": "int32", "id": null, "_type": "Value"}, "url": {"dtype": "string", "id": null, "_type": "Value"}, "coco_id": {"dtype": "int32", "id": null, "_type": "Value"}, "flickr_id": {"dtype": "string", "id": null, "_type": "Value"}, "image_id": {"dtype": "string", "id": null, "_type": "Value"}}}, "qas": {"feature": {"question": {"dtype": "string", "id": null, "_type": "Value"}, "answer": {"dtype": "string", "id": null, "_type": "Value"}, "id": {"dtype": "int32", "id": null, "_type": "Value"}}, "length": -1, "id": null, "_type": "Sequence"}, "objects": {"feature": {"id": {"dtype": "int32", "id": null, "_type": "Value"}, "bbox": {"feature": {"dtype": "float32", "id": null, "_type": "Value"}, "length": 4, "id": null, "_type": "Sequence"}, "category": {"dtype": "string", "id": null, "_type": "Value"}, "area": {"dtype": "float32", "id": null, "_type": "Value"}, "category_id": {"dtype": "int32", "id": null, "_type": "Value"}, "segment": {"feature": {"feature": {"dtype": "float32", "id": null, "_type": "Value"}, "length": -1, "id": null, "_type": "Sequence"}, "length": -1, "id": null, "_type": "Sequence"}}, "length": -1, "id": null, "_type": "Sequence"}}, "post_processed": null, "supervised_keys": null, "builder_name": "compguesswhat", "config_name": "compguesswhat-original", "version": {"version_str": "0.2.0", "description": "Second CompGuessWhat?! release", "major": 0, "minor": 2, "patch": 0}, "splits": {"train": {"name": "train", "num_bytes": 123557020, "num_examples": 46341, "dataset_name": "compguesswhat"}, "validation": {"name": "validation", "num_bytes": 25441516, "num_examples": 9738, "dataset_name": "compguesswhat"}, "test": {"name": "test", "num_bytes": 25369315, "num_examples": 9621, "dataset_name": "compguesswhat"}}, "download_checksums": {"https://www.dropbox.com/s/l0nc13udml6vs0w/compguesswhat-original.zip?dl=1": {"num_bytes": 107201655, "checksum": "f965b469142cf65635b2b8b309ba2b28539fd7ad40039b11856cd662f2b000c1"}}, "download_size": 107201655, "post_processing_size": null, "dataset_size": 174367851, "size_in_bytes": 281569506}, "compguesswhat-zero_shot": {"description": "\n CompGuessWhat?! is an instance of a multi-task framework for evaluating the quality of learned neural representations,\n in particular concerning attribute grounding. Use this dataset if you want to use the set of games whose reference\n scene is an image in VisualGenome. Visit the website for more details: https://compguesswhat.github.io\n ", "citation": " @inproceedings{suglia2020compguesswhat,\n title={CompGuessWhat?!: a Multi-task Evaluation Framework for Grounded Language Learning},\n author={Suglia, Alessandro, Konstas, Ioannis, Vanzo, Andrea, Bastianelli, Emanuele, Desmond Elliott, Stella Frank and Oliver Lemon},\n booktitle={Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics},\n year={2020}\n }\n ", "homepage": "https://compguesswhat.github.io/", "license": "", "features": {"id": {"dtype": "int32", "id": null, "_type": "Value"}, "target_id": {"dtype": "string", "id": null, "_type": "Value"}, "status": {"dtype": "string", "id": null, "_type": "Value"}, "image": {"id": {"dtype": "int32", "id": null, "_type": "Value"}, "file_name": {"dtype": "string", "id": null, "_type": "Value"}, "coco_url": {"dtype": "string", "id": null, "_type": "Value"}, "height": {"dtype": "int32", "id": null, "_type": "Value"}, "width": {"dtype": "int32", "id": null, "_type": "Value"}, "license": {"dtype": "int32", "id": null, "_type": "Value"}, "open_images_id": {"dtype": "string", "id": null, "_type": "Value"}, "date_captured": {"dtype": "string", "id": null, "_type": "Value"}}, "objects": {"feature": {"id": {"dtype": "string", "id": null, "_type": "Value"}, "bbox": {"feature": {"dtype": "float32", "id": null, "_type": "Value"}, "length": 4, "id": null, "_type": "Sequence"}, "category": {"dtype": "string", "id": null, "_type": "Value"}, "area": {"dtype": "float32", "id": null, "_type": "Value"}, "category_id": {"dtype": "int32", "id": null, "_type": "Value"}, "IsOccluded": {"dtype": "int32", "id": null, "_type": "Value"}, "IsTruncated": {"dtype": "int32", "id": null, "_type": "Value"}, "segment": {"feature": {"MaskPath": {"dtype": "string", "id": null, "_type": "Value"}, "LabelName": {"dtype": "string", "id": null, "_type": "Value"}, "BoxID": {"dtype": "string", "id": null, "_type": "Value"}, "BoxXMin": {"dtype": "string", "id": null, "_type": "Value"}, "BoxXMax": {"dtype": "string", "id": null, "_type": "Value"}, "BoxYMin": {"dtype": "string", "id": null, "_type": "Value"}, "BoxYMax": {"dtype": "string", "id": null, "_type": "Value"}, "PredictedIoU": {"dtype": "string", "id": null, "_type": "Value"}, "Clicks": {"dtype": "string", "id": null, "_type": "Value"}}, "length": -1, "id": null, "_type": "Sequence"}}, "length": -1, "id": null, "_type": "Sequence"}}, "post_processed": null, "supervised_keys": null, "builder_name": "compguesswhat", "config_name": "compguesswhat-zero_shot", "version": {"version_str": "0.2.0", "description": "Second CompGuessWhat?! release", "major": 0, "minor": 2, "patch": 0}, "splits": {"nd_valid": {"name": "nd_valid", "num_bytes": 13510725, "num_examples": 5343, "dataset_name": "compguesswhat"}, "nd_test": {"name": "nd_test", "num_bytes": 36228293, "num_examples": 13836, "dataset_name": "compguesswhat"}, "od_valid": {"name": "od_valid", "num_bytes": 14052108, "num_examples": 5372, "dataset_name": "compguesswhat"}, "od_test": {"name": "od_test", "num_bytes": 32951141, "num_examples": 13300, "dataset_name": "compguesswhat"}}, "download_checksums": {"https://www.dropbox.com/s/gd46azul7o7iip4/compguesswhat-zero_shot.zip?dl=1": {"num_bytes": 4845966, "checksum": "ebf444e14408dbff2d910ba9ec049cd42882f2ce52d465d0f78203ee454aa33e"}}, "download_size": 4845966, "post_processing_size": null, "dataset_size": 96742267, "size_in_bytes": 101588233}} \ No newline at end of file diff --git a/datasets/compguesswhat/dummy/compguesswhat-original/0.2.0/dummy_data.zip b/datasets/compguesswhat/dummy/compguesswhat-original/0.2.0/dummy_data.zip new file mode 100644 index 0000000000000000000000000000000000000000..f6996048c85101bd9a134cc95155eb7e418df7d2 GIT binary patch literal 26133 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%0AajV#T;H94<`?4meyUW{rR`BPc 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 GSN{i&?!%=3 literal 0 HcmV?d00001