用于电子记录的上下文检索的系统和方法与流程

文档序号:18004769发布日期:2019-06-25 23:14阅读:267来源:国知局
用于电子记录的上下文检索的系统和方法与流程

本申请要求2016年8月9日提交的美国临时申请号62/372,565、2016年8月9日提交的美国临时申请号62/372,571以及2016年8月9日提交的美国临时申请号62/372,577的权益,上述申请通过引用而全文并入于此。

发明背景

信息通常可以储存在物理文档文件上。然而,这样的物理存储系统可能要求有极大量的空间可供无限期使用。例如,物理文档文件可被收藏于档案馆、仓库、图书馆和/或保管库中。物理文档一旦被储存,还可能需要日常维护,以便防止文档的损坏、破坏或劣化(例如,自然劣化)。此外,对储存在物理文档文件上的信息的访问可能昂贵且耗时。物理文档不仅会难以定位和运送,而且一旦物理文档被识别出来,从物理文件中提取信息也可能会是耗时的。

作为替代方案,可以将来自物理文档的信息转移到电子介质,并且储存在存储器中。在一些情况下,可以电子地创建和储存信息。这可以消除对于存储空间和存储期间维护的需求。从这样的电子记录可以电子地搜索信息。例如,可以响应于用户提供的搜索查询而检索搜索结果。



技术实现要素:

即使作为电子记录储存,当存在繁多的其他电子记录需要翻查时,特定信息和/或文档可能难以定位和隔离。虽然响应于用户提供的搜索查询而检索的搜索结果可能在一些方面与用户提供的搜索查询相关,但这样的相关性往往可能薄弱,或者搜索结果可能完全是在错误的方面相关。用户必须迭代地重新制定搜索查询来寻找用户搜寻的确切信息的情况并不罕见。即使在运行多次搜索查询之后,用户可能仍然未定位到所找寻的信息。这可能会导致用户花费大量时间和精力。本文认识到需要至少解决上述问题的、用于电子记录的上下文检索的系统和方法。

本文提供的系统和方法可以至少部分地基于用户查询的上下文处理和/或基于自然语言的处理来对电子记录进行上下文检索。电子记录可以至少部分地基于用户行为进行检索。检索到的搜索结果可以是上下文特定的。检索到的搜索结果可以是用户特定的。

本文提供的系统和方法允许基于以下各项来增强搜索查询和/或搜索结果:(i)自然语言处理(naturallanguageprocessing,nlp)模型,(ii)用户行为,和/或(iii)搜索中涉及的各个实体之间,诸如用户、记录和/或专业领域之间的关系。本文提供的系统和方法允许使用更特定于搜索查询的类型或者与之更兼容的机制来执行增强的搜索查询。有益地,搜索结果可以具有更高的准确度并且/或者对于用户和/或上下文更加个性化。

在一个方面,提供了一种用于基于搜索查询来上下文检索电子记录的计算机实现的方法,包括:借助于一个或多个计算机处理器,至少基于针对所述搜索查询的查询类型的自然语言处理(nlp)模型定义来确定所述查询类型;访问查询类型注册表,其中所述注册表将查询类型映射到执行方法,并且包含与所述注册表中的每个查询类型和执行方法对相关联的优先级权重值;决定(resolve)映射到所述查询类型的一个或多个执行方法;使用映射到所述查询类型的所述一个或多个执行方法来执行所述搜索查询,以便检索多个电子记录作为搜索结果,其中采用与用于检索所述多个电子记录中的给定电子记录的执行方法相关联的所述优先级权重值来对所述给定电子记录进行加权;以及至少部分地基于所述多个电子记录的优先级权重值来显示所述多个电子记录。

在一些实施方式中,所述的方法可以进一步包括,在执行之前,通过附加原本未存在于所述搜索查询中的一个或多个关键词或者附加分类筛选器来增强所述搜索查询。

在一些实施方式中,所述一个或多个关键词至少部分地基于提供所述搜索查询的用户的用户行为数据。

在一些实施方式中,所述的方法可以进一步包括,在执行之前,确定对应于所述搜索查询的第一nlp模型,其中所述第一nlp模型对应于第一组一个或多个关键词,其中所述搜索查询的组成部分匹配于所述第一组一个或多个关键词中的至少一个关键词;确定与所述第一nlp模型接近的第二nlp模型,其中所述第二nlp模型对应于第二组一个或多个关键词,其中所述第一nlp模型和第二nlp模型具有接近度关系,该接近度关系具有处于或高于预定阈值的权重值;以及用原本未存在于所述搜索查询中的所述第二组一个或多个关键词中的关键词来增强所述搜索查询。

在一些实施方式中,所述的方法可以进一步包括,在执行之前,使用nlp模型定义来对所述搜索查询执行分类提取,以确定所述分类筛选器。

在一些实施方式中,所述nlp模型定义至少部分地基于词性模式(patternofpart-of-speech)或正则表达式模式(patternofregularexpression)。

在一些实施方式中,所述执行方法包括关键词搜索和图搜索。

在一些实施方式中,所述图搜索包括遍历包含一个或多个实体以及所述一个或多个实体之间的上下文关系的图数据库,以便检索与所述多个电子记录、提供所述搜索查询的用户或者两者上下文相关的附加电子记录。

在一些实施方式中,所述一个或多个实体是来自包含记录、用户和专业领域的组的至少一个成员。

在一些实施方式中,针对所述查询类型的所述nlp模型定义至少基于词性模式。

在另一方面,提供了一种用于基于搜索查询来上下文检索电子记录的计算机系统,包括:一个或多个处理器;以及存储器,其通信地耦合到所述一个或多个处理器,包含能够由所述一个或多个处理器单个地或共同地执行以实现用于对电子数据进行分类的方法的指令,所述方法包括:通过计算机网络,从用户接收所述搜索查询;从图数据库访问自然语言处理(nlp)模型库,其中所述nlp模型库包含多个nlp模型,其中所述多个nlp模型中的给定nlp模型对应于一组或多组关键词;将所述搜索查询与所述nlp模型库相匹配,以确定对应于所述搜索查询的第一nlp模型,其中所述搜索查询的组成部分匹配于所述第一nlp模型的所述一组或多组关键词中的至少一个关键词;确定与所述第一nlp模型接近的一个或多个其他nlp模型,其中所述第一nlp模型和所述一个或多个其他nlp模型中的每一个具有接近度关系,该接近度关系具有处于或高于预定阈值的权重值;通过附加原本未存在于所述搜索查询中的对应于所述一个或多个其他nlp模型的一个或多个关键词来增强所述搜索查询;执行经增强的搜索查询以检索多个电子记录作为搜索结果;以及在通信地耦合到所述一个或多个处理器的图形用户界面上,向所述用户显示所述多个电子记录。

在一些实施方式中,所述方法可以进一步包括:借助于所述一个或多个计算机处理器,至少基于针对所述搜索查询的查询类型的自然语言处理nlp模型定义来确定所述查询类型;访问查询类型注册表,其中所述注册表将查询类型映射到执行方法,并且包含与所述注册表中的每个查询类型和执行方法对相关联的优先级权重值;以及使用映射到所述查询类型的所述一个或多个执行方法来执行所述经增强的搜索查询以便检索所述多个电子记录,其中通过与用于检索所述多个电子记录中的给定电子记录的执行方法相关联的所述优先级权重值来对所述给定电子记录进行加权,其中以至少部分地基于所述多个电子记录的优先级权重值的顺序来显示所述多个电子记录。

