[发明专利]学习数据过滤在审
申请号: | 201780048808.9 | 申请日: | 2017-08-02 |
公开(公告)号: | CN109564588A | 公开(公告)日: | 2019-04-02 |
发明(设计)人: | R·辛格;S·古尔瓦尼;王新宇 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F17/24 | 分类号: | G06F17/24 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 过滤 表达式集合 交集 有向无环图 结果集合 学习数据 用户提供 不一致 生成器 数据项 减法 减去 运算 创建 | ||
基于由用户提供的正例和反例来过滤诸如字符串的数据项,其中正例待被包括在结果集合中,而反例待被排除。对于每个例,过滤生成器确定该例满足的表达式集合。与正例对应的表达式被交集,并且从交集中减去与反例对应的表达式,以创建与每个正例一致并且与每个反例不一致的表达式集合。表达式可以被表示为有利于诸如交集和减法的运算的有向无环图。
背景技术
电子表格中的数据过滤是终端用户面临的常见问题。在具有大量数据的数据集合中,用户通常希望基于一些标准过滤数据以利用数据子集合工作。虽然某些电子表格可能允许用户编写正则表达式(regular expressions)来过滤数据,但许多用户缺乏编写这种复杂表达式所需的技能。
发明内容
本公开描述了用于基于从用户获得的例(examples)来过滤数据集合的技术。例如,用户可以提供用于包含在结果集合中的正例,以及从结果集合中待排除的反例。过滤合成引擎分析每个例,并且针对每个例产生一个或多个正则表达式或者与该例一致的其它令牌序列(token sequences)。与正例对应的正则表达式集合然后被交集,并且从交集中减去与反例对应的正则表达式集合。这产生令牌序列集合,其中该令牌序列集合中的每个令牌序列与每个正例一致,并且该令牌序列集合中的每个令牌序列与每个反例不一致。
域特定语言(DSL)被用于表示令牌序列方面的过滤表达式。DSL在可能的表达式的空间上施加结构,以便在保持语言表达性的同时实现高效学习,以编码现实世界的数据过滤任务。有向无环图(DAG)被用于表示令牌序列集合。
提供本发明内容以便以简化的形式介绍一些概念,这些概念将在下文的具体实施方式中进一步描述。本发明内容不旨在标识所要求保护的主题的关键或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附图说明
参照附图描述具体实施方式。在附图中,附图标记的最左边的数字标识首次出现该附图标记的附图。在不同附图中使用相同的附图标记表示相似或相同的组件或特征。
图1是示出用于基于由用户提供的例来过滤数据项的系统的框图。
图2是示出基于由用户提供的例来过滤字符串的例方法的流程图。
图3A和图3B是示出根据由用户提供的例来过滤数据项的序列的示图。
图4是示出基于由用户提供的例字符串来确定过滤表达式的例方法的流程图。
图5是示出确定基于谓语的过滤表达式的示例方法的流程图。
图6是示出诸如可以被用于表示令牌序列的有向无环图(DAG)的示图。
图7是示出来自例字符串的DAG的构造的示图。
图8A-图8D是示出与不同谓语对应的DAG的示图。
图9是示出使用DAG确定过滤表达式的示例方法的流程图。
图10是示出确定表示多个令牌序列的DAG的示例方法的流程图,该多个令牌序列中的每个令牌序列与多个正例字符串一致,并且该多个令牌序列中的每个令牌序列与多个反例字符串不一致。
图11A和图11B是示出用于从第一DAG中减去第二DAG的示例方法的流程图。
图12A-图12C是示出图11A和图11B的方法的操作的示图。
图13是示出创建表示析取的令牌序列集合的DAG列表的例方法的流程图。
图14是示出合并列表的DAG的示例方法的流程图。
图15是示出创建表示析取的令牌序列集合的DAG列表的另一例方法的流程图。
图16是示出对令牌序列进行排序的示例方法的流程图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780048808.9/2.html,转载请声明来源钻瓜专利网。