鉴于这段代码:from tensorflow.keras.preprocessing.text import Tokenizersentences = [ 'i love my dog', 'I, love my cat', 'You love my dog!']tokenizer = Tokenizer(num_words = 1)tokenizer.fit_on_texts(sentences)word_index = tokenizer.word_indexprint(word_index)无论num_words=1或num_words=100,当我在 jupyter 笔记本上运行此单元时,我都会得到相同的输出,而且我似乎无法理解它在标记化方面有何不同。{'爱': 1, '我的': 2, '我': 3, '狗': 4, '猫': 5, '你': 6}
1 回答
慕田峪4524236
TA贡献1875条经验 获得超5个赞
word_index 它只是整个文本语料库的单词到 id 的映射,无论 num_words 是什么
区别在用法上很明显。例如,如果我们调用texts_to_sequences
sentences = [
'i love my dog',
'I, love my cat',
'You love my dog!'
]
tokenizer = Tokenizer(num_words = 1+1)
tokenizer.fit_on_texts(sentences)
tokenizer.texts_to_sequences(sentences) # [[1], [1], [1]]
仅返回爱情 ID,因为最常见的单词
反而
sentences = [
'i love my dog',
'I, love my cat',
'You love my dog!'
]
tokenizer = Tokenizer(num_words = 100+1)
tokenizer.fit_on_texts(sentences)
tokenizer.texts_to_sequences(sentences) # [[3, 1, 2, 4], [3, 1, 2, 5], [6, 1, 2, 4]]
返回最常见的 100 个单词的 id
添加回答
举报
0/150
提交
取消