在一些实施方式中,所述执行方法包括关键词搜索和图搜索。

在一些实施方式中,所述图搜索包括遍历包含一个或多个实体以及所述一个或多个实体之间的上下文关系的图数据库,以便检索与所述多个电子记录、提供所述搜索查询的用户或者两者上下文相关的附加电子记录。

在一些实施方式中,所述一个或多个实体是来自包含记录、用户和专业领域的组的至少一个成员。

在一些实施方式中,通过附加至少部分地基于所述用户的用户行为数据的一个或多个关键词来进一步增强所述搜索查询。

在一些实施方式中,在图数据库中存储所述用户行为数据并且从该图数据库访问所述用户行为数据。

在一些实施方式中,所述方法还包括,在执行之前,执行关于所述用户的用户行为反馈处理(loop),以便确定所述用户行为数据。

在一些实施方式中,所述方法还包括,在显示之后,从所述用户接收用户行为数据。

在一些实施方式中,所述用户行为数据包括关于所述多个电子记录中的电子记录被选择或未被选择的数据、关于查看所述多个电子记录中的选定的电子记录所花费的时间的数据以及用户在记录中进行的滚动或分页的程度的数据中的至少一个。

根据下面的具体实施方式,本公开的其他方面和优点对于本领域技术人员来说将变得容易理解,其中仅示出和描述了本公开的说明性实施方式。如将认识到的那样,本公开能够具有其他和不同的实施方式,并且其若干细节能够在各个明显的方面进行修改,所有这些都没有脱离本公开。因此,附图和说明书本质上被认为是说明性的,而不是限制性的。

援引并入

本说明书中提及的所有出版物、专利和专利申请均通过引用并入本文,其程度如同每个单独的出版物、专利或专利申请被具体地和单独地指出以通过引用并入。当通过引用而并入的出版物以及专利或专利申请达到与本说明书中包含的公开相抵触的程度时,本说明书应当取代和/或优先于任何此类抵触资料。

附图说明

本发明的新颖特征在随附权利要求书中具体阐明。通过参考以下对其中利用到本发明原理的说明性实施方式加以阐述的具体实施方式和附图(本文亦称为“图”)将会更好地理解本发明的特征和优势,在附图中:

图1图示了用于对记录管理系统中的记录进行上下文检索的方法的简化流程图。

图2示出了nlp模型库的图数据库的一部分。

图3示出了词性标记的示例。

图4示出了样例查询及其对应的查询类型。

图5示出了样例查询类型注册表。

图6图示了用户行为反馈处理的示例。

图7示出了可被遍历以增强搜索结果的各个实体的知识图数据库。

图8示出了根据本公开的系统和方法的样例查询和处理方法。

图9示出了被编程或以其他方式配置用于实现本公开的方法的计算机系统。

具体实施方式

尽管本文已经示出和描述了本发明的各个实施方式,但是对于本领域技术人员来说容易理解的是,这样的实施方式只是作为示例而提供的。本领域技术人员可以想到许多变化、改变和替换而不偏离本发明。应当理解,可以采用本文所描述的本发明实施方式的各种替代方案。

海量的信息可由政府机构以及私人和公共实体储存在物理文档中。这些文档可以被保存在大规模档案库、仓库、图书馆和/或保管库中。然而,物理文档可能难以手动定位、访问、搜索和/或操纵。此外,可能难以从这样的物理文档定位、访问、搜索和/或提取信息。手动方法可能昂贵、低效、不可靠并且/或者受制于隐私问题。例如,人工处理大量文档可能很慢、容易出错、由于暴露于文档中的化学物和/或暴露于紧固件而对人体健康造成损害、对文档造成损害,和/或当涉及含有敏感信息的文档时易受安全漏洞影响。定位特定文档和/或运送这样的文档可能是费力且昂贵的。信息在物理文档上的存储还可能容易丢失——例如当物理文档丢失、损坏、以其他方式实体性地劣化(例如,油墨褪色、纸页完整性减弱等)、破坏和/或标示错误。至少由于在此描述的原因,提取储存在物理文档上的信息可能是困难的,从而阻碍或阻止了对大量的存储信息的访问。

将物理文档上储存的信息转换为数字信息可以使信息易于通过数字搜索访问。例如,可以诸如使用相机或其他成像设备或光学传感器对物理文档进行数字扫描或以其他方式进行成像。在一些情况下,可以通过自动化或半自动化系统和方法将大量物理文档(例如,数百万份)转换成电子记录。这样的自动化或半自动化系统和方法可被配置用于高效且大致一致地处理大量物理文档,诸如通过使原本在物理文档到电子记录的转换期间手动执行的一个或多个过程(例如,对杂乱无章的文档堆栈进行排序,从文档堆栈分离出纸页,松开固定到一个或多个纸页的紧固件,将文档馈送到设备中,对文档进行扫描,对文档进行定向,处置经扫描的文档等)自动化。本文所述系统和方法可以是自动化端到端过程的一部分,该过程涉及物理文档到电子记录的转换、电子记录的标记,以及标记的电子记录的搜索。在一些情况下,可以搜索没有标记的电子记录。

在一些情况下,数字化信息可以得到进一步处理,诸如经受文本识别(例如,光学字符识别(opticalcharacterrecognition,ocr))。数字化信息可以储存在现场服务器或位于安全地点的远程服务器中,并且/或者可以在请求时容易和可靠地复制。信息的数字化可以提高可靠性、降低成本,以及/或者避免敏感信息的暴露。然而,虽然数字信息可以比储存在物理文档上的信息更容易地搜索,但即使作为电子记录,当存在繁多的其他电子记录需要翻查时,特定信息和/或文档可能难以定位和隔离。

提供了用于促进电子记录的上下文检索的系统和方法。本文提供的系统和方法可以至少部分地基于对用户查询的上下文处理和/或基于自然语言的处理来对电子记录进行上下文检索。该系统和方法可以使用一种或多种自然语言处理(nlp)模型。可以至少部分地基于用户行为来检索电子记录。所检索的搜索结果可以是上下文特定的。所检索的搜索结果可以是用户特定的。有益地,搜索结果可以为用户个性化。搜索结果可以响应于基于自然语言的用户查询。有益地,用户可以无需学习特殊的搜索语法(例如,操作符,等等)来获得上下文相关和/或用户特定的搜索结果。

本文所述的系统和方法可以同时适用于检索从物理文件转换成(例如,数字扫描或以其他方式成像)的电子记录以及作为电子文件创建和储存的电子记录。

本文所述的系统和方法可以适用于对记录管理系统中的电子记录进行搜索和检索。记录管理系统可以包含多个电子记录。本文所述的记录管理系统可以包含任何数目的电子记录。例如,记录管理系统可以包含至少1个、10个、100个、103个、104个、105个、106个、107个、108个、109个、1012个、1015个或更多个电子记录。电子记录可以是任何包含信息的数字记录,例如,文本和/或图像。电子记录可以是电子文档或来自电子文档的摘录(例如,词语、短语、句子、段落、节、章、其他分段等)。电子记录可以是物理文档或来自物理文档的摘录的数字图像。电子记录可以是以电子形式可供线下和/或线上(诸如,因特网上)使用的贴文、列表、评论、注释、小册子、指南、手册、照片、图片、图像、图解、图、表、图表、博客、网站、超链接(例如,url)、文章、任何文本和/或图像、任何其他信息,以及/或者它们的组合。

