理解供搜索的表格的制作方法_3

文档序号:9756904阅读:来源:国知局
中,主题 列选择模块203可以选择一个或多个列作为主题列。例如,基于列分数和/或概念分数,主题 列选择模块203可以将列分类成主题列或非主题列。
[0069]图3示出用于标识表格主题列的一示例方法300的流程图。方法300将参考计算机 架构200的组件和数据来描述。
[0070] 方法300包括从表格中选择指定数目的列作为候选主题列候选,每个主题列候选 是表格的主题列的一个候选,每个主题列候选包括多个值(301)。例如,候选列选择模块201 可以访问表格211(例如web表格)。如所示,表格211包括列221,222,223,224,225等。每个列 包括多个值。列221包括值221六、2218、221(:、2210等。列222包括值2224、2228、222(:、2220等。 列 223 包括值223六、2238、223(:、2230等。列224包括值2244、2248、224(:、2240等。列225包括值 225A、225B、225C、225D#。
[0071] 候选列选择模块201可以选择列221和223作为候选主题列。例如,列221和223可以 在表格211的最左边的N个非数字列内,而列221和223中的值可以也满足差异性阈值。候选 列选择模块201可以将列221和223发送给分数计算模块202。另一方面,列222可以是数字列 和/或在列222中的值可能不是足以区分的。这样,列222不被考虑为候选主题列。
[0072]分数计算模块202可以从候选列选择模块201接收列221和223。
[0073]方法300包括,对于每个主题列候选,从多个值中标识与跨多个其它表格的一个或 多个列名成对的任意值的出现(302)。例如,对于列221,分数计算模块202可以标识在表格 集212中的任意一个表格中的与列名成对的值22以、2218、221(:、2210等的任何出现。类似 地,对于列223,分数计算模块202可以标识在表格集212中的任意一个表格中的与列名成对 的值223六、2238、223(:、2230等的任何出现。在一个方面中,表格集212包含多个关系型《613表 格。
[0074]方法300包括,例如,对于每个主题列候选,基于所标识的出现计算主题候选列的 分数,所计算的分数指示候选列是主题列的可能性(303)。例如,分数计算模块202可以计算 列221的分数231,并计算列223的分数233。
[0075]在一些方面中,要么替代地和/或组合地,分数计算模块202在分别计算分数231和 233时考虑列221和223中的值的出现与在知识库214中的相同概念/类型内的实体。
[0076]分数计算模块202可以将列221/分数231和列223/分数233发送给主题列选择模块 203。主题列选择模块203可以从分数计算模块202接收列221/分数231和列223/分数233。 [0077]方法300包括根据候选分数选择至少一个主题列候选作为表格的主题列(304)。例 如,主题列选择模块203可以根据分数231和233将列223分类为主题列。将列作为主题列的 选择可以被发送给一个或多个表格注释模块203、特征计算模块104以及索引构建模块106 中的一个或多个。
[0078] 在一些实现中,标识了多个主题列。例如,表格可以包括多种指向表格的主题的方 式,例如诸如,以不同的语言,使用缩写等。主题列也可能分隔在多个列之间,例如诸如名 (first name)和姓(last name)。
[0079] 对于主题列检测,可以利用在web表格的语料库中的列名对的共同出现。如果候选 主题列的列名对与以某种规律出现,则它是主题列和属于该主题的属性的可能性增加。可 以类似地考虑实际单元格值。
[0080] 这样,标识主题列是有用的,因为可以随后确定其它列是主题列的属性。用户可以 搜索特定属性。当用户具有他们自己的表格时,主题列检测可以针对数据查找数据搜索来 执行。例如,用户可以在与特定主题相关的电子表格上工作。用户可以输入"加入人口"来搜 索覆盖特定主题局域并具有人口的表格。
[0081] 使用表格的列标题检测
[0082] 图4示出便利于检测表格的列标题的示例的计算机体系结构。参考图4,计算机体 系结构400包括候选列名构建模块401、频率计算模块402以及列标题检测模块403。候选列 名构建模块401、频率计算模块402以及列标题检测模块403中的每个都可在网络上彼此相 连(或为网络的一部分),所述网络例如是诸如局域网("LAN")、广域网("WAN")和甚至因特 网。因此,候选列名构建模块401、频率计算模块402以及列标题检测模块403以及任何其它 连接的计算机系统及其组件都可以创建消息相关数据并通过网络交换与消息相关数据(例 如,网际协议("IP")数据报和利用IP数据报的其它更高层协议,诸如传输控制协议 ("TCP")、超文本传输协议("HTTP")、简单邮件传输协议("SMTP")等)。
[0083]候选列名构建模块401、频率计算模块402以及列标题检测模块403可以被包括在 表格理解模块102中。或者,候选列名构建模块401、频率计算模块402以及列标题检测模块 403可以在表格理解模块102之外工作。
[0084]候选列名构建模块401被配置为从表格定义数据中构建候选列名。表格定义数据 可以包括定义表格的数据以及从表格导出的数据。候选列名构建模块401可以创建候选列 名集,所述集包括在专门的列标题中(例如在<th>或<thead>超文本标记语言(HTML)标签 内)出现的列名和/或出现在表格中的第一行的数据中的列名。
[0085]频率计算模块402可以被配置为在任意表格中(例如表格集424中)要么作为列名 要么作为单元格值出现的每个串的出现频率。频率计算模块402可以计算包含作为候选列 名的串的表格的数目(CCNFreq)以及包含该串(但不作为候选列名)的表格的数目(Non-CCNFreq)〇
[0086]列标题检测模块可以被配置为基于表格中的串的CCNFreqs和Non-CCNFreqs来检 测表格中的一行作为列标题。例如,当数据的第一行中的串(值)具有比Non-CCNFreq更高的 CCNFreq时,第一行更可能是列标题。
[0087]具体而言,例如,¥1,¥2,'",¥11可以表示表格的第一数据行中的值。0^^叫(¥ 1)指 示在其中出现Vi的表格的数目,所述Vi要么作为明确的列标题(例如在<th>或<thead>之 内),要么作为数据的第一行(例如当没有明确定义列标题时hNon-CCNFreq^)指示在其 中出现Vi的表格的数目,所述有作为明确的列标题或作为数据的第一行。当CCNFreq (VANon-CCNFreqW)的值的V#数超过指定的阈值(例如5),可以选择一个行作为列标 题。在一些方面中,列标题检测模块403根据公式457选择列标题。在公式457中,Θ可以依据 与检测列标题相关联的严格度来变化。
[0088]列标题检测模块403还可以考虑如果表格已经被明确定义了列名和/或任意值h, ν2,···,νη是数字。如果表格已经明确定义了列名,则包含了除被明确定义的列名之外的名字 的行较不可能是列标题。类似地,如果行含有数字值,该行较不可能是列标题。
[0089] 还可以考虑候选单元格中的个别的标记的频率。在一方面,频率计算模块402可以 被配置为每个标记在串(例如候选列名)中出现的频率,所述串在任意表格中(例如在表格 集424中)要么作为列名出现,要么作为单元格值出现。例如,可以从串"Avg.Rainfall"中标 识出标记"Avg."和"Rainf al Γ。可以分别计算"Avg. "和"Rainf al Γ的频率,因为这些标记 可以在其它位置中出现。例如,"Rainfall"可以单独作为列名出现。"Avg."可以在列名 "Avg. Temperature" 中出现。
[0090] 频率计算模块402还可以在标记级别频率上实现适当的聚集函数。
[0091 ]列标题检测模块403可以被配置为基于表格中的标记的CCNFreqs和Non-CCNFreqs 来检测表格中的一行作为列标题。
[0092]图5示出了用于检测表格的列标题的示例方法500的流程图。方法500将参考计算 机架构400的组件和数据来描述。
[0093]方法500包括从定义表格的数据中构造该表格的候选列名集(501)。例如,候选列 名构造模块401可以接收表格411和表格定义412。表格定义412可以定义表格411的一些属 性。如所示,表格411包括行421(第一行)、422、423等。每个行包含可能是列名的值。行421包 括值 421A、421B、421C 等。行422包括值422A、422B、422C 等。行423包括值423A、423B、423C 等。 [0094]从表格定义412中,候选列名构造模块401可以确定没有为表格411明确定义列名。 这样,候选列名构造模块401可以从行421(第一行)的值中构建候选列名集。例如,候选列名 构造模块401可以构造候选列名421A、候选列名421B等。
[0095]候选列名构造模块401可以将候选列名421A、候选列名421B等发送给频率计算模 块402。频率计算模块402可以从候选列名构造模块401接收候选列名421A、候选列名421B 等。
[0096] 方法500包括对于在候选列名集中的每个候选列名:通过从其它表格集中标识一 个或多个其它表格来计算该候选列名的候选列名频率,所述一个或多个其它表格也包含了 该候选列名作为候选列名(502)。例如,频率模块402可以计算候选列名421A的候选频率 411,可以计算候选列名421B的候选频率413等。为了计算候选频率411,频率模块402可以从 表格集424 (例如web表格集)中标识一个或多个表格,该一个或多个表格也包含候选列名 421A作为候选列。类似地,为了计算候选频率413,频率模块402可以从表格集424中标识一 个或多个表格,该一个或多个表格也包含候选列名421B作为候选列。类似计算可以用于计 算其它候选列名(即行421中的其它值)的候选频率。
[0097] 方法500包括对于在候选列名集中的每个候选列名:通过从其它表格集中标识第 二一个或多个其它表格来计算该候选列名的非候选列名频率,所述第二一个或多个其它表 格包含了该候选列名但没有被作为候选列名(503)。例如,频率模块402可以计算候选列名 421A的非候选频率412,可以计算候选列名421B的非候选频率414等。为了计算非候选频率 412,频率模块402可以从表格集424中标识一个或多个表格,该一个或多个表格也包含候选 列名421A但不作为候选列名。类似地,为了计算非候选频率413,频率模块402可以从表格集 424中标识一个或多个表格,该一个或多个表格也包含候选列名421B但不作为候选列名。类 似计算可以用于计算其它候选列名(即行421中的其它值)的非候选频率。
[0098]频率计算模块402可以将候选列名421A与候选频率411以及非候选频率412-起发 送给列标题检测模块403。类似地,频率计算模块402可以将候选列名421B与候选频率413以 及非候选频率414 一起发送给列标题检测模块403。列标题检测模块403可以从频率检测模 块402-起接收候选列名421A与候选频率411以及非候选频率412。类似地,列标题检测模块 403可以从频率检测模块402-起接收候选列名421B与候选频率413以及非候选频率414。列 标题检测模块403还可以访问表格定义数据412和表格411。
[0
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1