【问题标题】:Distinguish Person's names from Organization names in structured table column区分结构化表列中的人员名称和组织名称
【发布时间】:2021-01-12 01:40:09
【问题描述】:

有没有办法区分人名和组织名?

我在考虑 NER,但是数据存储在结构化表中(并且不是非结构化句子)。具体来说,NAME 列列出了个人和组织名称(我试图区分)。在下面的示例中,我想根据NAME 列中列出的值生成PERSON 列中列出的值。

NAME PERSON
Tom Hanks TRUE
Nissan Motors FALSE
Ryan Reynolds TRUE
Tesla FALSE
Jeff's Cafe FALSE

【问题讨论】:

    标签: python text nlp


    【解决方案1】:

    如果您有理由相信所有条目都已广为人知(即常见品牌和名人),您可以利用以维基百科为来源的远程学习方法。
    本质上,您在 Wikipedia 上搜索每个条目,并利用来自独特搜索结果的结果(即,搜索“特斯拉”将导致至少两个独特的不同页面,即汽车公司和发明人)。最重要的是,每个页面都在底部分配了类别标签,这使得通过使用字符串匹配几个同义词(例如,Apple 有类别标签“Companies liste on NASDAQ”,所以你可以说所有名称中包含“company”/“companies”的类别均指的是属于公司的文章。

    借助独特搜索词的结果,您应该能够构建足够大的训练语料库,并具有相对较高的确定性,从而获得准确的地面实况数据,然后您可以使用该语料库在任务。

    警告:
    我应该注意,如果您使用相对不为人知且可能没有 Wikipedia 文章的名称来执行此操作,则会变得更加困难。在那种情况下,我只能考虑使用您所在国家/地区经常使用的名字/姓氏的字典。它肯定更容易出现误报/误报(例如,“丰田”在日本也是一个非常常见的姓氏,尽管西方人可能指的是汽车制造商)。同样,不太常见(或拼写不同)的名称也不会被挑选出来。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-22
      • 1970-01-01
      • 2013-03-11
      相关资源
      最近更新 更多