Python 区分人';从结构化表列中的组织名称中删除组织名称

Python 区分人';从结构化表列中的组织名称中删除组织名称,python,text,nlp,Python,Text,Nlp,有没有办法区分人名和组织名 但是,我认为数据存储在一个结构化的表中(而不是非结构化的句子)。具体来说,NAME列列出了个人和组织的名称(我正试图区分)。在下面的示例中,我想根据NAME列中列出的值,生成PERSON列中列出的值 名称 人 汤姆汉克斯 真的 日产汽车公司 错误的 瑞安·雷诺兹 真的 特斯拉 错误的 杰夫咖啡馆 错误的 如果您有理由相信所有条目都是广为人知的(即普通品牌和名人),您可以利用远程学习方法,将维基百科作为来源。 基本上,您可以在维基百科上搜索每个条目,并利用来自唯一搜索结

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

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

名称 人 汤姆汉克斯 真的 日产汽车公司 错误的 瑞安·雷诺兹 真的 特斯拉 错误的 杰夫咖啡馆 错误的
如果您有理由相信所有条目都是广为人知的(即普通品牌和名人),您可以利用远程学习方法,将维基百科作为来源。
基本上,您可以在维基百科上搜索每个条目,并利用来自唯一搜索结果的结果(即,搜索“特斯拉”将导致至少两个完全不同的页面,即汽车公司和发明家)。最重要的是,每个页面的底部都有分类标签,这使得使用字符串匹配和几个同义词对某篇文章进行分类变得很简单(例如,苹果的分类标签是“Companies liste on NASDAQ”,所以你可以说所有有“company”/“Companies”的分类在名称中,指的是属于公司的条款

利用独特搜索词的结果,您应该能够构建足够大的训练语料库,并具有相对较高的确定性,以获得准确的地面真实数据,反过来,您可以使用这些数据来训练任务中的“传统”ML模型

警告:
我应该注意到,如果你使用的是相对未知的名字,并且可能不会有维基百科文章,那么这会变得非常困难。在这种情况下,我只能考虑使用你各自国家经常使用的名字/姓氏的字典。它当然更容易出现误报/否定(例如,“Toyota”在日本也是一个很常见的姓氏,尽管西方人可能指的是汽车制造商)。同样,不太常见(或拼写不同)的名字也不会被选择和忽略