替代地或附加地,本文所述的系统和方法可以适用于对任何存储系统、数据库、数据结构、搜索引擎、图、图表、表、多个上述任何一项以及/或者上述各项的组合中的电子记录进行搜索和检索。

本文所述的系统和方法可以同时适用于检索已经标记的电子记录和未经标记的电子记录。标记(tag)可以是用于描述电子记录的标签。标记可以是用于对具有共同主题的不同电子记录进行分组的标签。标记可以是文本字符串。标记可以是数值。标记可以是关键词和/或短语。标记可以是名称。标记可以是评级。标记可以是类别、组、主题和/或类型。标记可以是注释。标记可以是非结构化分类的一个或多个组成部分(component)。标记可以是标准化信息。标记可以是电子记录或文件的任何元数据字段。标记可以储存成电子记录的元数据字段,例如当分配给电子记录时。在一些情况下,标记可以是二元的(例如,是/否、o/x、0/1等)。标记可以可分配给电子记录和/或从电子记录移除。标记可以用于对电子记录进行索引。标记可以用于对电子记录进行分类。标记可以用于搜索和筛选电子记录。标记可以改变、修改和/或以其他方式更新。在一些情况下,标记可以在分配给一个或多个电子记录的同时被改变、修改和/或以其他方式更新。

本文提供的系统和方法允许基于下列各项对搜索查询和/或搜索结果的增强:(i)自然语言处理(nlp)模型,(ii)用户行为,和/或(iii)搜索中涉及的各个实体之间,诸如用户、记录和/或专业领域之间的关系。本文提供的系统和方法允许使用更特定于搜索查询的类型或者与之更兼容的机制来执行增强的搜索查询。可以使用不同的机制来执行不同类型的查询。有益地,搜索结果可以具有更高的准确度。有益地,搜索结果可以对用户和/或上下文更加个性化。

在一些情况下,可以使用第一nlp模型来确定查询类型,例如通过使用词性模式或正则表达式模式。此外,可以使用被确定为接近于第一nlp模型的其他nlp模型来增强搜索查询,例如通过附加原本不在搜索查询中的、对应于所述其他nlp模型的关键词。

在一些情况下,可以通过用户行为来增强搜索查询。记录管理系统可以学习用户行为,例如,通过用户行为反馈处理来学习,并且使用这样的用户行为数据来增强搜索查询。系统可以从用户活动,诸如分享记录、查看记录、搜索记录和/或点击来自搜索结果的记录等,来学习用户行为。

在一些情况下,可以遍历包含搜索中所涉及的各个实体之间的关系(诸如用户、记录和/或专业领域之间的关系)的知识图来增强搜索查询和/或搜索结果,以便促进对电子记录的上下文检索。

图1图示了用于对记录管理系统中的记录进行上下文检索的系统和方法的简化流程图。

用户可以向记录管理系统提供搜索查询102,以便在该系统所执行的一个或多个操作之后获取搜索结果104。用户可以是或者可以不是记录管理系统的用户。例如,用户可以是记录管理系统的操作者、管理者或管理员。用户可以是记录管理系统的客户。用户可以是记录管理系统的文档和/或记录的提供者。用户可以是记录管理系统的文档和/或记录的创建者。用户可以是个人。用户可以是实体。用户可以是多个个人。用户可以是多个实体。在某些情况下,记录管理系统可以通过唯一标识符(例如,用户名、用户账户、用户id等)来识别用户。用户的用户特定信息诸如用户行为可以关联于该用户的唯一标识符,并且储存在一个或多个数据库中。

用户可以通过系统所提供的用户界面来提供搜索查询102。所述用户界面可以是图形用户界面(graphicaluserinterface,gui)和/或基于网络的界面。用户界面可以具有输入字段(例如,图形矩形框),用于接收搜索查询。系统可以例如在用户设备的显示器(例如,电子显示器)上示出用户界面。显示器可以是单独的,并且通信地耦合到用户设备。用户设备例如可以是移动设备(例如,智能电话、平板计算机、寻呼机、个人数字助理(pda))、计算机(例如,膝上型计算机、台式计算机、服务器)和/或可穿戴设备(例如,智能手表)。用户设备还可以包括任何其他媒体内容播放器,例如,机顶盒、电视机、视频游戏系统,或者任何能够提供或呈现数据的电子设备。用户设备可以可选地是便携式的。用户设备可以是手持式的。用户设备可以是能够连接到网络诸如局域网(lan)、广域网(wan)例如因特网、电信网络、数据网络或者任何其他类型网络(例如,外联网、内联网等)的网络设备。

用户设备可以包括存储器存储单元,该存储器存储单元可以包括非暂时性计算机可读介质,该非暂时性计算机可读介质包含用于执行本文所述一个或多个操作的代码、逻辑或指令。用户设备可以包括能够例如根据非暂时性计算机可读介质来执行一个或多个步骤的一个或多个处理器。用户设备可以能够经由用户交互设备接受输入,例如搜索查询。这样的用户交互设备的示例可以包括键盘、按钮、鼠标、触摸屏、触摸板、操纵杆、轨迹球、相机、麦克风、运动传感器、热传感器、惯性传感器,或者任何其他类型的用户交互设备。用户设备可以能够执行由记录管理系统提供的软件或应用,以及/或者访问由记录管理系统提供的用户界面。用户设备可以是计算机控制系统,在下文进一步描述。用户设备可以能够与其他计算机系统或者其一个或多个组件,诸如服务器、数据网络(例如,云计算网络等)或数据库进行通信。

搜索查询102可以是文本(例如,字符串)的形式。搜索查询能够以自然语言提供。在一些情况下,可以经由语音到文本转换来提供文本查询。查询能够以字符串的形式提供。查询可以包含超链接(例如,url)。在一些示例中,字符串可以具有约1000个字符、500个字符、400个字符、300个字符、200个字符、150个字符、140个字符、130个字符、120个字符、110个字符、100个字符、50个字符、40个字符、30个字符、20个字符、10个字符或更少的字符限制。或者,字符串可以具有超过1000个字符。字符串可以不具有字符限制。在一些情况下,查询可以具有约1000个词语、500个词语、400个词语、300个词语、200个词语、150个词语、100个词语、50个词语、40个词语、30个词语、20个词语、10个词语或更少的词语限制。或者,查询可以具有超过1000个词语。查询可以不具有词语限制。查询可以用任何语言,包括英语和非英语语言。

当向系统提供用户提供的搜索查询102时,系统可以开始对搜索查询的初始处理106,以便增强搜索查询。在初始处理期间,系统可以将搜索查询或搜索查询的组成部分与潜在相关的自然语言处理(nlp)模型相匹配,以便通过附加与相关nlp模型相对应的一个或多个关键词来增强搜索查询。如下文所述,搜索查询可以针对nlp模型库进行匹配。

nlp模型可以能够学习、解译和理解人类的自然语言,诸如语法(例如,文法)、语义(例如,含义)、语用(例如,目的、目标、意图),以及/或者其他语言学单位(例如,各种词汇关系)。nlp模型可以利用一种或多种nlp和/或自然语言理解(naturallanguageunderstanding,nlu)技术。随着迭代次数的增加,例如但不限于搜索迭代次数或其他用户交互次数的增加,nlp模型可以变得更准确。

