如何做一个数组作为word embedding,类似于tf.keras.datasets.imdb.get_word_index?
How to make an array as a word embedding, similar to tf.keras.datasets.imdb.get_word_index?
我是机器学习的新手。我从 IMDB 看到了带有电影评论的二进制分类代码。我试图对我自己的数据集使用相同的代码(其中列是“文本”:这是我的情感句子,“标签”:0 或 1)。
我想做一个叫word_index的词嵌入,类似于tf.keras.datasets.imdb.get_word_index
{'fawn': 34701, 'tsukino': 52006, 'nunnery': 52007, 'sonja': 16816, 'vani': 63951, 'woods': 1408, ...}
我试过的是这个,但我不确定是否与 get_word_index 给出的结果相同
{k: v for k, v in enumerate(my_dataset)}
我认为您混淆了词嵌入和 word_index 这两个术语。词嵌入是语言中词的向量表示,有许多方法可用于获得这些表示(例如,使用预训练的词嵌入,如 Word2Vec、GloVe、BERT 等)。它可以用来代替单词的单热编码。
Word_index是根据词频从输入文本集合生成的词汇表。 tf.keras.datasets.imdb.get_word_index 将 word_index 提供给 IMDB 数据集。要为您的数据集获取 word_index,您可以使用 keras.preprocessing.text.Tokenizer.fit_on_texts(input_dataset)。 .
中对此也有很好的解释
我是机器学习的新手。我从 IMDB 看到了带有电影评论的二进制分类代码。我试图对我自己的数据集使用相同的代码(其中列是“文本”:这是我的情感句子,“标签”:0 或 1)。
我想做一个叫word_index的词嵌入,类似于tf.keras.datasets.imdb.get_word_index
{'fawn': 34701, 'tsukino': 52006, 'nunnery': 52007, 'sonja': 16816, 'vani': 63951, 'woods': 1408, ...}
我试过的是这个,但我不确定是否与 get_word_index 给出的结果相同
{k: v for k, v in enumerate(my_dataset)}
我认为您混淆了词嵌入和 word_index 这两个术语。词嵌入是语言中词的向量表示,有许多方法可用于获得这些表示(例如,使用预训练的词嵌入,如 Word2Vec、GloVe、BERT 等)。它可以用来代替单词的单热编码。
Word_index是根据词频从输入文本集合生成的词汇表。 tf.keras.datasets.imdb.get_word_index 将 word_index 提供给 IMDB 数据集。要为您的数据集获取 word_index,您可以使用 keras.preprocessing.text.Tokenizer.fit_on_texts(input_dataset)。