jzbjyb / oie_rank

Iterative Rank-Aware Open IE
30 stars 5 forks source link

KeyError: '@@UNKNOWN@@' #2

Open lx385095967 opened 4 years ago

lx385095967 commented 4 years ago

When I run to "iterative rank-aware training" step , I got the following report:

`2020-04-16 01:14:58,580 - INFO - allennlp.training.trainer - Beginning training. 2020-04-16 01:14:58,580 - INFO - allennlp.training.trainer - Epoch 0/0 2020-04-16 01:14:58,580 - INFO - allennlp.training.trainer - Peak CPU memory usage MB: 4120.356 2020-04-16 01:14:58,723 - INFO - allennlp.training.trainer - GPU 0 memory usage MB: 1505 2020-04-16 01:14:58,724 - INFO - allennlp.training.trainer - GPU 1 memory usage MB: 10 2020-04-16 01:14:58,724 - INFO - allennlp.training.trainer - GPU 2 memory usage MB: 10 2020-04-16 01:14:58,725 - INFO - allennlp.training.trainer - GPU 3 memory usage MB: 10 2020-04-16 01:14:58,726 - INFO - allennlp.training.trainer - Training 0%| | 0/252 [00:00<?, ?it/s] 2020-04-16 01:14:58,728 - ERROR - allennlp.data.vocabulary - Namespace: labels 2020-04-16 01:14:58,729 - ERROR - allennlp.data.vocabulary - Token: B-ARG0 Traceback (most recent call last): File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/bin/allennlp", line 8, in sys.exit(run()) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/run.py", line 18, in run main(prog="allennlp") File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/commands/init.py", line 101, in main args.func(args) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/commands/train.py", line 103, in train_model_from_args args.force) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/commands/train.py", line 136, in train_model_from_file return train_model(params, serialization_dir, file_friendly_logging, recover, force) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/commands/train.py", line 204, in train_model metrics = trainer.train() File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/training/trainer.py", line 465, in train train_metrics = self._train_epoch(epoch) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/training/trainer.py", line 299, in _train_epoch for batch_group in train_generator_tqdm: File "/GPUFS/nsccgz_ywang_1/.local/lib/python3.6/site-packages/tqdm/_tqdm.py", line 1005, in iter for obj in iterable: File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/common/util.py", line 105, in return iter(lambda: list(islice(iterator, 0, group_size)), []) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/data/iterators/data_iterator.py", line 144, in call for batch in batches: File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/data/iterators/bucket_iterator.py", line 117, in _create_batches self._padding_noise) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/data/iterators/bucket_iterator.py", line 29, in sort_by_padding instance.index_fields(vocab) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/data/instance.py", line 72, in index_fields field.index(vocab) File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/data/fields/sequence_label_field.py", line 98, in index for label in self.labels] File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/data/fields/sequence_label_field.py", line 98, in for label in self.labels] File "/GPUFS/nsccgz_ywang_1/.conda/envs/oie_rank/lib/python3.6/site-packages/allennlp/data/vocabulary.py", line 628, in get_token_index return self._token_to_index[namespace][self._oov_token]

KeyError: '@@UNKNOWN@@'`

jzbjyb commented 4 years ago

Sorry for my late reply! As you can see in this report, this is caused by a missing label B-ARG0. However this label is indeed included in this vocab file, so it shouldn't happen. Make sure you use the correct version of allennlp which is 0.8.2, and run the iter.sh script under the project root directory so the vocab file can be successfully located.