Nlp Python中的自然语言处理

Nlp Python中的自然语言处理,nlp,Nlp,如何使用python中的自然语言处理,根据过去培训过的问题(包括问题摘要和描述),为新的未看到的问题查找类似的问题如果我理解正确,您有一个新问题(查询),并且希望在数据库中查找其他类似的问题(文档)。如果是这样,那么您需要的是找到查询与现有文档之间的相似性的方法。一旦你有了它们,你就可以对它们进行排序,并选择最相关的。允许您这样做的一种方法是 为此,您必须构造一个文档术语矩阵。您将使用现有文档并跨文档创建术语出现矩阵。这意味着您基本上要记录一个单词在文档中出现的次数(或其他一些复杂的度量,例如-

如何使用python中的自然语言处理,根据过去培训过的问题(包括问题摘要和描述),为新的未看到的问题查找类似的问题如果我理解正确,您有一个新问题(查询),并且希望在数据库中查找其他类似的问题(文档)。如果是这样,那么您需要的是找到查询与现有文档之间的相似性的方法。一旦你有了它们,你就可以对它们进行排序,并选择最相关的。允许您这样做的一种方法是

为此,您必须构造一个文档术语矩阵。您将使用现有文档并跨文档创建术语出现矩阵。这意味着您基本上要记录一个单词在文档中出现的次数(或其他一些复杂的度量,例如-tfidf)。这可以通过表示或表示来完成

一旦你有了它,你就必须处理你的查询,使它与你的文档具有相同的形式。现在,您已经有了可用形式的查询,您可以计算文档和查询之间的余弦相似性。具有最高余弦相似性的是最接近的匹配


注:您可能想阅读的主题是信息检索,LSI只是其中一种方法。您还应该研究其他方法。

谢谢您的回复。。我们面临的挑战是,当我们使用tfidf训练数据时,我们生成了许多文本特征,而一个新的看不见的测试数据只有一条记录,由该数据生成的特征尺寸非常小,因此在进行余弦相似性时存在尺寸不匹配,因此无法计算新的未发现问题和已训练数据之间的相似性。然而,如果这些新的不可见数据是训练数据的一部分,我们可以计算余弦相似性。因此,我们只想知道,对于不可见数据,是否有可能得到类似的问题。大小不匹配可以处理。使用相同的矢量器对其进行转换(顺便问一下,您使用的是python吗?)。这将使它以所需的形式出现。它在本质上可能更稀疏,但您仍然可以计算余弦相似性。所以,是的,你可以在看不见的数据上使用它。请确保遵循相同的预处理步骤。是的。我正在使用python,并且对测试数据使用了相同的矢量器(TfidfVectorizer)和预处理,但在尝试使用为列车数据创建的fit对象转换测试数据时出错。请查看这是否有帮助: