如何在python主题建模中以不同的顺序处理相同单词的双字母组?例如“租赁延期”和“延期租赁”

时间:2019-03-13 15:00:12

标签: python python-3.x lda topic-modeling topicmodels

Hello Stackoverflow社区,

我正在与大家联系,以寻求有关如何在python主题建模中以不同顺序处理相同单词的双字母组的想法。

我有一个主题模型,其中两个含义相同的双字母组被视为不同的特征,因为它们的顺序不同。我需要一种必须将这两个双字母组视为同义词的方法。

欢迎提出想法和建议。

例如“租赁扩展”和“扩展租约” 我想将它们视为单词矩阵中的相同单词

欢迎任何类型的建议和想法。

预先感谢您, 尼哈尔

1 个答案:

答案 0 :(得分:1)

在将这些二元变量视为可互换之前,必须确保它们实际上是可互换的。如果不是,则会降低分析质量。 'foot_doctor'和'doctor_foot'可能指的不是同一件事-尤其是如果您采取了其他预处理步骤,例如阻止或使词条化,即将“医生的脚”变成“医生的脚”。

假定这些二元组的含义是可互换的:将它们视为可互换-您可以将一个重写为另一个。 Python提供了许多built-in string functions。在您的示例中,使用replace(),我们可以用另一个替换一个二元组。

oldfakedoc = 'my landlord gave me a lease extension'
newfakedoc = oldfakedoc.replace('lease extension', 'extension lease')
print (newfakedoc)

给出my landlord gave me a extension lease。循环遍历要替换的所有二元模型,然后运行模型。

如果您不想阻止或限制所有文档的使用,但又希望将主题放在非常相关的单词上,例如“跳转”和“跳转”,则也可以使用这种方法。另外,请确保您不会覆盖原始数据,因此可以根据需要返回并重建替换位置。