从我原来在Stackoverflow中的文章中的交叉帖子:https://stackoverflow.com/questions/69595863/machine-translation-transformer-output-unknown-tokens
根据反馈,我现在更新了使用WordPiece的方法,该方法来自Huggingface的预先培训的BERT令牌器。然而,在翻译时,我仍然会遇到“灌篮”标记。我很好奇为什么还会发生这种事?我以为WordPiece会在不输出任何“灌篮”标记的情况下尝试解码。
这就是我如何标记我的数据,我使用德语到英语翻译任务。
from transformers import BertTokenizer
bert_tokenizer_en = BertTokenizer.from_pretrained("bert-base-uncased")
bert_tokenizer_de = BertTokenizer.from_pretrained("bert-base-german-cased",do_lower_case=True)举例:
ground truth = ['a', 'girl', 'in', 'a', 'jean', 'dress', 'is', 'walking', 'along', 'a', 'raised', 'balance', 'beam', '.']
predicted = ['a', 'girl', 'in', 'a', '<unk>', 'costume', 'is', 'jumping', 'on', 'a', 'clothesline', '.', '<eos>']
````发布于 2022-02-03 22:36:58
根据伯特的拥抱脸文档,默认的声乐_大小是30522。代币“让”不在前30522的代币中。
https://datascience.stackexchange.com/questions/103717
复制相似问题