Skip to content

[Tokenizer] ERNIE/BERT 中文Tokenizer会将日文、韩文连续字符识别为UNK #2585

@ZHUI

Description

@ZHUI

ERNIE/BERT 中文Tokenizer会将日文、韩文连续字符识别为UNK。
如,天空の城ラピュタ中的ラピュタ被识别为UNK

>>> import paddlenlp
>>> t=paddlenlp.transformers.ErnieTokenizer.from_pretrained("ernie-3.0-base-zh")
>>> t._tokenize("《天空之城日语是天空の城ラピュタ天空之城讲述的是主人公少女希达和少年巴鲁以及海盗军队穆斯卡等
寻找天空之城拉普达Laputa的历险记")
['《', '天', '空', '之', '城', '》', '日', '语', '是', ':', '天', '空', 'の', '城', '[UNK]', '。', 
'天', '空', '之', '城', '讲', '述', '的', '是', '主', '人', '公', '少', '女', '希', '达', '和', '少', '年', '巴', '鲁', '以', '
及', '海', '盗', '、', '军', '队', '、', '穆', '斯', '卡', '等', '寻', '找', '天', '空', '之', '城', '拉', '普', '达', '(', 'lap', '##uta', '
)', '的', '历', '险', '记']
>>> t.basic_tokenizer.tokenize("《天空之城日语是天空の城ラピュタ天空之城讲述的是主人公少女希达和少年巴鲁以及海盗军队穆斯卡等寻找天空之城拉普达Laputa的历险记")
['《', '天', '空', '之', '城', '》', '日', '语', '是', ':', '天', '空', 'の', '城', 'ラヒュタ', '。', 
'天', '空', '之', '城', '讲', '述', '的', '是', '主', '人', '公', '少', '女', '希', '达', '和', '少', '年', '巴', '鲁', '以', 
'及', '海', '盗', '、', '军', '队', '、', '穆', '斯', '卡', '等', '寻', '找', '天', '空', '之', '城', '拉', '普', '达', '(', 'laputa', ')', '的', '历', '险', '记']
>>> t.wordpiece_tokenizer.tokenize('ラヒュタ')
['[UNK]']
>>> [x in t.vocab for x in 'ラヒュタ']
[True, True, True, True]

实际上,这些字符都在ernie-3.0-base-zh词表中出现过。

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions