def tokenize_corpus(corpus, num_words=-1): # Fit a Tokenizer on the corpus if num_words > -1: tokenizer = Tokenizer(num_words=num_words) else: tokenizer = Tokenizer() tokenizer.fit_on_texts(corpus) return tokenizer
这个函数试图做什么?我理解了“else”之后的部分,但在之前的部分我无法理解,有人能解释一下吗?
回答:
Tokenizer是一个文本标记化工具类。
这个类允许对文本语料库进行向量化,通过将每段文本转换为整数序列或向量。
参数num_words:基于词频保留的最大词数。仅保留最常见的num_words-1个词。
更新:这里tokenize_corpus函数中的num_words参数被用作标志,-1表示不使用Tokenizer的num_words参数,否则使用(这只是一个糟糕的实现)。
更多信息请见:https://keras.io/api/preprocessing/text/
Coursera教程 [推荐]:https://www.coursera.org/lecture/natural-language-processing-tensorflow/working-with-the-tokenizer-VEUJX