我正在使用 keras 的 one_hot 函数将我的单词转换为数字。但由于某种原因,它为不同的单词产生相同的数字。在下面的代码中,您可以看到 48 用于“amazing”,但 48 也用于“too”。这是为什么?
from tensorflow.keras.preprocessing.text import one_hot
reviews = ['nice food',
'amazing restaurant',
'too good',
'just loved it!',
'will go again',
'horrible food',
'never go there',
'poor service',
'poor quality',
'needs improvement']
# convert to ont hot vector
encoded_reviews = [one_hot(d, vocab_size) for d in reviews]
当我打印encoded_reviews时,它显示:
[[13, 12],
[48, 44],
[48, 19],
[38, 28, 46],
[13, 29, 19],
[46, 12],
[19, 29, 4],
[18, 38],
[18, 35],
[42, 7]]