【问题标题】:Grouping Similar words in pythonpython中的相似词分组
【发布时间】:2019-07-23 03:55:39
【问题描述】:

我正在尝试使用 spacy 从文本中提取关键字/实体名称。

我能够提取所有实体名称,但我得到了很多重复项。

例如,

def keywords(text): 
    tags = bla_bla(text)
    return tags
article = "Donald Trump. Trump. Trump. Donald. Donald J Trump."
tags = keywords(article)

我得到的输出是: ['唐纳德特朗普','特朗普','特朗普','唐纳德','唐纳德J特朗普']

如何将所有这些标签聚集在一个主标签“Donald J Trump”下?

【问题讨论】:

  • 使用字典{'master_tag': [list-of-other-tags]}
  • 有没有办法动态地做到这一点?我的意思是,特朗普就是一个例子,但我还有很多其他标签要分组。

标签: python-3.x text nlp cluster-analysis spacy


【解决方案1】:

1) 简单的方法:只保留包含较小实体的最长实体 2)更耗时:制作实体字典 3) ML:用词袋向量化实体并将它们聚类,聚类中最长的实体将是“主”

【讨论】:

    【解决方案2】:

    带有精心制作的字典。

    没有无监督/集群可以可靠地做到这一点。

    考虑以下句子:

    特朗普总统会见了他的儿子小唐纳德·特朗普

    【讨论】:

      猜你喜欢
      • 2020-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-14
      • 2021-06-29
      • 1970-01-01
      • 2012-07-17
      • 1970-01-01
      相关资源
      最近更新 更多