python-3.x 不同的标记化器为相同的标记提供相同的input_id

yh2wf1be  于 2023-03-04  发布在  Python
关注(0)|答案(1)|浏览(138)

我正在训练一个记号化器,并使用huggingface作为预先训练的模型。我使用XLM-roberta-base训练记号化器,它给记号“size”输入id = 224。当我用另一个记号化器改变XLM-roberta-base时,它也给记号“size”输入id = 224。这正常吗?它不应该给记号不同的ID吗?我的意思是发生这种情况的几率有多大?

pretrained_tokenizer = AutoTokenizer.from_pretrained('some tokenizer')
vocab_size = 52_000
tokenizer = pretrained_tokenizer.train_new_from_iterator(training_corpus, vocab_size)

txt = 'merhaba size hatta merhabalar size'
tokense = tokenizer(txt)['input_ids']
    ==>[0, 1353, 224, 16616, 9361, 224, 2]

pretrained_tokenizer = AutoTokenizer.from_pretrained('some another tokenizer')
vocab_size = 52_000
tokenizer = pretrained_tokenizer.train_new_from_iterator(training_corpus, vocab_size)

txt = 'merhaba size hatta merhabalar size'
tokense = tokenizer(txt)['input_ids']
    ==>[0, 1353, 224, 16616, 9361, 224, 2]

两个身份证是一样的,我认为这是不对的。

sgtfey8w

sgtfey8w1#

谢谢alvas。在我的例子中,即使标记器的名字不同,他们都使用相同的模型训练,所以我认为这就是为什么得到相同的id的原因。谢谢你的帮助。

相关问题