data evaluation (model application) not working for verified data
To recreate this issue change https://gitlab.gistools.geog.uni-heidelberg.de/giscience/ideal-vgi/osm-multitag/-/blob/tmp_merge/src/osm_multitag/deep_learning_mlc/evaluate_data.py#L298 to False
(which is equal to running the model training with --verified). Then download the verified patch-geopackage from https://heibox.uni-heidelberg.de/d/372db398087d41d780d0/files/?p=%2Fpatches_multitag_verified_S2B_MSIL2A_20210613T102559_N0300_R108_T32UMV_20210613T133241.gpkg into the out/S2B_MSIL2A_20210613T102559_N0300_R108_T32UMV_20210613T133241
folder and rename it to patches_multitag.gpkg
and then run docker-compose run multi-tag data_evaluation --config model_config/args.yaml --tile_name S2B_MSIL2A_20210613T102559_N0300_R108_T32UMV_20210613T133241 --tempDir tmp --outDir out
for the data evaluation step (model application)
The following error is raised:
Traceback (most recent call last):
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/pandas/core/indexes/range.py", line 385, in get_loc
return self._range.index(new_key)
ValueError: 7909 is not in range
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/multitag/multitag/src/osm_multitag/deep_learning_mlc/evaluate_data.py", line 300, in add_arguments
evaluate_patches(args)
File "/multitag/multitag/src/osm_multitag/deep_learning_mlc/evaluate_data.py", line 98, in evaluate_patches
test(args, test_dataloader, model, device, config)
File "/multitag/multitag/src/osm_multitag/deep_learning_mlc/evaluate_data.py", line 173, in test
for batch, (X, y, index, ID, rgb, path, label_wrong, osm) in enumerate(dataloader):
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 652, in __next__
data = self._next_data()
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 692, in _next_data
data = self._dataset_fetcher.fetch(index) # may raise StopIteration
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 49, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 49, in <listcomp>
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/multitag/multitag/src/osm_multitag/deep_learning_mlc/data_prep/VGIDataset.py", line 131, in __getitem__
sample = list.loc[ID]
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/pandas/core/indexing.py", line 931, in __getitem__
return self._getitem_axis(maybe_callable, axis=axis)
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/pandas/core/indexing.py", line 1164, in _getitem_axis
return self._get_label(key, axis=axis)
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/pandas/core/indexing.py", line 1113, in _get_label
return self.obj.xs(label, axis=axis)
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/pandas/core/generic.py", line 3776, in xs
loc = index.get_loc(key)
File "/home/multitag/.cache/pypoetry/virtualenvs/osm-multitag-u85gR1AW-py3.8/lib/python3.8/site-packages/pandas/core/indexes/range.py", line 387, in get_loc
raise KeyError(key) from err
KeyError: 7909