CN102243647A - 从结构化数据中提取高阶知识 - Google Patents
从结构化数据中提取高阶知识 Download PDFInfo
- Publication number
- CN102243647A CN102243647A CN2011101288559A CN201110128855A CN102243647A CN 102243647 A CN102243647 A CN 102243647A CN 2011101288559 A CN2011101288559 A CN 2011101288559A CN 201110128855 A CN201110128855 A CN 201110128855A CN 102243647 A CN102243647 A CN 102243647A
- Authority
- CN
- China
- Prior art keywords
- data
- model
- search
- user
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000014509 gene expression Effects 0.000 claims abstract description 132
- 238000000034 method Methods 0.000 claims abstract description 78
- 238000013500 data storage Methods 0.000 claims abstract description 9
- 238000004364 calculation method Methods 0.000 claims description 73
- 230000004044 response Effects 0.000 claims description 23
- 230000006855 networking Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 18
- 230000009193 crawling Effects 0.000 abstract 1
- 238000000605 extraction Methods 0.000 description 61
- 230000008569 process Effects 0.000 description 16
- 238000003860 storage Methods 0.000 description 15
- 230000027455 binding Effects 0.000 description 12
- 238000009739 binding Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000011156 evaluation Methods 0.000 description 8
- 230000009471 action Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000000547 structure data Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 239000007799 cork Substances 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 150000001720 carbohydrates Chemical class 0.000 description 1
- 235000014633 carbohydrates Nutrition 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000002591 computed tomography Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000009533 lab test Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000002595 magnetic resonance imaging Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24564—Applying rules; Deductive queries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
发明涉及从结构化数据中提取高阶知识。描本述了用于对可以从数据存储设备的网络中获得的内容进行基于高阶知识的搜索的系统和方法。在各实施方式中,标识表示内容的关系框架的至少一个计算表达式,并将其提供到信息检索系统,以供用于搜索用户所希望的内容。内容的关系框架可包括将某些内容与其他内容绑定、相关或相关联的规则、表达式、等式和/或约束。可以通过处理结构化数据确定计算表达式。可以在爬行网络期间标识结构化数据,或者可以显式地将它们提供给提取器。信息检索系统对计算表达式的使用可以比利用传统的信息搜索方法更高效并且更准确地向用户返回所需内容。
Description
技术领域
本发明涉及信息搜索,尤其涉及从结构化数据中提取高阶知识。
背景技术
当前,万维网通过借助于Web的通信,提供作为数据存储数百万计算机管理的存储设备上的巨大的信息源。如此处所使用的,“信息”或“内容”可以表示在计算设备的网络中可用的任何类型和形式的信息性材料以及处理器可执行应用程序,例如,文本、声音(例如,歌曲),数值(例如,图、表)、视频、视听、历史、统计、交互式网页、脚本等等。当今,人可以几乎在世界上的任何位置使用个人计算机或移动通信设备来轻松地访问巨大的信息源。
虽然巨大的信息量轻松地可用,但是,人或网络的“用户”搜索并检索用户所希望的特定内容常常是困难的。例如,当使用当前搜索工具时,可能向用户返回数千或数百万的“命中”,可以按照与由用户输入的关键字的接近度,与标识网页的索引中所保留的单词进行比较,并按照当前流行度,例如,基于到网页的多个链接,对“命中”进行排序。某个人所希望的特定内容可能不是流行的,在可以由用户标识并检索所希望的内容之前,对其检索可能需要大量的搜索和/或繁琐地查看数以百计的“命中”。在许多情况下,传统的搜索引擎返回与用户所希望的信息不相干的过多的“命中”。同样,所希望的内容可能以难以表达为传统的搜索查询的方式与其他内容关联。
发明内容
本发明提供了用于标识可以表征将响应用户对所需内容的请求的信息的高阶知识的方法和系统。在各个方面,高阶知识由根据特定结构类型(例如,列表、表、序列、电子表格等等)而结构化的数据的存在来表示。包括约束、规则、表达式,和条件的任何组合的关系框架可以管控数据的结构化,并表示高阶知识。约束、规则、表达式,和条件可以将特定数据与其他数据绑定、相关和/或相关联。在各实施方式中,可以由可由计算机执行的至少一个计算表达式来标识和表示关系框架。可以向信息检索系统(例如,具有适用于在搜索栈中使用计算表达式的搜索引擎的系统)提供计算表达式。可以使用此处所描述的系统和方法例如来通过查找和检索具有在由计算表达式捕捉到的高阶知识中反映的特征的内容,来搜索可在万维网上获得的所需内容。与传统的搜索方法相比,使用高阶知识的搜索方法,可以更高效地搜索巨大的数据库,且更准确地标识用户所需内容。
在某些实施方式中,由信息检索系统或中介根据接收到的数据确定表示关系框架的计算表达式,接收到的数据被以自动化或半自动化方式处理,以标识关系框架,并将它转换为一个或多个计算表达式。在某些实施方式中,可以基于与由信息检索系统接收到的数据相关联的元数据,来标识计算表达式和/或关系框架。在某些情况下,可以可另选地基于模式匹配或其他处理技术来标识关系框架。可以向搜索栈提供由信息检索系统标识的任何计算表达式,以便包括在搜索过程中。搜索栈可以根据计算表达式来定位、检索和/或过滤数据。以此方式,可以将反映高阶知识的搜索结果返回到请求所需内容的用户。
此处描述了用于搜索并检索多个数据存储设备上的信息的系统。该系统包括至少一个被配置成从至少一个联网数据存储设备接收数据的输入组件,以及至少一个被配置成向至少一个信息检索系统传输数据的输出组件。该系统还包括适用于接收根据至少一个关系框架结构化的数据的至少一个处理器。在各实施方式中,关系框架表示高阶知识的至少一个特征。处理器还可以适用于处理接收到的数据以标识至少一个关系框架,并将关系框架表示为一个或多个计算表达式。在各实施方式中,计算表达式可由至少一个计算机处理器执行。标识关系框架并将它表示为一个或多个计算表达式的处理器可以向适用于将计算表达式包括在搜索栈中的信息检索系统提供计算表达式,而搜索栈定位并检索用户所需内容。
还可和如上文所描述的系统一起执行有用的方法。在一个实施方式中,用于搜索和检索存储在多个数据存储设备上的信息的方法包括由与信息检索系统进行通信的至少一个处理器接收根据至少一个关系框架结构化的数据。该方法还可以包括由至少一个处理器处理接收到的数据以标识关系框架,并由至少一个处理器将关系框架表示为一个或多个计算表达式,这些计算表达式可由至少一个计算机处理器执行。
可以理解,本发明可以作为计算机可执行指令或代码被包含在制造的非瞬态计算机存储介质中。在各实施方式中,指令由基于计算机处理器的系统读取,并使系统适应以执行如上文所描述的方法步骤,或如下面所描述的本发明的替换实施方式的方法步骤。
以上发明内容是对由所附权利要求定义的本发明的非限定性的概述。
附图说明
附图不旨在按比例绘制。在附图中,各个附图形中示出的每一完全相同或近乎完全相同的组件由同样的标号来表示。出于简明的目的,不是每个组件在每张附图中均被标号。在图形中:
图1是示出其中可以实施本发明的一些实施方式的计算环境的高级框图;
图2是适用于执行与数据关系的高阶知识相关联的计算表达式的搜索栈的实施方式的体系结构框图;
图3描绘了可以包括声明性模型的规范的语句类型;
图4是诸如那些可以为图3的声明性模型指定的语句的示例的图示;
图5是根据某些实施方式的可以在搜索栈执行期间执行的过程的流程图;
图6是用户可以用来输入搜索查询并查看响应于查询返回的显示的信息的用户界面的示例;
图7A是示出用于标识表示关系框架的计算表达式的系统的实施方式的框图;
图7B描绘了根据高阶知识的数据关系的实施方式;以及
图8A-8B是描绘用于标识表示用于基于高阶知识的搜索的关系框架的计算表达式的方法的实施方式的流程图。
具体实施方式
概览
此处所描述的方法和系统实施方式涉及从结构化数据标识可以用于基于计算机处理器的信息检索系统中的高阶知识。可以将高阶知识格式化,以便信息检索系统可以应用知识以定位和检索系统的用户所需内容和/或数据。基于高阶知识的搜索可以提高信息检索系统标识用户所需内容和数据的效率和准确性。
为便于理解,下面定义了在本发明中所使用的多个术语。术语“高阶知识”是指定义反映在一组数据中的模式、关系、规则等等的抽象推理。术语“结构化数据”被用来指代具有结构的数据块或组。术语“结构类型”被用来指代诸如数据的表、列表、序列或电子表格等可标识结构类型。术语“关系框架”被用来指代将特定数据相关到结构化数据集中的其他数据的规则、表达式、绑定、计算等等。可以有表示高阶知识的特征并反映在结构化数据中的规则、表达式、绑定、计算或其他计算表达式的任何组合。术语“计算表达式”被用来指代表示为计算机代码或以任何其他合适的机器语言表示的计算机可执行表达式。
作为引言和出于启发式目的,现在将描述高阶知识标识和基于高阶知识的搜索的示例。
常规搜索引擎适用于爬行网络以标识在向搜索引擎展示的网页、网站或任何数据存储中标识的项或关键字。这些项可以被用来索引页面、站点或数据存储。然而,常规搜索引擎不适用于提取如何在这些信息源中组织内容的高阶知识。例如,一个信息源处的数据可包括与从该信息源可用的其他数据相关的数据。如果在对数据进行排序中固有的高阶知识是已知的,并可以由信息检索系统应用,则信息检索系统可以更好地定位对用户请求作出响应的信息。
在某些实施方式中,信息检索系统可以处理接收到的数据,以标识数据中隐式地或显式地包含的关系框架。此关系框架可以按可以由信息检索系统在响应于用户请求生成信息时应用的格式来表示。在某些实施方式中,高阶知识可以被表示为可以包含一个或多个表示等式、约束或规则的计算表达式的信息模型。带有可以反映隐式高阶知识的组织的数据结构类型的简单示例是电子表格、列表、表或序列。高阶知识的其他示例包括图、图表、关系图等等。在各实施方式中,本发明的信息检索系统适用于标识表示在网络上向搜索引擎展示的数据中的高阶知识的关系框架,并生成捕捉高阶知识的一个或多个计算表达式。可以将一个或多个计算表达式包括到现有模型中,或者可以定义由信息检索系统使用的新模型中。但是,应该理解,被处理以生成表示高阶知识的模型的数据可以来自任何合适的源,在某些实施方式中,可以提供专门用于生成供信息检索系统使用的模型的数据。
作为具有隐式高阶知识的结构化数据的一个示例,考虑存储由政府机构提供的调查结果或统计结果的文档,其中按重要性的顺序列出了影响房屋买主的决定的五个引用最多的因素(F1,F2,…F5)。这些因素可以是:F1:邻近地区,F2:价格,F3:大小,F4:与工作单位的距离,以及F5:房龄。这些因素可以在示出因素以及该因素被引用的次数的有序列表或表中提供。数据的列表或表揭示表示高阶知识的关系框架。此处所描述的信息检索系统可以标识由数据展示的关系框架,例如,影响房屋购买的五个最重要的因素的有序列表,并在由信息检索系统执行的搜索类型中,以一个或多个计算表达式的形式使用此信息。作为在一个或多个计算表达式中捕捉的所提取的高阶知识如何对信息检索系统有利的示例,考虑下面的简单情况。
基于计算机处理器的信息检索系统的用户可以在搜索查询中输入“房屋”、“房地产经纪人”和“Eastowne”等项,以便查找有关Eastowne附近待售的房屋的信息。搜索查询的项可以搜索的上下文的一部分。但是,对信息检索系统可用的任何信息都可以构成上下文,包括由用户进行的以前的搜索,用户简档,或有关用户的其他信息。在此示例中,上下文可以表示用户正在查找Eastowne村的待售的房屋。信息检索系统可以在搜索栈中包含捕捉期待购买房屋的人按特定重要性顺序加权五个因素的高阶知识的计算表达式。信息检索系统可以定位、检索,以及向用户提供反映高阶知识以及可任选地响应于与高阶知识相关联的提示由用户提供的任何附加输入的搜索结果。以此方式,可以更高效地检索到与用户的需求有关的用户所需内容。
可以理解,可以标识并挖掘上面所列的其他类型的结构化数据,以获取表示高阶知识的关系框架。一旦标识了关系框架,就可以由信息检索系统和/或由捕捉高阶知识的系统的用户来生成一个或多个计算表达式。然后,可以将计算表达式包含在搜索栈中,以更高效并准确地向系统的用户提供搜索结果。
作为另一个示例,可以预期,结构化数据,例如,根据一个或多个关系框架组织的数据和/或内容,对于通过信息检索系统访问和搜索将变得越来越重要。目前,数据所有者/发布者开始向搜索引擎展示真正简单聚合(RSS)web馈源,web服务和电子表格文件。然而,搜索引擎目前没有被配置成捕捉和索引有关数据和/或发布者/所有者拥有的或可以由数据的聚集者或者管理者添加的内容之间的关系的高阶知识。
作为另一个示例,通过处理表示RSS馈源(表示来自气象台的数据)的数据,可以标识符号“℃”、时间和表示特定时间时的温度的值之间的关系。利用常规搜索引擎,指定一个查询以使用常规搜索查询来返回该信息将是困难的。如果用户正在搜索某一时间间隔平均或最高温度,则难度将更大。然而,通过在模型中捕捉反映在RSS馈源中的数据的排序的较高阶知识,可以通过应用该模型,自动地生成所需信息。
同样,世界的大量结构化数据是以电子表格形式存在的。可以使用电子表格来合并和关联来自不同的源的数据,整理,并共享数据。电子表格内的信息可隐式地和/或显式地包括有关数据的高阶知识,例如,以计算出的列及其他计算关系的形式存在的知识。目前,搜索引擎没有办法从电子表格或其他类型的结构化数据和/或内容中提取此高阶知识,并以可能影响搜索结果的方式索引知识。此外,除例如由电子表格所提供的含义以外,数据和内容所有者、发布者、聚集者或者管理者没有办法将高阶知识添加到它们的数据中。具体而言,表示有关结构化数据的高阶知识的等式、约束和规则目前没有被向搜索引擎展示。
在本发明的各实施方式中,至少一个计算机处理器适用于标识表示结构化数据的高阶知识的关系框架。对关系框架的标识可以包括标识或生成表示关系框架的至少一个计算表达式。可以向信息检索系统提供计算表达式用于在联网的计算环境中搜索用户所需内容。
系统实施方式
图1是示出其中可以实施本发明的一些实施方式的计算环境100的高级图示。计算环境100包括与计算设备105交互的用户102。计算设备105可以是任何合适的计算设备,诸如台式计算机、膝上型计算机、移动电话、或PDA。计算设备105可以在任何合适的计算体系结构下操作,并且包括诸如由微软公司开发的WINDOWS操作系统的变体等任何合适的操作系统。
计算设备105可以具有经由任何合适的有线或无线通信介质来与服务器106通信的能力。在计算设备105与服务器106之间的通信可以经由计算机网络108,该计算机网络108可以是诸如因特网、公司内联网、或蜂窝网络等任何适当数量或类型的电信网络。服务器106可以使用任何合适的计算体系结构来实现,并且可以被配置有诸如由微软公司开发的WINDOWS操作系统的变体等任何合适的操作系统。此外,虽然在图1中服务器106被示为单个计算机,但它可以是被配置成用作相干系统的任何合适数量的计算机,例如服务器场、中介处理设备和服务器,或者中介和服务器场。中介处理设备可被设置在服务器和网络之间的系统中,并且管理去往和来自服务器的通信。
在图1的示例中,服务器106或服务器的代理或中介(两者都未示出)可用作搜索引擎,以允许用户102检索与搜索查询相关的信息。用户可以诸如以任何合适的方式(诸如经由键盘、键区、鼠标或语音输入)通过将查询术语输入到计算设备105来显式地指定查询。Additionally and/or alternatively,theuser may provide an implicit query.例如,计算设备105可以配备有(或经由有线或无线连接来连接到)数码相机110。诸如对象、场景、条形码扫描等取自数码相机110的图像可以用作隐式查询。
无论由触发查询的生成的用户102提供的输入类型是什么,计算设备105可以将查询发送给服务器106以获得与该查询相关的信息。当检索诸如例如网页等与搜索查询相关的数据之后,服务器106可以将一个或多个模型应用于该数据以生成返回给用户102的信息。在某些实施方式中,一个或多个模型可以结合搜索查询来应用以反映信息检索系统如何定位和检索用户所需信息。由服务器106生成的信息可以经由计算机网络108来发送,并且在计算设备105的显示器104上显示。显示器104可以是任何合适的显示器,包括LCD或CRT显示器,并且可以是内置或外置于计算设备105。
图2是根据某些实施方式的诸如可由图1的服务器106实现的搜索栈200的体系结构框图。搜索栈200的组件可以诸如出于负载平衡或冗余的目的、使用任何合适的配置或任何数量的计算设备来实现。例如,结合搜索栈的每一组件来描述的功能可以通过被配置成担当相干系统的不同物理计算机或基于处理器的设备来执行,和/或单个物理计算机可以执行归结到多个组件的功能。另外,在某些实施方式中,可以将归结到搜索栈的单个组件的某种功能分布到多个物理计算机或基于处理器的设备,物理计算机中的每一个可以并行地执行搜索计算的不同部分。
无论搜索栈200的具体配置是什么,可以将用户查询202作为输入经由计算机联网通信介质来提供给搜索栈200,例如结合网络输入到个人计算机或PDA中。用户查询可以是隐式的或显式的,如结合图1所讨论的。在图2的示例中,可以将用户查询202提供给搜索栈200中的输入组件,诸如搜索引擎204,它可以是任何合适的搜索引擎,诸如由微软公司开发的BING搜索引擎。搜索引擎204可以与包括数据索引206的一个或多个存储介质通信。可以将数据索引206存储在任何合适的存储介质上,包括内部或本地附连的介质,诸如硬盘、通过存储区域网络(SAN)连接的存储、或联网的附连存储(NAS)。数据索引206可以按任何合适的格式,包括一个或多个非结构化文本文件、或一个或多个关系数据库。
搜索引擎204可以查阅数据索引206以检索与用户查询202相关的数据。检索到的数据208可以是基于用户查询202和/或诸如用户简档或用户上下文等与该搜索相关的其他因素来检索的搜索结果的数据部分。即,数据索引206可以包括与搜索查询相关的一个或多个因素(例如,用户查询术语、用户简档、用户上下文)与匹配查询和/或与查询相关的数据(诸如数据页面)之间的映射。数据索引206中的映射可以使用常规技术或按任何其他合适的方式来实现。
无论使用数据索引206来检索与搜索相关的数据而执行的映射的类型是什么,检索到的数据208可以包括由搜索引擎204从大数据主体中检索的任何合适的数据,该大数据主体诸如例如,网页、医疗记录、实验室测试结果、财务数据、人口统计数据、视频数据(例如,血管造影、超声)、或图像数据(例如,x光、EKG、VQ扫描、CT扫描、或MRI扫描)。检索到的数据208可以通过搜索引擎204动态地标识和检索,或它可以被高速缓存为由搜索引擎204基于相似或相同查询来执行的先前查询的结果。检索到的数据208可以使用常规技术或按任何其他合适的方式来检索。
搜索栈200还可以包括模型选择组件,诸如模型选择器210,它可以从存储在模型选择器210可访问的一个或多个计算机可读介质上的模型集中选择一个或多个适当的模型214。模型选择器210随后可以将所选模型214应用于由搜索引擎204执行的搜索的结果(即,检索到的数据208)。在某些实施方式中,所选模型214被应用于响应于用户查询而检索到的数据的一个或多个步骤。可以将模型选择器210耦合到模型索引212,后者可以与数据索引206设置在一起或可被设置为单独的索引。模型索引212可以被实现在任何合适的存储介质上(包括那些结合数据索引206来描述的介质),并且可以按任何合适的格式(包括那些结合数据索引206来描述的格式)。模型索引212可以包括与用户的搜索相关的一个或多个因素(例如,用户查询202中的项、用户简档、用户上下文、和/或由搜索引擎204检索到的数据208)与可被应用于获取检索到的数据208的适当的模型214之间的映射。
所选择的模型214可以选自存储在与服务器106(图1)相关联的计算机可读介质上的较大的模型池250。在某些实施方式中,模型池250可以由操作该搜索系统的实体来供应。尽管在某些实施方式中,从其中选择模型214的模型池250中的所有或部分模型由除了操作该搜索系统的实体以外的各方来提供。在某些实施方式中,模型池250中的模型由输入用户查询202的用户来供应。在这一场景中,由模型选择器210访问的模型池250的一部分可以包括被分隔成存储对各个用户是私人的数据,诸如存储提交用户查询202的每一个用户的数据的计算机存储介质。在某些实施方式中,用户的社区可以具有对搜索系统的访问,并且模型池250包括由除了提交用户查询202的用户以外的用户提交的模型。在另外的实施方式中,从中选择模型214的模型池250中的某些或全部模型是由例如模型作者254之类的其他第三方提供的。这些第三方可以包括业务或组织,这些业务或组织具有专用需求或能力以指定要响应于搜索查询来生成的信息的本质。例如,计算距待售房屋的通勤距离的模型可以由不动产代理来提供。计算比较性实验室结果的模型可以由医疗协会来提供。因此,应当理解,可以将任何数量或类型的模型并入模型池250。
可以向搜索栈提供由第三方创作的模型供处理搜索查询时使用。为创作模型,第三方可以使用诸如创作组件256之类的创作组件。创作组件256可包括创作工具,该创作工具允许模型作者254使用作为该工具的一部分的用户界面来指定要包括在模型中的信息。
可以以任何合适的方式实现创作工具并使其供用户或其他第三方使用。例如,它可以是可用于下载并安装在由模型作者254操作的计算设备上的可执行程序,或者也可以是在服务器上执行的(可以是,或者也可以不是搜索栈的一部分)并在web浏览器中向模型作者254显示的应用程序。还可使创作工具对提交搜索查询的任何用户202可用,例如,使其用作搜索栈的一部分。如此,用户202可以针对特定搜索修改现有模型、或由信息检索系统或信息检索系统的代理所生成的模型。
可以以这样的方式设计创作组件256的用户界面和模型的基础规范,以使得不熟悉计算机编程的用户可以轻松地创作模型。例如,用户界面可以接收定义模型的规范的用户输入。用户输入可以是声明性语句的形式,如包括约束、等式、计算、规则和/或不等式的表达式。基于模型作者254与用户界面的交互,创作工具可以以特定格式,如任何合适的文件格式(例如,文本文件、二进制文件、网页、XML等等)来生成模型。在一个实施方式中,由用户输入的用于包括模型的规范的声明性语句以诸如XML之类的文本文件格式来存储。
在某些实施方式中,模型或模型的至少一部分是由信息检索系统或信息检索系统的代理所生成的。信息检索系统的代理可包括与信息检索系统进行通信的任何基于计算机处理器的设备,例如,服务器、计算机、位于服务器106和网络108之间的网络中的中介设备。模型或模型的一部分可以通过处理数据以标识表示高阶知识的关系框架的方式来生成。
信息检索系统或信息检索系统的代理可包括提取器262。提取器262可以是信息检索系统的组件,例如,在服务器上运行的应用程序,或者也可以是单独的元件。提取器262可以是在与信息检索系统进行通信的和/或与搜索栈200进行通信的处理器上操作的应用程序。在某些实施方式中,提取器262与搜索引擎204进行通信,并可以适用于接收至少某些检索到的数据208来作为输入。但是,由提取器262操作的数据可以从任何合适的源中获取,包括从用于发现网络上的内容的如在本领域内已知的“爬行器”。
在某些实施方式中,提取器262处理接收到的数据以标识接收到的数据是否包含某一结构类型的结构化数据,例如,列表、序列、记录、阵列、表、电子表格等等。提取器262可以标识结构化数据类型。对结构化类型的标识可以通过模式匹配来进行,或者也可以通过结构化数据中所包括的结构类型标识符来进行。在一些实现中,提取器处理每一检索到的数据208,以判断结构是否透露至少一个关系框架。在某些实施方式中,搜索引擎204判断检索到的数据208是否包含某一结构类型的结构化数据,而搜索引擎向提取器262只提供这样的结构化数据260。但是,向提取器262输入的数据可以来自任何合适的源。例如,在附加的实施方式中,模型作者254向提取器262提供结构化数据260。
在各实施方式中,提取器262处理结构化数据260以标识至少一个关系框架。基于关系框架,提取器262可以确定将结构化数据集的某些数据绑定到或关联到结构化数据集的其他数据的至少一个规则、表达式、等式或约束。作为示例,提取器262可以基于电子表格或表的两个列中的数据,判断第一类型的数据与第二类型的数据相关联。例如,数据可以通过数学等式来关联。作为另一个示例,提取器262可以基于根据按照表决数或选择的次数确定的比率加权的列表中的数据,判断某些类型的事件具有某一个出现频率。
在某些实现中,提取器262扫描作为结构化数据260接收到的电子表格。提取器262可以扫描电子表格以提取显现在电子表格中的显式的和/或隐式数据结构。例如,提取器262可以标识带有列标题的重复的行、分层结构,或显式地标记的表。在某些实施方式中,提取器262可以标识与诸如外部数据库或解析多维数据集之类的外部数据源的绑定。提取器262可以扫描电子表格以提取在电子表格中引用的计算和/或函数。在某些实施方式中,提取器262扫描电子表格,以提取向电子表格中添加的元数据,元数据表示可以是关系框架的一部分或促进关系框架的识别的信息的元数据。
在某些实施方式中,提取器262通过处理结构化数据260并以计算方式发现隐式地绑定或关联数据的规则、表达式、等式或约束,来确定绑定或关联数据的规则、表达式、等式或约束。作为简单的示例,提取器262可以将电子表格中的第一列数字除以电子表格中的第二列,以发现共同的乘数或共同的累加因子。然后,可以将数据的关系框架标识为:第二列等于第一列乘以乘数,或者第二列等于第一列加累加因子。可以将此关系框架转换为可由处理器执行的一个或多个计算表达式,并记录为模型,以便它可以在第一列或第二列中的类型的数据将被作为对用户的信息请求作出响应的一部分来处理的其他情况下应用。
在一些实现中,提取器262通过处理结构化数据260并提取显式地与数据包括在一起的规则、表达式、等式或约束,来确定绑定或关联数据的规则、表达式、等式或约束。可以使用其他信息来标识向其应用这样的关系的数据类型。作为示例,结构化数据可在首部中作为元数据或根据模式包括结构化数据内的数据类型的显式标识。但是,可以以任何合适的方式,包括基于用户输入,来确定关联的数据类型。
在附加的实施方式中,提取器262结合从模型作者254接收到的输入确定绑定或关联数据的规则、表达式、等式或约束。例如,提取器262可以判断接收到的结构数据208中的数据的一个或多个部分看起来像通过规则、表达式、等式或约束关联,但是,提取器不能确定准确的关系。这可以例如当提取器262处理当被绘制成图时表示趋势的数据时发生。提取器262可以尝试使数据符合线性关系,而数据符合较高阶多项式、指数或三角函数则最佳。在提取器262判断关系框架看起来像存在但是不能准确地确定用于数据的规则、表达式、等式或约束的情况下,提取器262可以向模型作者254或向用户202提供数据,以便模型作者或用户可以帮助标识对于结构化数据的关系框架。在提取器262判断有多个用于结构化数据的规则、表达式、等式和/或约束的情况下,提取器262可以向模型作者254或向用户202提供数据和候选规则、表达式、等式和/或约束,以便模型作者或用户可以消除规则、表达式、等式和/或约束的歧义,以最佳地标识对于结构化数据的关系框架。此外,提取器262可以自动标识数据类型之间的关系,但是,可以要求用户输入确定通过关系联接的数据类型。
图7A描绘了与信息检索系统750进行通信的提取器262的实施方式。在各实施方式中,提取器包括至少一个处理器730、接收结构化数据260的至少一个输入,以及向信息检索系统750提供数据,例如,计算表达式740的至少一个输出。信息检索系统可以接收搜索查询720和计算表达式740,并影响响应于搜索查询在搜索栈200上的搜索。
在各实施方式中,提取器262的至少一个处理器730适用于生成一个或多个计算表达式740,它们表示对于由提取器处理的结构化数据208的规则、表达式、等式和/或约束。每一个被处理的结构化数据都可以产生规则、表达式、等式,和/或约束,而后者又产生不同的计算表达式740集。在各实施方式中,如在图7A中表示的,计算表达式被提供给信息检索系统750,并可由信息检索系统执行。计算表达式740可以包括数学表达式、布尔表达式、条件表达式、声明性表达式、约束、规则、不等式等等的任何组合,它们被编码为由信息检索系统750执行的任何语法或可识别的格式。
在某些实施方式中,提供给信息检索系统750的计算表达式740被作为模型250(图2)包括在搜索栈200中。例如,可以由提取器262处理特定结构化数据260,以产生至少一个计算表达式740,而后者又定义被索引和存储在模型索引212中的一个模型250。在一些实现中,将多个计算表达式740包括到一个模型中。可以根据一个特定结构化数据208或根据多个结构化数据集来确定多个计算表达式。由信息检索系统750索引的任何模型也都可以用于随后的搜索过程中。
在一些实现中,提取器262可以将索引信息与计算表达式一起提供给信息检索系统750。索引信息可以被信息检索系统750用来索引用于存储并随后被信息检索系统750访问的计算表达式740。在某些情况下,索引信息可以被用来构建索引,以便可以响应于用户搜索查询来定位诸如可以由计算表达式740所定义的模型。以此方式,可以响应于用户的信息请求来标识和应用模型,以便在计算表达式中捕捉到的高阶知识可以被用来响应于用户的请求而生成信息。由于信息检索由高阶知识引导,因此,它可能与用户的请求有关。
出于启发式目的,图7B描绘了结构化数据和高阶知识之间的分层关系的一个实施方式。返回到上面阐述的购买房地产的示例,内容710b1可以是列出了影响房屋购买者的购买的五个最频繁地引用的因素的政府网页。提取器262可以根据排序的列表的关系框架710b,处理内容710b1,并标识网页上存在的五组数据。由这样的排序的列表揭示的关系框架710b可以表示高阶知识705,例如,当购买住房时,住房购买者赋予位置、价格、大小、与工作单位的距离,以及建筑物的年龄最大的权重。可以由提取器生成以捕捉此高阶知识的一部分的计算表达式可以是在其中用户正在寻求有关要购买的房屋的信息(诸如:提供关于邻近地区的平均房屋价格的信息,或者首先按照位置然后按照价格和大小对搜索结果进行排序)的上下文可以应用的表达式。可以将这样的计算表达式包括到模型250中,以便该模型捕捉高阶知识。
虽然在图7B中只示出了可以用来标识关系框架的一个内容710b1,但是,在某些实施方式中,可以由提取器262处理多个数据集710a1-710a4,例如,多个网页,以标识关系框架710a。例如,返回到购买房地产的示例,可以处理示出了邻近地区的最近销售价格的多个网页,以标识“本地价格趋势”关系框架。
现在返回到图2,在创作组件256作为搜索栈200的一部分来执行的某些实施方式中(诸如如果它在由模型作者254操作的计算设备上执行),模型作者254向信息检索系统提供使用创作组件256创建的模型,或者使用创作组件256修改的现有的或提取器所创建的模型。在某些实施方式中,提取器262提供作为模型直接提供的计算表达式。然后,信息检索系统可以将所提供的模型存储到模型池250中。如果由模型作者254或提取器262所提供的模型不是合适的格式,则创作组件256可以首先将所提供的模型转换为适当格式,要么自动地要么部分地基于由模型作者254所提供的信息。
在某些实施方式中,为促进方便地将模型添加到模型池250中,图2中所示出的搜索系统包括索引器252。索引器252可以基于模型池250内包含的模型,包括由第三方所提供的模型,由信息检索系统所生成的模型,由信息检索系统的代理所生成的模型,或由提取器262所生成的模型,更新模型索引212。在某些实施方式中,模型池250中的每一模型包含标识在其中可以应用该模型的上下文的元标签。索引器252可以使用这一和附连到网页的元标签类似的信息来构造模型索引212。就此,索引器252可以使用本领域中用于实现web爬寻器来建立页面索引的已知技术来实现。为支持这一实现,模型池250中的每一模型可以被格式化为网页。然而,应当认识到,可以使用任何合适的技术来构造模型索引212,包括机器学习技术或显式人类输入。
为响应于用户请求而生成信息,模型选择器210可以使用用于基于索引来实现搜索引擎的本领域内已知的技术来实现。然而,并非基于数据索引来标识将哪些页面返回到用户,模型选择器210可以使用模型索引212来标识用于生成信息的模型,以提供给用户和/或响应于用户查询而包含在搜索栈中。模型选择器210可以基于与搜索有关的因素和模型索引中的项之间的匹配,来标识模型。但是,可以另选地或另外地使用不准确的匹配技术。在某些实施方式中,声明性模型本身存储在模型索引212中,而在其他实施方式中,模型本身与模型索引212分开存储,但是,应保证在模型索引212中可以适当地标识它们。
搜索栈200还可包括模型应用引擎216,该模型应用引擎216可以向由搜索引擎204检索到的数据208应用所选模型214。在应用模型时,检索到的数据208可以充当由模型应用引擎216对其应用所选模型的参数。在应用模型期间,还可作为对所选模型的输入,提供诸如用户查询202的某些部分之类的附加参数。但是,应该理解,可以在模型中标识图2中所示出的搜索环境内可用的任何数据,或者当应用模型时,由模型应用引擎216使用它们。
作为对由模型应用引擎216执行的搜索结果应用模型的结果,可以生成信息218。可以由搜索栈200的输出组件(未示出)将所生成的信息218返回到用户。但是,可以以任何合适的方式使用所生成的信息,包括作为供由搜索引擎204进行进一步搜索的查询。所生成的信息218可包括由模型应用引擎216执行的模型应用的结果,可包括由搜索引擎204检索到的数据208,或者其任何合适的组合。例如,基于由模型应用引擎216执行的模型应用,向数据208的用户呈现的顺序可以变化,可以修改作为检索到的数据208的一部分呈现的内容,以便它包括附加的或替换的内容,该内容是由模型应用引擎216执行的计算的结果,或者两者的任何合适的组合。如此,当将选择模型214应用到诸如由搜索引擎检索到的数据208之类的原始数据时,所生成的信息218可能处于较高的抽象级别,因此,比原始数据本身对用户更有用。
在响应于搜索查询接收到所生成的信息218之后,用户202可以向搜索栈200提供有关作为产生所生成的信息218的一部分应用的模型的有用性的反馈。因此,搜索栈200还可包括用户反馈分析器258,该分析器258可以接收这样的用户反馈并分析或处理用户反馈。由反馈分析器258执行的分析的结果可以被用来更新模型索引212,例如,以基于对用户反馈的分析,喜欢或不喜欢与特定搜索项相关联的模型。如此,基于用户反馈对模型索引212的更新可以影响由模型选择器210选择哪一个(哪些)模型,并应用这个(些)模型以生成响应于搜索查询返回的信息。可以基于由反馈分析器258执行的分析,以任何合适的方式更新模型索引212。作为示例,反馈分析器258可以直接更新模型索引212,或者它可以将适当的信息传输到索引器252,该索引器252本身可以代表反馈分析器258更新模型索引212。
图3是声明性模型300的数据结构的略图,诸如由图2的模型选择器210选择的模型214中的一个。模型300可以按任何合适的方式来存储。在某些实施方式中,模型被存储在文件中,并且可被视作网页。因此,在这些实施方式中,像其他网页那样,模型300包括用于辅助索引模型(诸如图2的模型索引212)的元标签302
模型300可以包括一个或多个元素,其在所示实施方式中是声明性语言的语句。在某些实施方式中,声明性语言处于不是计算机编程者的人类可理解以及创作的级别。例如,它可以包含等式的语句以及基于等式的求值的结果的形式,诸如等式304和结果305,以及等式306和结果307。在某些实施方式中,模型的语言由提取器262提供。由提取器262所提供的语言可以是声明性的,或者可以是常见的计算机语言,或脚本,例如,C,C++,Java,或者可以是机器语言。等式可以涵盖符号或数学计算。等式可以对于输入数据集执行,或者,可以作为搜索过程的一部分来执行。
模型300还可以包括一个或多个规则(诸如规则308)的语句以及基于对等式的求值的结果的形式(诸如规则结果309)。对某些类型的规则的应用可触发执行搜索,缩窄搜索以限制检索到的数据,或扩展搜索以收集新信息。根据某些实施方式,当诸如由模型应用引擎216应用包含规则(诸如规则308)的模型(诸如模型300)时,对作为模型的应用的一部分来执行的规则的求值生成搜索查询,并且触发要由数据搜索引擎(诸如搜索引擎204)执行的搜索。由此,在这些实施方式中,因特网搜索可以基于通过将模型应用于搜索数据所生成的搜索查询来触发。但规则可以指定任何合适的结果。例如,结果可以是条件语句以及取决于动态地求值的条件是真还是假而应用的结果。因此,规则的结果部分可以指定要有条件地执行的动作、或要返回的信息、或任何其他类型的信息。
模型300还可以包括一个或多个约束的语句,所述约束诸如约束310和结果311。约束可以定义被应用于在模型的应用上产生的一个或多个值的限制。约束的示例可以是不等式语句,诸如将模型应用于从搜索中检索到的数据208的结果大于定义的值的指示。
模型300还可以包括要对输入数据执行的一个或多个计算的语句,所述计算诸如计算312。每一计算还可以具有相关联的结果,诸如结果313。在此示例中,结果可以根据所指定的计算312来标记,使得它可以在模型300内的其他语句中被引用,或以其他方式指定如何可将计算的结果在生成信息给用户中进一步应用。计算312可以是用作为结果的数值来表示的数字计算的表达式,或任何其他合适的计算类型,诸如符号计算或串计算。在将模型300应用于由搜索引擎检索的数据208时,模型应用引擎216可以对数据208执行在模型规格中指定的任何计算,包括尝试求解对数据208的等式、不等式、以及约束。在某些实施方式中,表示模型内的等式、规则、约束或计算的语句可以相互关联,使得作为一个语句的结果被生成的信息可以在模型300内的另一语句中被引用。在这一场景中,应用模型300可能需要确定求值这些语句的次序,使得可以一致地应用所有语句。在某些实施方式中,应用一模型可能需要多次迭代,在所述多次迭代期间只应用语句中的所有参数的值都可用的那些语句。作为某些语句的应用生成被用于应用其他语句的值,那些其他语句可以在连续迭代中求值。如果对迭代中的语句的应用改变了在应用另一语句中使用的参数值,则将基于其依赖的所改变的参数值再次应用该另一语句。对模型中的语句的应用可以按此方式迭代地继续,直到应用该模型中的所有语句的一致结果从一个迭代到另一个迭代中出现,实现稳定且一致的结果。然而,应当认识到,可以使用任何合适的技术来应用模型300。
在某些实施方式中,模型300可以影响搜索过程。例如,响应于由用户202输入的搜索查询,信息检索系统可以在定位和检索信息过程中选择一个模型并将其包括到搜索栈200中。选择的模型可以缩窄或扩展搜索。返回到用户202输入与购买房地产有关的搜索项的示例,可以由信息检索系统选择“房地产购买”模型,该模型可以触发涉及定位和检索有关候选房产的位置、价格、大小、与工作单位的距离,和/或房龄的信息。
图4提供了诸如可以由提取器262为模型300指定或提取和所生成的语句的示例。在图4的示例中,当用户执行房屋搜索时可以选择并且应用该模型,并且在此示例中,该模型将待售房屋与用户的通勤相关。在图4的示例中对模型的应用可以生成每一待售房屋与用户的办公室位置之间的通勤距离的信息和/或时间。由此,规则语句408是来自图3的规则308的示例,它指定将被用作模型计算的一部分的房屋位置的形式。在此示例中,规则语句408指定被标识为房屋位置的一参数是待售房屋的地址、城市和州的全球定位系统(GPS)坐标的形式。当模型被应用时,可以由模型应用引擎216基于检索到的数据208将值给予这些参数。在此示例中,当网页或检索到的数据的其他项包含被规则308的应用识别为房屋位置的信息时,规则308可以求值为真。因此,可以使用规则308来标识模型内的其他语句对其应用的数据项。
等式语句404是图3的等式304的示例,该等式语句404基于规则语句408中指定的待售房屋的位置,提供用于到达通勤距离要执行的计算,以及在此示例中被指示为办公室位置且可以对模型应用引擎216可用的值。在此示例中,办公室位置是对模型的输入参数,该输入参数可以例如作为用户查询的一部分、作为用户简档或用户上下文的一部分来提供。然而,房屋位置是基于从对模型的另一输入(诸如作为搜索引擎的结果来返回的数据208)所接收的规则语句408的应用。
结果语句405是图3的结果305的示例,该结果语句405指定如何显示对等式语句404所执行的计算的结果。由此,在此示例中,结果语句405根据与被显示在对房屋的描述旁边的搜索结果来指定到每一待售房屋的通勤距离,该通勤距离是可基于检索到的数据208来建立的值的参数。
图4的示例示出了可以在模型中存在以向用户查询显示结果的某些语句。在此示例中,结果与待售房屋相关。因此,图4中描绘的模型可以由模型选择器210(图2)响应于请求关于待售房屋的信息的用户查询202来选择。模型应用引擎216可以将模型应用于检索到的数据208中的数据的每一项。然而,不是每一检索到的数据的项都可以遵循规则308或由模型内的语句建立的其他条件。因此,不是检索到的数据208的每一项都可以被包括在所生成的信息218中。然而,图4示出了可以将不明确地包含在检索到的数据208中的其他信息包括在所生成的信息218中。在图4的简单示例中,被称为“通勤距离”的参数的值在应用图4所描绘的模型时由模型应用引擎216来计算。
图5是根据某些实施方式的可由诸如图2的搜索栈200等搜索栈在执行期间执行的过程的流程图。该过程可以当诸如图1的计算设备105等计算设备代表用户202将搜索查询发送给诸如图2的搜索引擎204等搜索引擎时开始。然而,并不要求搜索过程由明确的用户输入或按文本形式的明确的用户输入来触发。非文本输入或暗示的用户数据可以被视为触发对图5的过程的执行的查询。
在步骤502,搜索栈可以接收用户的查询。如以上讨论的,用户的查询可以是隐式的或显式的。例如,在某些实施方式中,搜索栈可以生成代表用户的搜索查询。搜索栈例如可以基于与用户相关联的上下文信息来生成搜索查询。这可以例如由图2的搜索引擎204执行。
不管查询是如何生成的,在步骤503中,可由信息检索系统来选择第一模型或模型集以便包括在搜索栈200中。第一模型可缩窄或扩展搜索过程。第一模型可由提取器262生成或以任何其他合适的方式获取。第一模型的实现可以在或不在搜索过程中使用。
在步骤504中,搜索引擎可以从具有至少一个数据存储设备的网络中定位和检索数据。可以基于搜索查询的匹配项,或基于在搜索栈中执行第一模型,或者匹配和执行的组合,选择检索到的数据。返回的数据可以基于查询(和/或诸如用户上下文和用户简档之类的其他因素)和诸如图2的数据索引206之类的可以被搜索引擎访问的索引中的项之间的匹配(无论是显式的或隐式的)。
该过程随后前进至步骤506,其中搜索栈可以检索适于用户的搜索的一个或多个第二模型。在图2的示例性实现中,合适的第二模型可以由模型选择器210结合索引(例如,模型索引212)来选择,该索引将用户的查询和/或由搜索引擎返回的数据与一个或多个合适的模型相关。第二模型可由提取器262来创作、生成,或者可包括所创作的和提取器生成的模型的组合。
在步骤508,搜索栈随后可以将检索到的第二模型应用于检索到的数据208。在图2的示例性实现中,这一步骤可以由模型应用引擎216来执行。除了检索到的数据本身之外,诸如用户查询(或其一个或多个部分)等与索引有关的其他因素也可以用于对作为将该第二模型应用于检索到的数据的结果来执行的一个或多个计算的输入。在步骤508,处理可能需要多次迭代。在某些实施方式中,第二模型可以应用于数据的每一项,诸如包括在检索到的数据208中的网页。因此,在步骤508,在对包含在检索到的数据208内的每一项进行重复的意义上,处理可以是迭代的。另选地或另外地,在步骤508,处理可以是迭代的,因为无论第二模型是被应用于数据的各个项还是数据项的集合,第二模型的应用都可能需要迭代地应用第二模型中的语句,直到实现稳定且一致的结果。在模型选择器210可以选择多个第二模型、使得遵循每一个所选第二模型的信息可以通过在步骤508的处理来生成的意义上,步骤508的处理可以另选地或另外地是迭代的。
转向步骤510,搜索栈随后可以输出所生成的结果作为将第二所选模型应用于检索到的数据的结果。在此示例中,输出可能需要将信息返回给随后可以为用户将该信息呈现在显示器上的用户计算机。在某些实施方式中,所生成的信息包括将第二模型应用在从搜索引擎返回的数据以及数据本身上的结果的某种组合。例如,所生成的信息可以基于第二模型的应用来过滤搜索数据或对搜索数据重新排序,或可以提供附加信息或按与由搜索结果返回的数据不同格式的数据。在某些实施方式中,对搜索数据的重新排序可以结合时间元素。例如,第二模型可以标识多个事件的集合的时间顺序。这一模型的应用随后可能需要标识与那些事件有关的搜索数据,并且生成按根据模型的时间顺序的一顺序向用户返回的信息。然而,应当认识到,所生成的信息的本质是可作为第二模型的应用的结果被指定的任何适当的形式,它可以包含诸如计算、等式、约束和/或规则等元素的组合。
当(经由用户的计算设备)向用户返回数据之后,图5的过程可以被终止。
图6是用户可以用来在信息检索系统中访问和执行搜索的用户界面的示例。在此示例中,用户可以输入搜索查询,并且查看响应于该查询来返回的信息。尽管可以使用任何合适的应用来生成用户界面,但图6示出了该界面由web浏览器600显示。web浏览器600可以是任何合适的web浏览器,在此示例中被示为由微软公司开发的INTERNET EXPLORER并且可以在由用户操作的计算设备(诸如图1的计算设备105)上执行。在图6的示例中,web浏览器已加载由诸如图2中所示的信息检索系统返回的网页。
在图6所示的实施方式中,用户在用户界面的查询输入域602中已输入文本查询604,“我的办公室附近的待售房屋”,并且经由web浏览器600将该查询发送给根据某些实施方式的作为搜索栈的一部分的搜索引擎。作为响应,搜索栈经由web浏览器向用户返回所生成的信息,在图6中被示为显示在web浏览器中的所返回的信息元素606和608。
当接收用户的查询之后,搜索引擎可以检索包括用户办公室附近的待售房屋的结果的数据集(例如,网页)。如以上讨论的,从搜索引擎返回的数据集可以基于查询项与和网页有关的索引中的项之间的匹配。然而,如图所示,可以在求值搜索查询时使用其他数据源。在此示例中,搜索查询包括短语“我的办公室”。该短语可以与处理查询的搜索和检索系统可访问的用户简档中的信息相关联。因此,在执行查询后,信息检索系统可以基于根据用户简档中指定的信息的地理位置来过滤或定位结果。然而,应当认识到,可以使用任何合适的技术来处理搜索查询以及检索数据。例如,可由例如模型选择器210来选择第一模型或模型集来影响信息定位和检索。
基于查询和/或检索到的数据,适当的第二模型随后可以由诸如图2的模型选择器210等搜索栈来选择。在图6的示例中,将待售房屋与用户的通勤相关的图4中指定的第二模型是基于查询文本的一部分即“我的办公室附近”来选择的。
随后检索所选择的第二模型并将其应用于从搜索中得到的数据(即,待售房屋的网页)。可以由例如模型应用引擎216执行将第二模型应用于数据。在图6的示例中,用户的办公室位置还可以是到所选择的第二模型的输入参数的值。因为查询文本“我的办公室附近”并不指定确切的办公室位置,因此在此示例中,用户的办公室位置可以取自例如用户的简档或用户的上下文。在此示例中,如结合图4讨论的,应用所选择的第二模型包括从搜索结果中确定每一待售房屋的地址、城市和州的GPS坐标,计算每一房屋与用户办公室之间的通勤距离,以及安排所生成的信息以将通勤距离显示在对每一待售房屋的描述旁边。在图6的示例中,还基于通勤距离对所生成的信息的显示进行了排序。
由此,在图6的示例中,待售房屋的两个列表由搜索栈返回,并且在web浏览器中显示所返回的信息元素606和608。每一所返回的信息606和608分别包括待售房屋的图片610和612以及对待售房屋分别的描述614和616。另外,所返回的信息元素606包括显示在描述614旁边的通勤信息618即“离工作2英里”,并且所返回的信息元素608包括显示在描述616旁边的通勤信息620即“离工作5英里”。在图6的示例中,所返回的信息元素606和608是作为基于通勤距离按升序排序来返回的。
因此,作为由图4的示例指定的模型的应用的结果,更多有用信息被返回给用户。即,本发明的信息检索系统可以向用户返回定制以便更好地满足用户需求的信息,而不是仅仅返回待售房屋的列表。返回的信息可以基于附加的动态计算,这些动态计算是针对用户或他的查询执行的(即,基于他的办公地点),基于动态地标识的数据执行的(在此示例中,待售的房屋),以信息量更大的方式排列或向用户呈现。因此,应用选择模型允许信息检索系统定位、检索与他的搜索查询关系更密切的信息,并将信息提供给用户。
选择并应用于由搜索栈执行的搜索过程的模型可以由搜索栈的操作员创建,如上文所描述的,由提取器262生成,或者可以由第三方提供。这样的第三方可包括具有指定要响应于搜索查询生成的信息的特征的专门的愿望,能力的企业,组织或个人。
在某些情况下,模型可以由使诸如电子表格、web服务或RSS馈源之类的结构化数据在网络上可用的任何个人或组织来提供。例如,个人或组织可将模型作为元数据与结构化数据包括在一起,或者将数据中的引用包括到模型中。在某些情况下,可以在首部中和/或根据模式,将模型与结构化数据包括在一起。
在计算与待出售的房屋的通勤距离的模型的情况下,如由图4的示例所指定的模型,模型可能已经由房地产代理提供。作为另一个示例,可以由医学协会提供计算比较室验室结果的模型。作为再一个示例,照像机爱好者或照像机零售商可以提供执行涉及照像机的规格(例如,光学变焦级别、重量或兆像素范围、与照像机一起购买的典型的配件)的计算的模型,可以将该模型应用到合适的查询,如“短途旅行照像机”。作为第四示例,时装设计师可以提供带有美学逻辑的模型,该模型可以在搜索结果内排序和聚集布料和附件(例如,根据样式、颜色、裁剪、场面)。作为第五示例,一个气象专家可以提供一个模型,以预测一个特定位置的天气(例如,使用曲线拟合该气象专家的本地观察的多项式,对于Cascades处的小气候,预测未来七天的雪情),可以响应于对其应用该模型可能有价值的合适的查询(例如,“Cascades处的滑雪条件”),来应用该模型。作为再一个示例,一个营养师或保健组织可以提供计算涉及有关某一食品的特定食谱(例如,推荐的每日给饲量(RDA))的信息的模型,以便当用户搜索食谱时,例如,该模型可以被触发,并计算一次供应食谱中的脂肪或碳水化合物的RDA的百分比。
方法实施方式
鉴于前面的关于本发明的各实施方式的结构和操作描述,本领域的技术人员可以理解,可以执行各种发明方法或过程。参考图5描述了一个方法的实施方式。下面将描述更多方法的附加的实施方式。当描述方法或过程时,除非明确地陈述,方法步骤的列表不应该被解释为执行步骤的必需的顺序。在某些情况下,可以完全地或部分地将两个或更多方法的步骤组合起来以构成本发明的范围内的一种方法。例如,可以将一个或多个第二或第三所描述的方法的一个或多个步骤添加到第一所描述的方法的一个或多个步骤中或代替它们。
现在参考图8A-8B,示出了描绘了可以由提取器262执行的方法的实施方式的流程图。如图8A所示的用于从数据中提取高阶知识的一种方法800,该方法可以包括接收805数据,处理810接收到的数据,标识815接收到的数据中的至少一个关系框架,以及通过一个或多个计算表达式表示830至少一个关系框架的步骤。该方法还可以包括消除至少一个已标识的关系框架的歧义820的步骤,例如,提示用户或模型作者提供输入,以确定处理过的数据的正确关系框架。该方法还可包括向信息检索系统提供840一个或多个计算表达式。
接收805数据的步骤可以包括由与信息检索系统进行通信的至少一个处理器从任何合适的源接收结构化数据,包括从网络爬行或从结构化数据的提供商接收数据。至少一个处理器可以是提取器262的处理器。接收到的数据可以包括结构化数据,例如,诸如列表、表、序列、记录、电子表格、图等等之类的某一结构类型的数据。关系框架可以表示高阶知识,或表示高阶知识的至少一个特征。
在各实施方式中,至少一个处理器处理810接收到的数据。处理可包括判断结构化数据是否存在,例如,判断是否存在表、列表、图。处理还可以包括分析数据以确定数据的各部分之间的关系。在某些实施方式中,处理可包括根据与数据相关联的元数据或首部确定关系框架的各方面。
作为处理810接收到的数据的结果,至少一个处理器可以标识815与数据相关联的至少一个关系框架。标识的步骤可以包括模式匹配,或应用一个或多个分类器或适用于基于数据来标识关系的其他处理技术。但是,在某些实施方式中,处理可能需要从数据中读取等式。可以从数据中读取关系,例如,在数据是利用关联电子表格的单元格中的数据的公式编程的诸如Excel电子表格之类的电子表格的情况下。在某些实施方式中,标识815的步骤可包括标识一组数据看起来具有某些关系框架,该组数据看起来不属于可识别的类型的关系框架。标识815的步骤还可包括标识接收到的数据的多种类型的关系框架。
在用于从数据中提取高阶知识的方法800的某些实施方式中,可以包括可选消除歧义820的步骤。消除歧义的步骤可以包括向用户202或模型作者254提供接收到的数据供评论,并由用户或模型作者判断什么关系框架在接收到的数据中是明显的。可以由提取器262向用户或模型作者提供接收到的数据以及候选类型的关系框架,而用户或模型作者可以选择候选类型中的一种。歧义消除可以用于,例如,当通过关系所适用的检测的关系不自动检测时。类似地,歧义消除可以适用于当关系所适用的上下文不被自动确定,而是由模型作者的输入来提供时。类似的歧义消除还可以适用于当在数据中检测到多个可能的关系,但是,没有哪一个被以超出阈值的置信度检测出时。
在对于接收到的数据完成了关系框架的标识之后,至少一个处理器可以以一个或多个计算表达式来表示830关系框架,计算表达式捕捉表示关系框架的高阶知识。如上文所描述的,计算表达式可包括可由信息检索系统识别的和/或执行的数学表达式、布尔表达式、规则、条件语句、字符串计算、声明性表达式等等。在各实施方式中,向信息检索系统提供表达式,供信息检索系统执行。它们的执行影响响应于搜索查询提供给用户202的结果。
图8B描绘了用于从结构化数据中提取高阶知识的方法的另一实施方式。图8B的方法可以包括由提取器262的至少一个处理器接收805数据、标识815至少一个关系框架,以及向信息检索系统提供840计算表达式的步骤。在某些实施方式中,可以以标识关系框架以及另外标识表示关系框架的计算表达式的元数据来标记接收到的数据。在这样的实施方式中提取器262可以标识根据元数据标识关系框架和计算表达式。然后,可以将已标识的计算表达式直接传递到信息检索系统或修改后提供840到信息检索系统。
至此描述了本发明的至少一个实施方式的若干方面,可以理解,本领域的技术人员可容易地想到各种更改、修改和改进。
这样的更改、修改和改进旨在是本发明的一部分,且旨在处于本发明的精神和范围内。从而,上述描述和附图仅用作示例。
可以用多种方式中的任一种来实现本发明的上述实施方式。例如,可使用硬件、软件或其组合来实现各实施方式。当使用软件实现时,该软件代码可在无论是在单个计算机中提供的还是在多个计算机之间分布的任何合适的处理器或处理器的集合上执行。
此外,应当理解,计算机可以用多种形式中的任一种来具体化,如机架式计算机、台式计算机、膝上型计算机、或图形输入板计算机。另外,计算机可以具体化在通常不被认为是计算机但具有合适的处理能力的设备中,包括个人数字助理(PDA)、智能电话、或任何其它合适的便携式或固定电子设备。
同样,计算机可以具有一个或多个输入和输出设备。这些设备主要可被用来呈现用户界面。可被用来提供用户界面的输出设备的示例包括用于可视地呈现输出的打印机或显示屏和用于可听地呈现输出的扬声器或其它声音生成设备。可被用于用户界面的输入设备的示例包括键盘和诸如鼠标、触摸板和数字化输入板等定点设备。作为另一示例,计算机可以通过语音识别或以其它可听格式来接收输入信息。
这些计算机可以通过任何合适形式的一个或多个网络来互连,包括作为局域网或广域网,如企业网络或因特网。这些网络可以基于任何合适的技术并可以根据任何合适的协议来操作,并且可以包括无线网络、有线网络或光纤网络。
而且,此处略述的各种方法或过程可被编码为可在采用各种操作系统或平台中任何一种的一个或多个处理器上执行的软件。此外,这样的软件可使用多种合适的程序设计语言和/或程序设计或脚本工具中的任何一种来编写,而且它们还可被编译为可执行机器语言代码或在框架或虚拟机上执行的中间代码。
就此,本发明可被具体化为用一个或多个程序编码的一个计算机可读介质(或多个计算机可读介质)(例如,计算机存储器、一个或多个软盘、紧致盘(CD)、光盘、数字视频盘(DVD)、磁带、闪存、现场可编程门阵列或其他半导体器件中的电路配置、或其他非瞬态的有形计算机存储介质),当这些程序在一个或多个计算机或其他处理器上执行时,它们执行实现本发明的上述各个实施方式的方法。这一个或多个计算机可读介质可以是可移植的,使得其上存储的一个或多个程序可被加载到一个或多个不同的计算机或其它处理器上以便实现本发明上述的各个方面。如此处所使用的,术语“非瞬态计算机可读存储介质”只包含可被认为是制品或机器的计算机可读介质。
此处以一般的意义使用术语“程序”或“软件”来指可被用来对计算机或其他处理器编程以实现本发明上述的各个方面的任何类型的计算机代码或计算机可执行指令集。另外,应当理解,根据本实施方式的一个方面,当被执行时实现本发明的方法的一个或多个计算机程序不必驻留在单个计算机或处理器上,而是可以按模块化的方式分布在多个不同的计算机或处理器之间以实现本发明的各方面。
计算机可执行指令可以具有可由一个或多个计算机或其他设备执行的各种形式,诸如程序模块。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。通常,程序模块的功能可以按需在各个实施方式中进行组合或分布。
而且,数据结构能以任何合适的形式存储在计算机可读介质上。为简化说明,数据结构可被示为具有通过该数据结构中的位置而相关的字段。这些关系同样可以通过对各字段的存储分配传达各字段之间的关系的计算机可读介质中的位置来得到。然而,可以使用任何合适的机制来在数据结构的各字段中的信息之间建立关系,例如通过使用指针、标签、或在数据元素之间建立关系的其他机制。
本发明的各个方面可单独、组合或以未在前述实施方式中特别讨论的各种安排来使用,从而并不将其应用限于前述描述中所述或附图形中所示的组件的细节和安排。例如,可使用任何方式将一个实施方式中描述的各方面与其它实施方式中描述的各方面组合。
同样,本发明可被具体化为方法,其示例已经提供。作为该方法的一部分所执行的动作可以按任何合适的方式来排序。因此,可以构建各个实施方式,其中各动作以与所示的次序所不同的次序执行,不同的次序可包括同时执行某些动作,即使这些动作在各说明性实施方式中被示为顺序动作。
在权利要求书中使用诸如“第一”、“第二”、“第三”等序数词来修饰权利要求元素本身并不意味着一个权利要求元素较之另一个权利要求元素的优先级、先后次序或顺序、或者方法的各动作执行的时间顺序,而仅用作将具有某一名字的一个权利要求元素与(若不是使用序数词则)具有同一名字的另一元素区分开的标签以区分各权利要求元素。
同样,此处所使用的短语和术语是出于描述的目的而不应被认为是限制。此处对“包括”、“包含”、或“具有”、“含有”、“涉及”及其变型的使用旨在包括其后所列的项目及其等效物以及其它项目。
Claims (15)
1.一种用于搜索并检索多个数据存储设备上的信息的方法,所述方法包括:
由与信息检索系统(750)进行通信的至少一个处理器(730)接收(805)根据至少一个关系框架(710a、710b)结构化的数据(260),所述关系框架是高阶知识(705)的至少一个特征;
由所述至少一个处理器(730)处理(810)所述接收到的数据以标识(815)所述至少一个关系框架(710a、710b);
由所述至少一个处理器(730)将所述至少一个关系框架表示(830)为一个或多个计算表达式(740),所述一个或多个计算表达式可由至少一个计算机处理器执行。
2.如权利要求1所述的方法,其特征在于,还包括由所述至少一个处理器(730)向信息检索系统(750)提供(840)所述一个或多个计算表达式(740),以用于响应于搜索查询(720)生成向用户返回的信息。
3.如权利要求2所述的方法,其特征在于,还包括,利用所述信息检索系统(750)来接收搜索查询(720);
响应于所述搜索查询来生成搜索结果(208、260)以及
向所述搜索结果应用所述一个或多个计算表达式(740)。
4.如权利要求1所述的方法,其特征在于,所述接收到的数据(208、260)是通过爬行网络的组件生成的数据。
5.如权利要求1所述的方法,其特征在于,所述接收到的数据(208、260)包括文档的至少一部分,所述部分包括从下面的组中选择的结构类型:列表、表、记录、图、序列,以及电子表格。
6.如权利要求1所述的方法,其特征在于,所述至少一个关系框架(710a、710b)在与电子表格相关联的元数据或模式中标识。
7.如权利要求1所述的方法,其特征在于,所述一个或多个计算表达式(740)中的每一个都表示在电子表格中标识的计算或函数。
8.如权利要求1所述的方法,其特征在于,所述一个或多个计算表达式(740)中的每一个都包括从下面的组中选择的计算机可执行表达式类型:规则、约束、布尔表达式、声明性表达式、条件语句、数学表达式,及其任何组合。
9.如权利要求0所述的方法,其特征在于,所述标识(815)包括:
标识一组不与处理器可识别关系框架相对应的数据;
向用户(102)或模型作者(254)提供该组数据;以及
从所述用户或模型作者接收标识该组数据的关系框架的输入。
10.一种用于搜索和检索由多个数据存储设备提供的信息的系统(106、262),所述系统包括:
被配置成从至少一个联网数据存储设备(105、110)接收数据的输入组件;
被配置成向至少一个信息检索系统(200、750)传输数据的输出组件;以及
至少一个处理器(730),适用于:
标识(815)表示由所述输入组件接收到的数据的关系框架(710a、710b)的至少一个计算表达式,所述关系框架将所述接收到的数据的一部分相关到所述接收到的数据的另一部分,所述关系框架是高阶知识(705)的至少一个特征;以及
向信息检索系统(200、750)提供(840)所述至少一个计算表达式,以用于响应于搜索查询(202、720)生成向用户(102)返回的信息(218)。
11.如权利要求10所述的系统,其特征在于,标识(815)所述至少一个计算表达式(740)包括至少部分地基于在电子表格中标识的计算或函数来标识所述计算表达式。
12.如权利要求10所述的系统,其特征在于,所述至少一个计算表达式(740)包括从下面的组中选择的计算机可执行表达式类型:规则、约束、布尔表达式、声明性表达式、条件语句、数学表达式,及其任何组合。
13.如权利要求10所述的系统,其特征在于,所述标识(815)所述至少一个计算表达式包括标识所述接收到的数据(208、260)的至少一部分中的数据结构类型并分析所述数据结构类型。
14.如权利要求13所述的系统,其特征在于,所述数据结构类型包括从下面的组中选择的元素:列表、表、记录、图、序列,以及电子表格。
15.如权利要求10所述的系统,其特征在于,所述至少一个计算表达式(740)被包括为供所述信息检索系统(750)用来进行搜索的模型(250)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/777,564 US20110282861A1 (en) | 2010-05-11 | 2010-05-11 | Extracting higher-order knowledge from structured data |
US12/777,564 | 2010-05-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102243647A true CN102243647A (zh) | 2011-11-16 |
CN102243647B CN102243647B (zh) | 2016-09-28 |
Family
ID=44912642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110128855.9A Active CN102243647B (zh) | 2010-05-11 | 2011-05-11 | 从结构化数据中提取高阶知识 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20110282861A1 (zh) |
CN (1) | CN102243647B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104221017A (zh) * | 2012-04-10 | 2014-12-17 | 微软公司 | 使用示例来查找连接语料库中的数据 |
CN104281630A (zh) * | 2013-07-12 | 2015-01-14 | 上海联影医疗科技有限公司 | 一种基于云计算的医学影像数据挖掘方法 |
CN105074694A (zh) * | 2013-03-15 | 2015-11-18 | 卡马祖伊发展公司 | 自然语言处理的系统和方法 |
CN105934756A (zh) * | 2013-10-31 | 2016-09-07 | 微软技术许可有限责任公司 | 索引电子表格结构属性以供搜索 |
CN107704451A (zh) * | 2017-10-18 | 2018-02-16 | 四川长虹电器股份有限公司 | 基于文法网络和lucene的语义分析方法 |
CN109614549A (zh) * | 2018-12-10 | 2019-04-12 | 北京字节跳动网络技术有限公司 | 用于推送信息的方法和装置 |
CN110110173A (zh) * | 2012-08-08 | 2019-08-09 | 谷歌有限责任公司 | 搜索结果排名和呈现 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9785987B2 (en) | 2010-04-22 | 2017-10-10 | Microsoft Technology Licensing, Llc | User interface for information presentation system |
US9043296B2 (en) | 2010-07-30 | 2015-05-26 | Microsoft Technology Licensing, Llc | System of providing suggestions based on accessible and contextual information |
US9454732B1 (en) * | 2012-11-21 | 2016-09-27 | Amazon Technologies, Inc. | Adaptive machine learning platform |
CN103885972B (zh) * | 2012-12-20 | 2017-02-08 | 北大方正集团有限公司 | 一种文档内容结构化的方法及装置 |
US10254931B2 (en) * | 2013-09-20 | 2019-04-09 | Sap Se | Metadata-driven list user interface component builder |
US9727545B1 (en) * | 2013-12-04 | 2017-08-08 | Google Inc. | Selecting textual representations for entity attribute values |
CN105518672B (zh) | 2014-07-15 | 2019-04-30 | 微软技术许可有限责任公司 | 跨多个模型的数据检索 |
CN105518670B (zh) * | 2014-07-15 | 2021-09-07 | 微软技术许可有限责任公司 | 用于模型查询的数据模型索引 |
EP3170100A4 (en) | 2014-07-15 | 2017-12-06 | Microsoft Technology Licensing, LLC | Data model change management |
WO2016008087A1 (en) | 2014-07-15 | 2016-01-21 | Microsoft Technology Licensing, Llc | Managing multiple data models over data storage system |
US9965474B2 (en) | 2014-10-02 | 2018-05-08 | Google Llc | Dynamic summary generator |
WO2016156433A1 (en) | 2015-03-31 | 2016-10-06 | British Telecommunications Public Limited Company | Network operation |
GB2541034A (en) | 2015-07-31 | 2017-02-08 | British Telecomm | Network operation |
US10175955B2 (en) * | 2016-01-13 | 2019-01-08 | Hamilton Sundstrand Space Systems International, Inc. | Spreadsheet tool manager for collaborative modeling |
US20170220581A1 (en) * | 2016-02-02 | 2017-08-03 | Microsoft Technology Licensing, Llc. | Content Item and Source Detection System |
US10650050B2 (en) * | 2016-12-06 | 2020-05-12 | Microsoft Technology Licensing, Llc | Synthesizing mapping relationships using table corpus |
NO344309B1 (en) * | 2017-11-15 | 2019-11-04 | Postnord As | Method for managing a buying transaction of a product |
US11604841B2 (en) * | 2017-12-20 | 2023-03-14 | International Business Machines Corporation | Mechanistic mathematical model search engine |
US11887719B2 (en) * | 2018-05-21 | 2024-01-30 | MyFitnessPal, Inc. | Food knowledge graph for a health tracking system |
US11714915B2 (en) * | 2019-02-01 | 2023-08-01 | Health2047, Inc. | Data aggregation based on disparate local processing of requests |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1526104A (zh) * | 2001-03-23 | 2004-09-01 | ��˹��ŵ�� | 分析结构化数据 |
US20080172360A1 (en) * | 2007-01-17 | 2008-07-17 | Lipyeow Lim | Querying data and an associated ontology in a database management system |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6038560A (en) * | 1997-05-21 | 2000-03-14 | Oracle Corporation | Concept knowledge base search and retrieval system |
US6032146A (en) * | 1997-10-21 | 2000-02-29 | International Business Machines Corporation | Dimension reduction for data mining application |
US6981040B1 (en) * | 1999-12-28 | 2005-12-27 | Utopy, Inc. | Automatic, personalized online information and product services |
WO2002093409A1 (en) * | 2001-05-16 | 2002-11-21 | Isis Pharmaceuticals, Inc. | Multi-paradigm knowledge-bases |
US8135711B2 (en) * | 2002-02-04 | 2012-03-13 | Cataphora, Inc. | Method and apparatus for sociological data analysis |
US7310646B2 (en) * | 2003-05-09 | 2007-12-18 | I2 Technologies Us, Inc. | Data management system providing a data thesaurus for mapping between multiple data schemas or between multiple domains within a data schema |
US7426520B2 (en) * | 2003-09-10 | 2008-09-16 | Exeros, Inc. | Method and apparatus for semantic discovery and mapping between data sources |
US20060224579A1 (en) * | 2005-03-31 | 2006-10-05 | Microsoft Corporation | Data mining techniques for improving search engine relevance |
US7853485B2 (en) * | 2005-11-22 | 2010-12-14 | Nec Laboratories America, Inc. | Methods and systems for utilizing content, dynamic patterns, and/or relational information for data analysis |
US8082489B2 (en) * | 2006-04-20 | 2011-12-20 | Oracle International Corporation | Using a spreadsheet engine as a server-side calculation model |
US8055603B2 (en) * | 2006-10-03 | 2011-11-08 | International Business Machines Corporation | Automatic generation of new rules for processing synthetic events using computer-based learning processes |
US7873591B2 (en) * | 2007-02-02 | 2011-01-18 | Microsoft Corporation | User-interface architecture for manipulating business models |
US20080201338A1 (en) * | 2007-02-16 | 2008-08-21 | Microsoft Corporation | Rest for entities |
US20080243823A1 (en) * | 2007-03-28 | 2008-10-02 | Elumindata, Inc. | System and method for automatically generating information within an eletronic document |
US8635251B1 (en) * | 2007-06-29 | 2014-01-21 | Paul Sui-Yuen Chan | Search and computing engine |
US7856434B2 (en) * | 2007-11-12 | 2010-12-21 | Endeca Technologies, Inc. | System and method for filtering rules for manipulating search results in a hierarchical search and navigation system |
US8117145B2 (en) * | 2008-06-27 | 2012-02-14 | Microsoft Corporation | Analytical model solver framework |
US8631046B2 (en) * | 2009-01-07 | 2014-01-14 | Oracle International Corporation | Generic ontology based semantic business policy engine |
US20110106836A1 (en) * | 2009-10-30 | 2011-05-05 | International Business Machines Corporation | Semantic Link Discovery |
-
2010
- 2010-05-11 US US12/777,564 patent/US20110282861A1/en not_active Abandoned
-
2011
- 2011-05-11 CN CN201110128855.9A patent/CN102243647B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1526104A (zh) * | 2001-03-23 | 2004-09-01 | ��˹��ŵ�� | 分析结构化数据 |
US20080172360A1 (en) * | 2007-01-17 | 2008-07-17 | Lipyeow Lim | Querying data and an associated ontology in a database management system |
Non-Patent Citations (1)
Title |
---|
叶飞跃等: "一种用于存储与查询半结构化数据的新方法", 《计算机工程》, 30 October 2006 (2006-10-30), pages 91 - 93 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104221017A (zh) * | 2012-04-10 | 2014-12-17 | 微软公司 | 使用示例来查找连接语料库中的数据 |
CN104221017B (zh) * | 2012-04-10 | 2018-05-22 | 微软技术许可有限责任公司 | 使用示例来查找连接语料库中的数据 |
US10140366B2 (en) | 2012-04-10 | 2018-11-27 | Microsoft Technology Licensing, Llc | Finding data in connected corpuses using examples |
CN110110173A (zh) * | 2012-08-08 | 2019-08-09 | 谷歌有限责任公司 | 搜索结果排名和呈现 |
US11868357B2 (en) | 2012-08-08 | 2024-01-09 | Google Llc | Search result ranking and presentation |
CN110110173B (zh) * | 2012-08-08 | 2023-09-12 | 谷歌有限责任公司 | 搜索结果排名和呈现 |
CN105074694A (zh) * | 2013-03-15 | 2015-11-18 | 卡马祖伊发展公司 | 自然语言处理的系统和方法 |
CN105074694B (zh) * | 2013-03-15 | 2018-06-05 | 卡马祖伊发展公司 | 自然语言处理的系统和方法 |
CN104281630A (zh) * | 2013-07-12 | 2015-01-14 | 上海联影医疗科技有限公司 | 一种基于云计算的医学影像数据挖掘方法 |
CN105934756A (zh) * | 2013-10-31 | 2016-09-07 | 微软技术许可有限责任公司 | 索引电子表格结构属性以供搜索 |
CN105934756B (zh) * | 2013-10-31 | 2019-07-02 | 微软技术许可有限责任公司 | 索引电子表格结构属性以供搜索 |
CN107704451A (zh) * | 2017-10-18 | 2018-02-16 | 四川长虹电器股份有限公司 | 基于文法网络和lucene的语义分析方法 |
CN109614549A (zh) * | 2018-12-10 | 2019-04-12 | 北京字节跳动网络技术有限公司 | 用于推送信息的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US20110282861A1 (en) | 2011-11-17 |
CN102243647B (zh) | 2016-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102243647A (zh) | 从结构化数据中提取高阶知识 | |
US11334635B2 (en) | Domain specific natural language understanding of customer intent in self-help | |
US11429405B2 (en) | Method and apparatus for providing personalized self-help experience | |
CN102549563B (zh) | 语义交易所 | |
CN102222081B (zh) | 将人物的模型应用于搜索结果 | |
CN102193973B (zh) | 呈现回答 | |
CN1934569B (zh) | 集成有用户注释的搜索系统和方法 | |
US20110264665A1 (en) | Information retrieval system with customization | |
US20140040225A1 (en) | Displaying browse sequence with search results | |
KR20160144384A (ko) | 딥 러닝 모델을 이용한 상황 의존 검색 기법 | |
US20130091138A1 (en) | Contextualization, mapping, and other categorization for data semantics | |
CN1670733A (zh) | 用自然语言命令呈递表格 | |
CN106164889A (zh) | 用于内存数据库搜索的系统和方法 | |
CN109564573A (zh) | 来自计算机应用元数据的平台支持集群 | |
CN101283353A (zh) | 通过分析标签找到相关文档的系统和方法 | |
Paidi | Data mining: Future trends and applications | |
Nesi et al. | Geographical localization of web domains and organization addresses recognition by employing natural language processing, Pattern Matching and clustering | |
US20110131536A1 (en) | Generating and ranking information units including documents associated with document environments | |
US20110264678A1 (en) | User modification of a model applied to search results | |
CN103365876B (zh) | 基于关系图谱生成网络操作辅助信息的方法与设备 | |
Chen et al. | Recommending software features for mobile applications based on user interface comparison | |
US20110264642A1 (en) | Dynamic computation engine in search stack | |
CN118260717A (zh) | 互联网低轨卫星情报挖掘方法、系统、装置及介质 | |
Ebrahimi et al. | Developing a prediction model for author collaboration in bioinformatics research using graph mining techniques and big data applications | |
CN119166763A (zh) | 基于人工智能的查询处理方法、装置、计算机设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150724 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150724 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |