jab*_*woo 4 python nlp tensorflow
根据此链接,target_vocab_size:int,要创建的词汇表的近似大小。该声明对我来说非常模棱两可。据我所知,编码器会将每个词汇表映射到一个唯一的 ID。如果语料库vocab_size大于 ,会发生什么target_vocab_size?
该文件说:
编码是完全可逆的,因为所有词汇外的词都是字节编码的
这意味着未知的单词片段将一次编码一个字符。最好通过一个例子来理解。假设您SubwordTextEncoder使用一个非常大的英语文本语料库来构建一个,这样大多数常用词都在词汇表中。
vocab_size = 10000
tokenizer = tfds.features.text.SubwordTextEncoder.build_from_corpus(
corpus_sentences, vocab_size)
Run Code Online (Sandbox Code Playgroud)
假设您尝试标记以下句子。
tokenizer.encode("good badwords badxyz")
Run Code Online (Sandbox Code Playgroud)
它将被标记为:
如您所见,由于单词“xyz”不在词汇表中,因此被标记为字符。