在一些情况下,nlp模型可以采取分布式方法,诸如机器学习和/或深度学习的大规模统计策略。例如,分布式方法可以将内容转换成词矢量(wordvector)并进行数学分析,以便理解例如词语之间的关系。分布式nlp模型可以包括神经网络模型,诸如端到端注意记忆网络,以及联合多任务模型。在一些情况下,nlp模型可以采取基于框架的方法,诸如通过解析内容和填充框架参数而将语义相同(例如,但语法或语用不同)构建成框架(或数据结构)。在一些情况下,nlp模型可以采取模型-理论方法。模型-理论方法可以进行内容到成分的语义解析、成分重组以及执行。模型-理论方法可以接受人的监督,并且从全局表达、丰富的语义、端到端处理以及理解困难而微妙的搜索查询的实现中获益。在一些情况下,nlp模型可以采取交互式学习方法。交互式学习nlp模型可以与人交互,并且至少部分地基于这样的交互而逐渐学习人类的自然语言。例如,交互式学习模型可以将惯用于执行相同行为或者产生相同结果的语言解释为用于该相同行为或相同结果的正确语言。替代地或附加地,nlp模型可以采取不同的方法来学习、解译和/或理解自然语言。在一些情况下,nlp模型可以是不同方法的组合。

在初始处理106期间,可以根据nlp模型库对搜索查询102和/或其组成部分(例如,符记)进行评估。nlp模型可以储存在nlp模型库中。nlp模型库可以储存在计算机系统(例如,服务器)的存储器中,例如一个或多个数据库中。如下文进一步描述,nlp模型库可以储存在图数据库130中。所述计算机系统可以包括数据网络,例如云计算网络,以及/或者与之通信。在一些情况下,所述一个或多个数据库(例如,图数据库)可以储存在所述数据网络中以及/或者与之通信,并且计算机系统可以经由数据网络来访问这样的一个或多个数据库。在一些情况下,nlp模型库可以包括至少约1个、2个、3个、4个、5个、6个、7个、8个、9个、10个、15个、20个、25个、30个、35个、40个、45个、50个、100个、200个、300个、400个、500个、1000个或更多个nlp模型。在一些情况下,nlp模型库可以包括至多约1000个、500个、400个、300个、200个、100个、50个、45个、40个、35个、30个、25个、20个、15个、10个、9个、8个、7个、6个、5个、4个、3个、2个或1个nlp模型。

nlp模型可以对应于一个或多个关键词,或者一组或多组关键词。nlp模型可以对应于一个或多个项,或者一组或多组项。在一些情况下,nlp模型可以对应于至少约1个、2个、3个、4个、5个、6个、7个、8个、9个、10个、15个、20个、25个、30个、35个、40个、45个、50个、100个、200个、300个、400个、500个、1000个或更多个关键词(或项),或者如此多组关键词(或项)。在一些情况下,nlp模型可以对应于至多约1000个、500个、400个、300个、200个、100个、50个、45个、40个、35个、30个、25个、20个、15个、10个、9个、8个、7个、6个、5个、4个、3个、2个或1个关键词(或项),或者如此多组关键词(或项)。

例如,可以将基于关键词的查询符记化成一个或多个符记。符记可以是关键词。符记可以是主题。符记可以是词汇关系。符记可以是任何词汇子单位(例如,段、句、词、字母、词性、语义、语法、语用、关键词等)。系统可以根据nlp模型库来评估符记化的查询。在一些情况下,例如,系统可以将符记化的查询中的符记与nlp模型中的关键词或成组的关键词进行比较。

系统可以确定与符记化查询相对应的一个或多个nlp模型。在一些情况下,搜索查询可以对应于至少约1个、2个、3个、4个、5个、6个、7个、8个、9个、10个、15个、20个、25个、30个、35个、40个、45个、50个、100个或更多个nlp模型。在一些情况下,搜索查询可以对应于至多约100个、50个、45个、40个、35个、30个、25个、20个、15个、10个、9个、8个、7个、6个、5个、4个、3个、2个或1个nlp模型。

如上文所述,nlp模型库可以储存在图数据库130中。图数据库可以包含nlp模型以及nlp模型之间的接近度关系。图2示出了nlp模型库的图数据库200的一部分。图数据库200可以包含第一nlp模型202、第二nlp模型204、第三nlp模型206、第一nlp模型202与第二nlp模型204之间的第一接近度关系208,以及第一nlp模型202与第三nlp模型206之间的第二接近度关系210。图数据库可以包含任何数目的nlp模型。在一些情况下,图数据库可以包含nlp模型库中的所有nlp模型。在一些情况下,图数据库可以仅包含nlp模型库中的一些nlp模型。在一些情况下,多个图数据库可以单个地或共同地储存nlp模型库中的nlp模型。

nlp模型(例如,nlp模型202、204、206等)之间的接近度关系(例如,接近度关系208、210等)可以定义nlp模型之间的相关程度。接近度关系可以是在任何两个nlp模型之间。接近度关系可以是在nlp模型的任何组合之间。相关程度可由权重值表示。权重值可以指示出nlp模型之间的接近程度。例如,较高的权重值可以对应于比较低的权重值更高的接近程度。权重值可以是二元的(例如,0或1,对应于不接近或接近)。权重值可以具有任何级别(scale)(例如,从0到1,从0到5,从0到10,从0到100,从50到100等)。举例而言,在权重值级别为从0到1时,第一nlp模型202与第二nlp模型204之间的第一接近度关系208可以具有0.7的权重值。第一nlp模型202与第三nlp模型206之间的第二接近度关系可以具有0.8的权重值。在本例中,第一nlp模型202可以相比于第三nlp模型206更接近第二nlp模型204。有益地,两个nlp模型之间的接近度关系还可以指示出属于这两个nlp模型的关键词之间的接近度关系。替代地或附加地,可以针对权重值使用其他评分系统或级别(例如,百分比,不同的最大值诸如5、10、100,二元诸如0或1,等等)。

在一些情况下,仅当权重值处于或高于阈值水平例如0.8、80%、80/100或者另一对应级别下的其他对应值时,在两个nlp模型之间才可存在接近度关系。或者,仅当权重值处于或高于另一值(除了0.8或对应级别下的对应值以外)时,在两个nlp模型之间才可存在接近度关系。在一些情况下,即使当权重值为0从而表示两个nlp模型之间几乎没有相关性或无相关性时,在任何两个nlp模型之间仍可存在接近度关系。

返回参考图1,一旦系统确定对应于搜索查询102的一个或多个nlp模型,系统可以搜索nlp模型库图130以查找很接近对应于搜索查询的所述一个或多个nlp模型的其他nlp模型。例如,系统可以选择具有高于预定阈值(例如,0.5、0.6、0.7、0.8、0.9、0.95、0.99等)的接近度关系权重值的其他nlp模型。在另一示例中,系统可以选择与对应于搜索查询的所述一个或多个nlp模型最接近的nlp模型中的若干个(例如,5个、6个、7个、8个、9个、10个等)。对于作为关键词搜索的搜索查询,系统可以继而附加原本不在用户提供的搜索查询中的、其他nlp模型中的一个或多个关键词或者一组或多组关键词。有益地,可以利用原本没有被用户想到但仍然相关的关键词和/或关键词的组来增强搜索查询。

