【发布时间】:2023-03-20 13:52:01
【问题描述】:
我试图了解以下示例中出了什么问题。
要按照文档中的描述在“text8”数据集上进行训练,只需执行以下操作:
import gensim.downloader as api
from gensim.models import Word2Vec
dataset = api.load('text8')
model = Word2Vec(dataset)
这样做会产生非常好的嵌入向量,通过评估单词相似度任务来验证。
但是,当手动加载上面使用的相同文本文件时,如
text_path = '~/gensim-data/text8/text'
text = []
with open(text_path) as file:
for line in file:
text.extend(line.split())
text = [text]
model = Word2Vec(test)
该模型仍然表示它正在训练与上述 (5) 相同数量的 epoch,但训练速度要快得多,并且生成的向量在相似性任务上的性能非常非常差。
这里发生了什么?我想这可能与“句子”的数量有关,但是 text8 文件似乎只有一行,那么 gensim.downloader 是否将 text8 文件拆分为句子?如果有,多长?
【问题讨论】: