如何对名称不同但语义基本相同的公司进行分组?
How do I group companies having different names but are essentially the same semantically?
我正在使用来自英国 public 部门的开放政府数据进行竞争对手分析。但是我的结果有一些异常。当我按公司名称对合同进行分组时,会出现很多问题,例如公司拼写错误或 names.e.g HP、Hewlett-Packard、Hewlett-Packard Limited、ibm、ibm UK、ibm英国有限等等。问题是我已经 运行 我的代码并手动修复了结果。现在我已经更改了部分代码,需要再次 运行 。但我不能再回去做同样的事情,因为它的成本很高。目前,我正在考虑编写一条通用规则,按字母顺序对这些公司进行排序,并在前几个词匹配时合并它们。但这不是一种完全可靠的方法,因为惠普和惠普会有所不同。有没有人以前做过任何类似的工作,或者可以向我推荐他们的工作。我会很感激。谢谢。
这是我过去解决过的问题,但我是针对不同的域解决的。您可以从提供公司列表及其缩写的在线资源开始,抓取它们并以某种格式(如 hashmap)存储它们。现在您可以使用缩写来查找与原始字符串和缩写字符串匹配的子字符串。有一定阈值的词(比如说 90%)。
根据您的具体情况,您可以开始使用 JSOUP 抓取此站点 http://www.abbreviations.com/acronyms/FIRMS。这有一个非常丰富的公司缩写来源。如果此列表不够,您将不得不寻找其他来源。希望这有帮助。
我正在使用来自英国 public 部门的开放政府数据进行竞争对手分析。但是我的结果有一些异常。当我按公司名称对合同进行分组时,会出现很多问题,例如公司拼写错误或 names.e.g HP、Hewlett-Packard、Hewlett-Packard Limited、ibm、ibm UK、ibm英国有限等等。问题是我已经 运行 我的代码并手动修复了结果。现在我已经更改了部分代码,需要再次 运行 。但我不能再回去做同样的事情,因为它的成本很高。目前,我正在考虑编写一条通用规则,按字母顺序对这些公司进行排序,并在前几个词匹配时合并它们。但这不是一种完全可靠的方法,因为惠普和惠普会有所不同。有没有人以前做过任何类似的工作,或者可以向我推荐他们的工作。我会很感激。谢谢。
这是我过去解决过的问题,但我是针对不同的域解决的。您可以从提供公司列表及其缩写的在线资源开始,抓取它们并以某种格式(如 hashmap)存储它们。现在您可以使用缩写来查找与原始字符串和缩写字符串匹配的子字符串。有一定阈值的词(比如说 90%)。
根据您的具体情况,您可以开始使用 JSOUP 抓取此站点 http://www.abbreviations.com/acronyms/FIRMS。这有一个非常丰富的公司缩写来源。如果此列表不够,您将不得不寻找其他来源。希望这有帮助。