为Python分类不同的文本

时间:2019-02-18 07:37:02

标签: python pandas text categorization

我有一个数据集,其中每一行都是特定的合规性违规。第一列是违规的名称(df ['Violations']消防通道,过道,人体工学座椅..最多130次违规),第二列代表违规的严重程度(df ['Category']次要,中等,专业,严重),第3个违规描述(df ['Description'] 1-2句描述了问题)。

每种违规行为(例如,过道)都存在不同的问题(过道太小而过道只是阻碍)。我想根据违规描述对违规进行分类。例如。我希望将以下两个违规描述归为同一新类别(障碍物):

“建议工厂应保护所有通道不受任何障碍物的影响,以确保紧急疏散,并确保所有疏散通道和紧急出口始终畅通无阻。”

“建议工厂应保护所有通道不受任何障碍物的影响,以确保紧急疏散,并确保所有疏散通道和紧急出口始终畅通无阻,并为进行定期健康与安全检查的工人提供适当的消防安全培训“

我知道我可以寻找特定的关键字(例如,障碍),但是要为每个违规类别(我有130多个违规类别)识别关键字将花费我很多时间。

我可以运行哪种处理语言分析,以使python自动为不同类别标识不同的“簇”?对Python有什么建议吗?

编辑:

我添加了数据图片

enter image description here

1 个答案:

答案 0 :(得分:1)

  

识别每个违规类别的关键字需要花费我很多时间

这称为主题建模任务,您可以使用潜在Dirichlet分配(LDA)实现此任务,该过程将自动为您形成文本簇。 LDA将每个文档按一定比例视为主题的集合。而且每个主题都以一定比例作为关键字的集合。

由于您尚未共享数据集,因此我将指向此excellent resourceYou can also get visualizations such as these