在一些情况下,在初始处理106期间,还可以将在相似的查询中频繁使用的任何相关关键词附加到搜索查询102。例如,系统可以通过附加在相似查询中频繁使用的任何相关关键词来增强搜索查询。如下文进一步描述,查询的相似性可以通过诸如经由知识图分析各个实体(例如,记录、用户、专业领域等)之间的关系来确定。

系统可以通过确定查询类型来决定108搜索查询102的执行方法。查询类型可以标识提交查询的用户意图的类型。在一些情况下,查询类型可以是查询分类的类型。例如,查询类型可以是“谁”形式、“什么”形式、“何时”形式、“哪里”形式、“如何”形式、“为什么”形式、“列表”形式或者其他形式。根据查询类型,可以使用不同的增强机制(例如,基于nlp、基于用户行为、基于不同实体之间的关系,等等)。

查询类型可以通过预训练的短文本nlp模型来确定。例如,模型定义可被定义为一系列关键词和词性标记。词性标记可以包括标记有词性(例如,普通名词、复数普通名词、专有名词、情态动词、基本动词、形容词、比较级形容词等)的文本。举例而言,“looking/vbg,for/in,[nn],…,in/in,[nn],…”的定义可以具有标记“vbg”(动词动名词)、in(介词或从属连词)和nn(普通名词)。在图3中示出了其他词性标记的示例。词性标记不限于图3中所示的词性标记。nlp模型不仅可以用于识别查询类型,而且还可以用于提取搜索查询中的信息。一些搜索方法,例如合格搜索,可依赖于从用户提供的搜索查询提取的信息,并且可以包含基于提取出的信息的分类组成部分或其他筛选准则。

作为示例,词性标记模式可以是:“[nn][vbg]tax/nnrecords/nns”。在本例中,第一符记是不合格名词“[nn]”,随后是不合格动词“[vbg]”,以及两个合格名词“tax/nn”和“records/nns”。用户可以为某一模式中的每个符记定义权重,使得该模式的总权重为1。符记权重可以确定如何对特定模式进行评分以确定模式接近度得分,该得分可以与nlp模型定义的最低阈值得分进行比较。扩展前面的示例,与权重定义相同的模式可以是:“[nn-0.2][vbg-0.1]tax/nn-0.4records/nns-0.3”,其中不合格名词[nn]具有0.2的权重,不合格动词[vbg]具有0.1的权重,合格名词“tax/nn”具有0.4的权重,并且合格名词“records/nns”具有0.3的权重。用户可以进一步定义用于接受符合模式的文本的最低阈值,例如0.8。更严格的最低阈值“1”可以要求文本完全符合词性模式。在一些情况下,最低阈值“0”可以允许分类方法接受任何模式的文本,而不考虑是否符合词性标记模式。用户可以定义任何最低阈值。

系统可以自动地用词性标记来标记搜索查询文本。在标记之后,可以将文本符记化成包含关键词和词性标记的符记。例如,以下文本“informationcontainingtaxrecords”可被标记和符记化成“information/nn,containing/vbg,tax/nn,records/nns”。一旦已经标记文本并将其符记化,系统就可以通过确定在该文本中是否存在nlp模型中所定义的模式来对文本进行评分。可以将文本与单个符记进行比较。如果一个或多个单个符记匹配,则可以将与模式中的单个符记相关联的权重聚合起来以确定模式接近度得分。一旦已经处理了所有的符记,就可以将模式接近度得分与最低阈值进行比较。在一些情况下,如果模式接近度得分处于或高于最低阈值,则可以将查询分类为nlp模型的查询类型。

图4示出了样例查询及其对应的查询类型。例如,样例搜索查询“ineedtaxauditrecords”可以至少部分地基于该查询中的“ineed”词性模式而被确定为“什么”查询类型。在另一示例中,样例查搜索查询“ineedtoaudittaxrecords”可以至少部分地基于查询中的“ineedto”词性模式和关键词而被确定为“如何”查询类型。在又一示例中,样例搜索查询“lookingfortaxformsinbox123”可以至少部分地基于查询中的“lookingfor”词性模式和关键词而被确定为“什么合格”查询类型。在另一示例中,样例搜索查询“contentofbox123”可以至少部分地基于查询中的“contentof”词性模式和关键词而被确定为“列表”查询类型。

在一些情况下,可以利用每次搜索迭代来训练针对查询类型的nlp模型定义,例如根据从先前搜索获取的训练数据来进行训练。或者,可以通过其他nlp模型来确定查询类型。

可以将不同的查询类型映射到不同的执行方法。在一些情况下,可以将一个查询类型映射到仅一个执行方法。在一些情况下,可以将一个查询类型映射到多个执行方法。在一些情况下,可以将一个执行方法映射到多个查询类型。在一个查询类型映射到多个执行方法的情况下,可以通过相对优先级权重值来对每个执行方法检索到的搜索结果进行加权。查询类型、对应执行方法以及相对优先级权重值可以储存在查询类型注册表中,诸如储存在系统的一个或多个数据库中。在一些情况下,可以将所有的查询类型-执行方法对储存在注册表中,即使是那些优先级权重值为0的对。在其他情况下,可以仅将具有高于预定阈值(例如,0.5、0.6、0.7、0.8、0.9、0.95、0.96、0.97、0.98、0.99等)的优先级权重值的查询类型-执行方法对储存在注册表中。特别适合于执行查询类型的执行方法可具有比其他执行方法更高的优先级权重值。例如,具有“什么”形式的查询类型可以比用户行为搜索更适合于关键字搜索,并且因此“search_engine”执行方法可具有比“knowledge_graph”执行方法更高的权重值。在另一示例中,相比于“search_engine”执行方法,“如何”形式可以更适合于

“knowledge_graph”执行方法。

图5示出了样例查询类型注册表。查询类型注册表500可以包含查询类型列502、优先级权重列504和执行方法列506。在一些情况下,可以使用多个方法、搜索集合和数据存储来执行搜索查询。优先级权重值可以表示应用于使用针对搜索查询的执行方法检索到的搜索结果的优先级系数。例如,对于查询类型注册表500,如果搜索查询的查询类型是“列表”,并且同时使用“search_engine”方法和“knowledge_graph”方法来检索搜索结果,则可以将使用“search_engine”方法检索到的搜索结果的部分加权为优先级权重值‘0.6’,并且将使用“knowledge_graph”方法检索到的搜索结果的部分加权为优先级权重值‘0.8’。有益地,当对组合的搜索结果进行排序时(例如按照相关性),可以按比使用“search_engine”方法检索到的搜索结果更高的优先级呈现根据相对优先级权重值而被推定为更加相关的、使用“knowledge_graph”方法检索到的搜索结果。替代地或附加地,可以酌情使用不同的优先级权重和/或系数评分系统和/或级别。

可以手动定义查询类型注册表。例如,最初,在系统执行任何搜索迭代之前,可以将执行方法手动映射到查询类型,并且可以为每个查询类型-执行方法对手动分配优先级权重。然而,在从搜索迭代收集足够的训练数据(例如,基于用户行为(例如,对于搜索结果的实际查看)的关于搜索结果的实际优先级的数据)之后,可以例如通过反馈处理算法来更新查询类型注册表,使得注册表成为半监督的,或者甚至无监督的。每次搜索迭代可以产生训练数据。例如,利用足够的训练数据,可以在有限的人工干预或者甚至无人工干预的情况下对注册表进行更新和/或操作。在一些情况下,默认执行方法可以是传统搜索引擎(例如,‘search_engine’方法)。

