查找在句子块中一起出现的单词不一定彼此相邻单词是字典的关键词 Python

问题描述

我有一本字典,其中的关键字可以是任意数量的单词,我试图查看是否可以在一段文本中找到这些单词是否存在。我已经用n-gram完成了NLP处理。我试图查看例如某个词典关键字的大部分或全部单词是否在彼此相邻的文本块中。

例如

dictionary = {'countertop handle piece' : 'ID1234,'fridge door button' : 'ID1235}

text = "the situation in the kitchen where the handle of the countertop piece is broken in not looking very good. Blah blah blah blah. Moreover,we wanted to repair the button which is found on the yellow door of the refrigerator."

因此,我希望能够识别包含字典关键字中大多数或所有这些单独单词的句子或文本块。这是因为,与上面的示例一样,有人可能不会将冰箱称为冰箱,也可能不会同时使用“冰箱门按钮”的所有三个世界。

我知道词干,标记化以及去除停用词然后应用n-gram匹配将有所帮助。但是,我认为这种方法需要更复杂吗?

有人告诉我同时出现矩阵会有所帮助,因为它会找到文本块的上下文并评估文本块是否在描述某件事。通过这种方法,我将能够找到字典关键字中所有或大多数单词在给定句子中同时出现的句子。

如果同时发生或类似现象,那么我该如何解决呢?我尝试研究它,但看不到它如何为我提供帮助,最重要的是,如何实现它并真正解决问题。

您的答案中的任何示例代码/示例都将不胜感激,因为我对Python不太了解。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...