如何将 Keras 数据集转换为嵌入矩阵?



我想使用Keras的IMDB数据集。

这是它的样子:

An Input Vector Sample = [23022, 309, 6, 3, 1069, 209, 9, 2175, 30, 1, 169, 55, 14, 46, 82, 5869, 41, 393, 110, 138, 14, 5359, 58, 4477, 150, 8, 1, 5032, 5948, 482, 69, 5, 261, 12, 23022, 73935, 2003, 6, 73, 2436, 5, 632, 71, 6, 5359, 1, 25279, 5, 2004, 10471, 1, 5941, 1534, 34, 67, 64, 205, 140, 65, 1232, 63526, 21145, 1, 49265, 4, 1, 223, 901, 29, 3024, 69, 4, 1, 5863, 10, 694, 2, 65, 1534, 51, 10, 216, 1, 387, 8, 60, 3, 1472, 3724, 802, 5, 3521, 177, 1, 393, 10, 1238, 14030, 30, 309, 3, 353, 344, 2989, 143, 130, 5, 7804, 28, 4, 126, 5359, 1472, 2375, 5, 23022, 309, 10, 532, 12, 108, 1470, 4, 58, 556, 101, 12, 23022, 309, 6, 227, 4187, 48, 3, 2237, 12, 9, 215]
A Label Sample = 1

这就是我得到它的方式:

top_words = 5000
test_split = 0.30
from keras.datasets import imdb
(X, y), (X_test, y_test) = imdb.load_data()  # num_words=top_words

问题是这样,不知道输入句是什么样的?

那么,如何将预先训练的词向量的总和作为该句子的特征呢?

除了Keras之外,还有什么方法可以做到这一点吗?Scikit learn也没有imdb数据集。

非常感谢您的帮助。任何帮助将不胜感激。

数据集只是将单词索引存储为您发现的整数序列。隐藏在keras.datasets.imdb模块中的是另一个函数,该函数检索将单词索引映射回单词的字典;不幸的是,它没有明确的记录。您可以使用它将索引转换回单词,以查找句子的外观。

已经有一篇很好的博客文章,介绍如何在 Keras 中将预先训练的词向量与Embedding层一起使用。您可以根据为 IMDb 数据集获取的字典映射加载向量,因为索引可能不匹配。

最新更新