返回参考图1,系统可以基于用户行为来增强110搜索查询102。用户行为反馈处理150可以生成关于来自特定用户的学习到的用户行为160的数据。用户行为反馈处理可以收集关于针对特定用户的用户提供的搜索查询的任何先前增强的信息,以及关于该特定用户与某些搜索结果的交互的信息。用户与搜索结果的交互例如可以是记录被选择或未被选择,查看选定的记录所花费的时间,用户在记录中进行的滚动或分页的程度,以及其他交互。在一些情况下,系统还可以收集关于哪些记录被一起访问和/或在用户的同一搜索会话期间被访问的信息。这样的信息可以允许系统确定用户的兴趣领域。用户进行的后续查询可以得到增强,并针对用户行为和/或用户的兴趣范围得到个性化。

图6图示了用户行为反馈处理的示例。用户行为反馈处理600可以微调用户的个人搜索偏好和兴趣领域。过程开始于用户提供搜索查询600,响应于搜索查询而接收搜索结果,以及点击607搜索结果中的特定项。搜索查询可以在其被执行之前经历分类提取过程602,如本文其他各处所述,以便增强601搜索查询自身。类似地,一些记录可具有与其相关联分类项608。在反馈处理的过程中,系统可以收集关于从搜索查询和用户点击的结果项提取的分类的信息,并以时间序列606储存该信息。时间序列数据可以包含对于每个用户不超过3个月的数据。例如,可以删除任何超过三个月的数据。在其他情况下,时间序列数据可以包含来自其他持续时间(例如,大约数分钟、数小时、数天、数月、数年、数十年等)内的数据。这样的期限的目的在于流畅地适应用户行为的变化。例如,用户可能变换工作和/或变换部门,从而使得一些较旧的数据的相关性降低,或者在一些情况下完全不相关。系统可以相应地采用其搜索增强。时间序列数据可由调整模块605处理。调整模块可以通过首先清除任何异常并继而收集关于每一用户的最常用分类项的频率信息来分析时间序列数据。该信息转而可以用于确定用户偏好和兴趣领域604。一旦(或者如果)确定了用户偏好和/或兴趣领域,系统可以相应地将对应于这样的用户偏好和/或兴趣领域的分类项附加到用户的搜索查询。

基于学习到的用户行为数据的增强可以有益地针对特定用户个性化搜索查询以及后续搜索结果。

返回参考图1,系统可以基于包含各个实体之间(诸如用户、记录和专业领域之间)的上下文关系的知识图140来增强112搜索查询102和/或搜索结果104。

知识图140可以包含不同记录之间的上下文关系,例如通过分析用户与记录的交互和/或电子记录的属性。例如,可以针对存在于同一文件夹或同一框中的记录,频繁出现在相同搜索结果中的记录,在同一搜索会话期间频繁访问的记录,一起共享的记录,由例如因为在同一组织或同一部门内工作或者拥有相同专业领域而相关的用户查看或批注的记录,来确定记录之间的上下文关系。在一些情况下,用户可诸如以标记和/或元数据的形式来定义对于电子记录的特定属性。特定属性可以是用户特定的或者可以不是用户特定的。特定属性可以用作分类元素,以定义记录之间的上下文关系。记录之间的上下文关系可随时间推移而演变,例如随着每次搜索迭代的执行而演变。例如,由相关用户在不同搜索会话中批注的两个记录之间的关系可以变得更紧密。

知识图不仅可以储存不同记录之间的上下文关系,而且还可以储存不同用户之间、不同专业领域之间、不同记录与用户之间、不同记录与专业领域之间、不同用户与专业领域之间以及/或者不同实体之间的上下文关系。有益地,知识图可以同时包含关于记录的上下文关系和网络以及记录与用户之间的上下文关系和活动的信息。上下文关系的这样的储存可以允许创建信息集群,所述信息集群不仅包含电子记录与分类组成部分之间的关系,而且还包含用户行为的聚合机器学习组成部分之间的关系及其与记录或分类组成部分的关系。可以通过操作机器学习算法,以及记录操纵和/或搜索会话的增添数据,来不断更新图数据结构。

图7示出了可被遍历以增强搜索结果的各个实体的知识图数据库。知识图数据库700可以包含以下实体:第一记录702、第二记录704、第一用户706、第二用户708,以及第一专业领域710。知识图数据库可以包含各个实体之间的以下关系:第一记录702与第一用户706之间的第一记录关系712、第二记录704与第一用户706之间的第二记录关系714、第一记录702与第二用户716之间的第三记录关系716、第一用户706与第二用户708之间的第一用户关系718,以及第一用户706与第一专业领域710之间的专业关系。

用户与记录之间的记录关系(例如,712、714、716)例如可以包含用户对记录的查看次数、记录的作者,以及用户用以检索记录的搜索查询。两个用户之间的用户关系(例如,718)例如可以包含关系类型(例如,同事关系、家庭关系、朋友关系、职业关系等)。知识图800中的任何上下文关系可以对应于接近度值。接近度值可以指示出任何两个实体之间的关系的相关性或接近度。在一些情况下,知识图中的任何两个实体可以具有接近度关系。在一些情况下,仅当接近度值处于或高于预定阈值(例如,0.5、0.6、0.7、0.8、0.9或其他级别等)时,知识图中的两个实体才可具有接近度关系。

以遍历知识图700为例,如果第二用户708进行的搜索检索到第一记录702,则可以通过至少三个路径根据上下文检索第二记录704。第一路径涉及第一记录702与其他用户之间的记录关系。由于第一记录702被还查看第二记录704的第一用户706查看,因此系统可以为第二用户708上下文检索第二记录704。第二路径涉及第二用户708与第一用户706之间的用户关系。由于第二用户708和第一用户706具有同事关系,因此系统可以上下文检索作为第二用户的同事的第一用户706也为第二用户708查看的第二记录704。在另一示例中,第一记录702和第二记录704可以具有记录间关系(未示出),并且系统可以基于该记录间关系为第二用户708上下文检索第二记录704。替代地或附加地,可以使用任何上下文关系组合,以在任何两个实体之间遍历知识图700。

在一些情况下,系统可以仅在上下文关系的接近度值处于或高于预定阈值时,才在两个实体(例如,用户、记录、专业领域)之间遍历知识图。在一些情况下,通过知识图的上下文遍历检索的记录的优先级值可以至少部分地基于知识图中遍历的上下文关系的接近度值。在搜索结果中检索的多个记录的优先级值可以用于按照优先级(例如,相关性)对搜索结果进行排序。

在一些情况下,知识图可以包含先前操作中确定的上下文信息。更具体而言,其可以包含与分类相关的信息,而且还包含通过分析过去的用户行为(例如,通过图6的用户行为反馈处理)确定的用户偏好。例如,系统可以使用这样的上下文信息来确定遍历基于图的数据结构的起点。例如,系统可以识别若干数目(例如,1个、2个、3个、4个、5个、6个、7个、8个、9个、10个、20个、30个、40个、50个等)的对于一搜索查询而言最接近的记录。所识别的每个记录可以用作单个遍历的起点。在一些情况下,系统可以使用确定记录之间的相似度得分的遍历算法。相似度得分可以至少基于所遍历的上下文关系的接近度值。在一些情况下,上文讨论的知识图-检索结果的优先级值可以至少部分地基于相似度得分。

