我试图解释Doc2Vec 中文档向量中使用的标签背后的逻辑 - 如何标记段落 (gensim)
回答你的问题。
1)当两个文档共享相同的标签时,doc2vec算法从两个文档中确定标签的语义。请注意,doc2vec 学习标签的语义含义,而不是单个文档。
2)同样,你不是在学习文件。您正在指示 doc2vec 学习标签的嵌入。因此,如果为一个文档提供多个标签,则所有标签都从文档中接收到相同的语义含义,并且当一部分标签在其他文档中使用时,继续从它们中学习更多的语义含义。例如。文档 1->hunt, bite, eat, flesh文档 2-> life, love, eat, money。很明显,doc1 是关于动物的,doc2 是关于人类的,标签eat将具有两者的语义含义。
3)如果您的目标是找到类似的问题,那么您可能应该为整个问题只给出一个标签,然后找到一个具有更接近余弦距离的标签的问题。
4) 切勿将标签与文字混淆。在 word2vec 中,单词学习嵌入,而在 doc2vec 中,标签从文档中使用的单词中学习嵌入。如果您想为文档添加更多语义含义,则可以将其作为单词添加到特定文档中。如果您想为标签添加语义含义,如果您希望标签具有很强的亲和力,则必须将单词添加到带有该标签的每个文档中(但手动添加单词,对我个人来说不是一个好的选择)。