当前位置: 首页 > 专利查询>微软公司专利>正文

比较有界域的值制造技术

技术编号:6631441 阅读:185 留言:0更新日期:2012-04-11 18:40
公开了用于比较有界域中的值的方法、系统和计算机可读介质。一种具体方法包括对于有界域中的每一个值,确定与该值相关联的对应的容许差错集。这些容许差错集被存储在存储器处。该方法包括基于对应于有界域中的第一值的第一容许差错集与对应于有界域中的第二值的第二容许差错集的比较来确定该第一值和第二值之间的比较分数。

【技术实现步骤摘要】

本专利技术一般涉及数据库系统,尤其涉及数据库系统中的值的比较与匹配方法。
技术介绍
通常使用模糊匹配算法来标识存储在计算机系统中的重复数据。重复数据的示例可以是存储在数据库系统处的对应于同一个人的多个记录(例如,这些记录中的一个可能具有拼写错误的姓名)。数据重复可导致浪费计算资源(例如,存储资源)。这些匹配算法被称为“模糊”是因为它们处理不精确(即,“模糊”)的数据比较。由于对将要匹配的每一个数据项的各个“模糊匹配候选”的处理,模糊匹配算法可能是时间密集的且资源密集的。 例如,当前用于字符串的模糊匹配算法的计算复杂性相对于所检查的字符串的长度呈指数地增加(例如,0(N2))。
技术实现思路
公开了一种用于比较有界域中的两个值的模糊匹配方法。为有界域中的每一个值预先计算并存储容许差错集。作为示例而非限制,有界域可包括有限数字域、日期域、色谱域、列表域、或枚举集合域。此外,作为示例而非限制,容许差错可包括印刷差错、范围差错、 换位差错、转写差错或其它类型的差错。有界域中的两个值的模糊匹配使用通过比较两个值中的每一个的容许差错集来降低复杂性的方法来完成。提供本
技术实现思路
是为了以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本
技术实现思路
并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于限定所要求保护的主题的范围。附图说明图1是示出比较有界域中的两个值的具体实施方式的图示;图2是示出有界域中的值的容许差错集的具体实施方式的图示;图3是示出确定有界域中的两个值之间的比较分数的具体实施方式的图示;图4是示出比较有界域中的值的方法的具体实施方式的流程图;图5是示出比较有界域的方法的另一具体实施方式的流程图;以及图6是包括可用于支持如图1-5所示的计算机实现的方法、计算机程序产品以及系统组件的实施方式的计算设备的计算环境的框图。具体实施例方式公开了用于比较有界域中的值的方法、系统和计算机可读介质。在一具体实施方式中,一种计算机实现的方法包括对于有界域中的每一个值,确定与该值相关联的对应的容许差错集。该方法还包括将容许差错集存储在存储器处。该方法还包括基于对应于有界域中的第一值的第一容许差错集与对应于有界域中的第二值的第二容许差错集的比较来确定该第一值和第二值之间的比较分数。在另一具体实施方式中,一种计算机系统包括处理器以及耦合到该处理器的存储器。该存储器存储指令,该指令在被处理器执行时引起包括计算组件和运行时比较组件的模糊匹配逻辑的执行。该计算组件被配置成对于有界域中的多个值中的每一个,确定对应于该值的容许差错集并将该容许差错集存储在存储器处。运行时比较组件被配置成基于对应于有界域中的第一值的第一容许差错集以及对应于有界域中的第二值的第二容许差错集来确定该第一值和第二值之间的比较分数。在另一具体实施方式中,一种计算机可读介质包括指令,该指令在被计算机执行时使该计算机执行以下操作对于有界域中的每一个值,确定与该值相关联的对应的容许差错集。这些指令还使计算机对容许差错集执行求散列操作。对特定容许差错集执行求散列操作产生表示该特定集合的位掩码以及该位掩码的逻辑真位的计数。这些指令还使计算机将位掩码和计数存储在静态分配的存储器部分中。这些指令使计算机接收有界域中的第一值和有界域中的第二值。这些指令还使计算机从存储器中检索对应于第一值的第一位掩码和第一计数以及对应于第二值的第二位掩码和第二计数。这些指令还使计算机确定第一位掩码和第二位掩码的Jaccard分数。图1描绘了比较有界域100中的两个值的具体实施方式。有界域100可包括多个值(例如,说明性值102和106)。有界域100中的每一个值可具有相关联的“模糊边界”。 例如,在图1所示的具体实施方式中,第一值102具有第一模糊边界104,而第二值106具有第二模糊边界108。当两个值的模糊边界重叠时,这两个值可被称为“模糊相似”(例如,出于合并重复值的目的而被视作匹配)。此外,两个值之间的相似性的量可基于模糊边界之间的重叠的大小来量化。例如,在图1所示的具体实施方式中,值102和106可以是模糊相似的,因为模糊边界104和108相交形成交集110。在一具体实施方式中,表示两个值102和106之间的相似性的量的比较分数 120(例如,Jaccard分数)可通过将两个模糊边界102和108的交集110的面积除以这两个模糊边界104和108的并集的面积来确定。应当注意,因为有界域100是有界的,所以可以预先计算并存储有界域中的每一个值的模糊边界。由此可以理解,当预先计算并存储了模糊边界时,可以在恒定时间内(即,0(1))计算有界域100中的两个值之间的比较分数。图2描绘了被大致指定为200的、有界域中的值的容许差错集的具体实施方式。例如,日期域可被认为是有界域,因为可以存在该域中的已知第一日期(例如,零年1月1日) 以及该域中的已知最后日期(例如,当前日期)。日期可被分成三个子域月、日和年。月子域可以是包括十二个值(例如,1到12,其中1表示1月,而12表示12月)的有限数字域。日子域可以是包括三十一个值(例如,1到31)的有限数字域。年子域可以是包括对应于当前年度的多个值的有限数字域(例如,如果当前是2010年,则年子域可包括2011个值0到2010)。在一具体实施方式中,年子域可由η元语法来表示。例如,2010年可由三个二元语法“20”、“01”和“10”来表示,并且年子域由此可包括一百个二元语法值(例如, 00-99)。为了对有界域中的值执行模糊匹配(例如,两个日期的模糊匹配),可以首先确定对应于有界域中的每一个值的容许差错集。例如,图2示出了确定对应于特定值201 “14日”(例如,第十四天)的容许差错集202的具体实施方式。容许差错可包括印刷差错、范围差错、换位差错、转写差错和其他类型的差错。在一具体实施方式中,对应于特定值的容许印刷差错包括该特定值的差一个字符的各个变体。例如,对应于201处的值“14日”的容许印刷差错集可包括字符串“14”的以下变体“11”、“12”、“13”、“15”、“16”、“17”、“18”、“19”、“04” 和 “24”。在一具体实施方式中,可以忽略有界域之外的容许差错。即,容许差错集中的每一个容许差错可以在有界域内。例如,可以忽略印刷变体“34”,因为日域只包括字符串“01”到“31”。在一具体实施方式中,对应于特定值的容许范围差错包括该特定值的在特定差异范围内的各个变体。例如,当差异范围是+/-3时,对应于201处的值“14日”的容许差错集可包括 “ 11”、“ 12 ”、“ 13 ”、“ 15 ”、“ 16 ” 和 “ 17 ”。在一具体实施方式中,对应于特定值的容许换位差错包括该特定值的具有在换位位置中的两个字符的各个变体。例如,值“21日”可具有容许换位差错“12”。应当注意,对应于值“ 14日,,的容许换位差错集可以是空集,因为值“ 14”的换位“41”在日的有界域之外。在一具体实施方式中,对应于特定值的容许转写差错包括与该特定值相关联的数据输入差错和数据识别差错。例如,当对手写数字执行数据识别时,数据识别可能混淆看上去相似的特定数字对(例如,1和7、5和6、6和8、以及8和9)。由此,“ 17”可本文档来自技高网...

【技术保护点】
1.一种计算机实现的方法,包括:对于有界域中的每一个值(201),确定(402)与所述值(201)相关联的对应的容许差错集(202);将所述容许差错集存储(404)在存储器处;以及基于对应于所述有界域中的第一值(321)的第一容许误差集与对应于所述有界域中的第二值(322)的第二容许误差集的比较来确定(406)所述第一值(321)和所述第二值(322)之间的比较分数(331)。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:G·迪金森
申请(专利权)人:微软公司
类型:发明
国别省市:US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1