在一些情况下,系统可以仅检索具有高于预定阈值(例如,0.7、0.8、0.9等)的相似度得分的附加记录并将其呈现为增强的搜索结果。替代地或附加地,系统例如可以将领域内专家标识为相关的记录检索作为增强的搜索结果,这样的相关性通过专家用户在记录关系中对记录的查看次数来确定,而用户的专业转而通过用户与专业领域之间的专业关系的接近度值来确定。

可以调度(dispatch)114例如通过本文所述的系统和方法增强的增强搜索查询来执行搜索。查询映射器和缩减器170可以基于先前从查询类型(例如,从注册表)确定(例如,决定108执行方法)的一个或多个执行方法,将搜索查询路由到不同的执行模块,诸如搜索引擎172(针对“search_engine”执行方法)、知识图174(针对

“knowledge_garph”执行方法)和/或记录图176(针对“records_graph”执行方法)。记录图可类似于上文所述的知识图,但包含记录和记录之间的上下文关系。在一些情况下,记录图可以是知识图的子单元。系统可以基于执行来检索搜索结果104。

在一些情况下,系统可以区分“热”记录和“冷”记录。热记录可以是在过去的6个月内被访问的记录,而冷记录可以是在过去的6个月内未被访问的记录。或者,划分热记录和冷记录的时间范围可以是任何其他时间范围,诸如过去1秒、过去1分钟、过去1小时、过去2小时、过去3小时、过去4小时、过去6小时、过去12小时、过去一天、过去2天、过去3天、过去4天、过去一周、过去2周、过去3周、过去一个月、过去2个月、过去3个月、过去4个月、过去一年、过去2年、过去3年、过去4年、过去5年、过去十年,或者任何其他时间范围。在一些情况下,系统可以仅检索热记录。有益地,用户可以获得其他用户已经发现具有至少足够加以访问的相关性的结果。用户可以具有重复搜索以额外检索冷记录的选项。例如,在向用户呈现结果的图形用户界面上(例如,显示器上),系统可以提供用户交互对象(例如,按钮、滑块等),而用户可以与该用户交互对象进行交互以触发搜索。

随后,可以例如按照为记录分配的优先级值来排序检索到的搜索结果104。搜索会话,包括搜索查询、符记化搜索查询、增强搜索查询、搜索结果、增强搜索结果以及关于检索到的搜索结果的用户活动,可以由系统储存在例如一个或多个数据库(例如,知识图、记录图、训练数据等)中。

应当理解,本文所述的操作,例如关于图1描述的增强操作,并不一定需要以其被描述的顺序执行。例如,基于知识图的增强可以发生在基于用户行为的增强之前。在另一示例中,可以在通过nlp模型、知识图和/或用户行为中的一个或多个对查询进行增强之后决定执行方法。系统和方法可以是不固定的。

图8示出了根据本公开的系统和方法的样例查询和处理方法。可以例如通过应用基于词性的nlp模型(例如,参考图4所述)来识别用户生成的查询的查询类型。例如,查询“ineedtaxauditrecords”可以至少部分地基于“ineed”词性模式而被识别为“什么”查询类型。查询“ineedtoaudittaxrecords”可以至少部分地基于“ineedto”词性模式而被识别为“如何”查询类型。查询“lookingfortaxformsinbox123”可以至少部分地基于“lookingfor”词性模式而被识别为“什么合格”查询类型。系统对查询执行分类提取,以便例如确定关键词。在一些情况下,分类提取可以基于正则表达式(例如,正规表达式)和/或词性的模式。例如,查询“lookingfortaxformsinbox123”可以针对合格查询类型提取“box123”分类组成部分。

系统可以通过将搜索查询与nlp模型库相匹配,例如经由包含nlp模型库的图数据库进行匹配,来确定查询类型的上下文。对于查询“ineedtaxauditrecords”,系统可以确定上下文“optionsfortax”、“corporatetax”和“employeetax”。对于查询“lookingfortaxformsinbox123”,系统可以确定上下文“optionsfortax”、“corporatetax”和“employeetax”。

系统可以确定特定于提交查询的用户的使用模式。在一些情况下,系统可以执行本文其他各处所述的用户行为反馈处理。例如,具有上述3个查询样例的所有3个用户可被识别为在公司财务部门工作,并且系统可以推荐对“corporatetax”上下文增大权重。

系统可以至少部分地基于样例查询的查询类型、提取的分类、上下文和/或使用模式来增强样例查询。例如,对于具有“什么”查询类型的查询“ineedtaxauditrecords”,系统可以识别出更好的同义词(例如,从词汇词典)或者未包含在原始查询中的、与查询的上下文相关的任何附加关键词。例如,这些关键词可从与针对该查询而识别的上下文nlp模型(例如,“optionsfortax”、“corporatetax”、“employeetax”等)接近的nlp模型中被识别出来。举例而言,系统可以将关键词“irsfilings”附加到原始查询。在另一示例中,对于具有“如何”查询类型的查询“ineedtoaudittaxrecords”,系统可以标识用以最佳地执行查询的分类组成部分。举例而言,系统可以采用共享在搜索时使用的活动数据和分类的记录。在又一示例中,对于具有“什么合格”查询类型的查询“lookingfortaxformsinbox123”,系统可以添加所提取的分类组成部分“box123”的分类筛选器。搜索可以基于映射到查询类型的执行方法而执行。例如,对于“什么”和“什么合格”查询类型,关键字类型搜索(例如,“search_engine”方法)可以具有比图类型搜索(例如,“knowledge_graph”方法、“records_graph”方法等)更大的权重。在另一示例中,对于“如何”查询类型,图类型搜索(例如,“knowledge_graph”方法、“records_graph”方法等)可以具有比关键字类型搜索更大的权重。

在一些情况下,本文所述的操作,诸如接收查询、初始处理、决定执行方法、基于用户行为进行增强、执行用户行为反馈处理、增强搜索查询、调度搜索、映射和/或缩减查询、执行搜索、提供搜索结果以及其他操作可以由一个或多个模块(例如,包括处理器和存储器)来进行或执行。所述一个或多个模块可以单个地或共同地执行本公开的操作或操作的组合。模块可以是计算机系统。

计算机控制系统

本公开提供了被编程用于实现本公开的方法的计算机控制系统。图9示出了计算机系统901,其被编程或以其他方式配置用于接收查询,对查询进行初始处理,确定查询类型,决定针对查询类型的执行方法,基于用户行为对查询进行增强,执行用户行为反馈处理,基于知识图对查询进行增强,对图数据库进行储存和导航,调度搜索,对查询进行映射和/或缩减,执行搜索,提供搜索结果,对搜索结果进行筛选和/或排序,以及储存训练数据和从中学习,以及其他操作。计算机系统901可以是用户的电子设备或者相对于该电子设备位于远处的计算机系统。电子设备可以是移动电子设备。

计算机系统910包括中央处理单元(cpu,本文亦称为“处理器”和“计算机处理器”)905,该cpu905可以是单核或多核处理器,或者是用于并行处理的多个处理器。处理器905可以是控制器、微处理器和/或微控制器。计算机系统901还包括存储器或存储器位置910(例如,随机存取存储器、只读存储器、闪速存储器)、电子存储单元915(例如,硬盘)、用于与一个或多个其他系统通信的通信接口920(例如,网络适配器),以及外围设备925,诸如高速缓存、其他存储器、数据存储和/或电子显示适配器。存储器910、存储单元915、接口920和外围设备925通过通信总线(实线)诸如主板与cpu905通信。存储单元915可以是用于储存数据的数据存储单元(或数据储库)。计算机系统901可以借助于通信接口920而操作地耦合到计算机网络(“网络”)930。网络930可以是因特网、互联网和/或外联网,或者与因特网通信的内联网和/或外联网。网络930在一些情况下是电信和/或数据网络。网络930可以包括一个或多个计算机服务器,所述服务器可以支持分布式计算,诸如云计算。在一些情况下,借助于计算机系统901,网络930可以实现点对点网络,该点对点网络可以使耦合到计算机系统901的设备能够起到客户端或服务器的作用。

cpu905可以执行能够以程序或软件来体现的一系列机器可读指令。可以将指令储存在存储器位置中,例如存储器910中。可以将指令引导至cpu905,其随后可以编程或以其他方式配置cpu905以实现本公开的方法。由cpu905执行的操作的示例可以包括提取、解码、执行和回写。

cpu905可以是电路诸如集成电路的一部分。系统901的一个或多个其他组件可以被包括在电路中。在一些情况下,电路是专用集成电路(asic)。

存储单元915可以储存文件,诸如驱动程序、库和已保存的程序。存储单元915可以储存用户数据,例如,用户偏好和用户程序。计算机系统901在一些情况下可以包括位于计算机系统901外部的一个或多个附加的数据存储单元,诸如位于通过内联网或因特网来与计算机系统901通信的远程服务器上。

计算机系统901可以通过网络930来与一个或多个远程计算机系统通信。例如,计算机系统901可以与用户(例如,记录管理系统的用户)的远程计算机系统通信。远程计算机系统的示例包括个人计算机(例如,便携式pc)、板式或平板pc(例如,ipad、galaxytab)、电话、智能电话(例如,iphone、支持android的设备、)或个人数字助理。用户可以经由网络930访问计算机系统901。

本文所述的方法可以通过储存在计算机系统901的电子存储位置上(例如,储存在存储器910或电子存储单元915上)的机器(例如,计算机处理器)可执行代码来实现。机器可执行或机器可读代码能够以软件的形式提供。在使用期间,代码可以由处理器905执行。在一些情况下,可以从存储单元915检索代码并将其储存在存储器910上以供处理器905随时访问。在一些情况下,可以排除电子存储单元915,并将机器可执行指令储存在存储器910上。

代码可以被预先编译并被配置用于与具有适于执行代码的处理器的机器一起使用,或者可以在运行时期间被编译。代码可以用编程语言来提供,可以选择编程语言以使代码能够以预编译(pre-compiled)或随时编译(as-compiled)的方式执行。

诸如计算机系统901之类的本文提供的系统和方法的各方面可以在编程中体现。本技术的各个方面可以被认为是通常以机器(或处理器)可执行代码和/或关联数据的形式的“产品”或“制造品”,这些代码和/或关联数据被携带或体现于一类机器可读介质中。可以将机器可执行代码储存在电子存储单元上,诸如存储器(例如,只读存储器、随机存取存储器、闪速存储器)或硬盘上。“存储”型介质可以包括计算机、处理器等的有形存储器或其关联模块(诸如各种半导体存储器、带驱动器、盘驱动器等)中的任何一个或全部,其可以在任何时刻提供非暂时性存储以供软件编程。所有或部分软件可以不时通过因特网或各种其他电信网络进行通信。例如,这样的通信可以使软件能够从一个计算机或处理器加载到另一计算机或处理器,例如,从管理服务器或主计算机加载到应用服务器的计算机平台中。因此,另一可承载软件元素的介质类型包括光波、电波和电磁波,诸如跨本地设备之间的物理接口、通过有线和光学陆线网络以及通过各种空中链路使用的光波、电波和电磁波。承载这样的波的物理元件,诸如有线或无线链路、光链路等,也可以被认为是承载软件的介质。如本文所使用的,除非限于非暂时性,否则有形“存储”介质,诸如计算机或机器“可读介质”之类的术语是指参与向处理器提供用于执行的指令的任何介质。

因此,诸如计算机可执行代码的机器可读介质可以采取许多形式,包括但不限于有形存储介质、载波介质或物理传输介质。非易失性存储介质例如包括光盘或磁盘,诸如任何(一个或多个)计算机等中的任何存储设备,诸如可用于实现附图中所示的数据库等的存储设备。易失性存储介质包括动态存储器,诸如这样的计算机平台的主存储器。有形传输介质包括同轴电缆;铜线和光纤,包括构成计算机系统内的总线的导线。载波传输介质可以采取电信号或电磁信号的形式,或者诸如在射频(rf)和红外(ir)数据通信期间生成的声波或光波的形式。因此,计算机可读介质的常见形式例如包括:软盘、柔性盘、硬盘、磁带、任何其他磁介质、cd-rom、dvd或dvd-rom、任何其他光学介质、穿孔卡纸带、具有孔图案的任何其他物理存储介质、ram、rom、prom和eprom、flash-eprom、任何其他存储器芯片或盒、传输数据或指令的载波、传输这样的载波的电缆或链路,或者计算机可以从其中读取编程代码和/或数据的任何其他介质。在将一个或多个指令的一个或多个序列输送到处理器以供执行的过程中可以涉及这些形式的计算机可读介质中的许多形式。

计算机系统910可以包括电子显示器935或者与之通信,所述电子显示器935包括用于让用户例如向记录管理系统提供指令的用户界面(ui)940,以及/或者呈现为用户可管理界面的记录管理系统。ui的示例包括但不限于图形用户界面(gui)和基于web的用户界面。计算机系统可以显示图形用户界面和/或基于web的用户界面,以便促进搜索。用户可以经由gui和/或基于web的用户界面来提供搜索查询,接收搜索结果,提供查询类型注册表的定义,以及执行其他行动。

本公开的方法和系统可以通过一个或多个算法的方式来实现。算法可以通过在由中央处理单元905执行时的软件的方式来实现。例如,算法可被编程用于接收查询,对查询进行初始处理,确定查询类型,决定针对查询类型的执行方法,基于用户行为对查询进行增强,执行用户行为反馈处理,基于知识图对查询进行增强,对图数据库进行储存和导航,调度搜索,对查询进行映射和/或缩减,执行搜索,提供搜索结果,对搜索结果进行筛选和/或排序,以及储存训练数据和从中学习,以及其他操作。

尽管本文已经示出和描述了本发明的优选实施方式,但是对于本领域技术人员而言容易理解的是,这样的实施方式只是以举例的方式提供的。本发明不应受到说明书内提供的特定示例的限制。虽然已经参考前述说明书对本发明作出了描述,但本文实施方式的描述和说明不应当以限制性的意义来解释。在不偏离本发明的情况下本领域技术人员现在将会想到许多变型、改变和替换。此外,应当理解,本发明的所有方面都不限于本文阐述的,取决于多种条件和变量的特定描绘、配置或相对比例。应当理解,可以在实践本发明时采用本文所描述的本发明实施方式的各种替代方案。因此,设想到本发明还应当涵盖任何这样的替代、修改、变体或等同项。以下权利要求书旨在限定本发明的范围,并且由此涵盖这些权利要求书的范围内的方法和结构及其等同项。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1